2145|2

1万

帖子

16

TA的资源

版主

楼主
 

【雅特力开发板 AT32F421 测评】2、读一下MCU的型号 [复制链接]

 

       芯片有唯一的编号,看下文档时边有介绍读CORTEX型号的。就是看看是M0, M1,M4。

       现在试一下:

      首选选择USART的printf例程,读一下例程,我觉得重点是那个重定义的函数在哪里了。我找了老半天,终于找到在at32_board.c里:

     


#ifdef __GNUC__
  /* With GCC/RAISONANCE, small printf (option LD Linker->Libraries->Small printf
     set to 'Yes') calls __io_putchar() */
  #define PUTCHAR_PROTOTYPE int __io_putchar(int ch)
#else
  #define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)
#endif /* __GNUC__ */

/**
  * [url=home.php?mod=space&uid=159083]@brief[/url] Retargets the C library printf function to the USART.
  * @param  None
  * @retval None
  */
PUTCHAR_PROTOTYPE
{  
  USART_SendData(AT32_PRINT_UART, ch);
  while ( USART_GetFlagStatus(AT32_PRINT_UART, USART_FLAG_TRAC) == RESET );    
  return ch;
}

 当然还得微库打勾:

 

以下是程序:直接读地址的内容.

int main(void)
{     
  /* USART1 configured as follow:
        - BaudRate = 115200 baud  
        - Word Length = 8 Bits
        - One Stop Bit
        - No parity
        - Hardware flow control disabled (RTS and CTS signals)
        - Receive and transmit enabled
  */
  UART_Print_Init(115200);

  /* Output a message on Hyperterminal using printf function */
  printf("\n\rUSART Printf Example: retarget the C library printf function to the USART\n\r");

	cortex_id = *(uint32_t *)0xE000ED00; //读取 cortex 型号
	if((cortex_id == 0x410FC240) || (cortex_id == 0x410FC241)) 
  {
    printf("This chip is Cortex-M4.\r\n");
	}
  else
  {
    printf("This chip is Other Device.\r\n");
  }
	
  while (1)
  {
  }
}

以下是运得结果:

最新回复

谢谢分享,期待后续   详情 回复 发表于 2021-4-8 21:46

赞赏

1

查看全部赞赏

点赞(2) 关注
个人签名http://shop34182318.taobao.com/
https://shop436095304.taobao.com/?spm=a230r.7195193.1997079397.37.69fe60dfT705yr
 
 

回复
举报

1942

帖子

2

TA的资源

版主

沙发
 

这也能读?都没有尝试过哈!

 
 
 

回复

7671

帖子

2

TA的资源

五彩晶圆(高级)

板凳
 

谢谢分享,期待后续

个人签名

默认摸鱼,再摸鱼。2022、9、28

 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/6 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表