完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
新唐官方提供了Direct-register-access方法也就是寄存器直接赋值的方法驱动UART0的例程,那个例程可以在Keil for ARM中直接编译,也可直接运行。作者把例程移植到EmBITZ1.0中,并成功运行,主要修改为:
1)修改了启动文件startup.s,按照新唐官方文件增加了M0516外部中断表 2)修改了配置文件gcc_arm.ld, 3)定义了BaudRate宏,可以直接定义和修改波特率 4)移植了来自emIDE的syscalls.c,重定向了UART0,实现了串口0的输入和输出交互 5)在UART.h中增加了Send_sting_to_pc()函数,并在UART.c中通过反复调用Send_char_to_pc()实现了字符串的输出。在无格式输出时,Send_sting_to_pc()函数可直接替换printf()函数。 如何修改配置文件和启动文件,如何建立工程,如何增加新唐ARM,请见作者其他技术帖子。 |
|
相关推荐
1个回答
|
|
以下是使用EmBITZ1.0开发M051串口的步骤:
1. 下载安装EmBITZ1.0开发环境,选择ARM Cortex M编译器。 2. 下载M051系列芯片的CMSIS、Device Driver和Startup代码。 3. 创建一个新项目,将下载的CMSIS、Device Driver和Startup代码添加到项目中。 4. 修改startup.s文件,增加外部中断表,可以参考新唐官方提供的例程。 5. 修改配置文件gcc_arm.ld,确保启动文件startup.s被正确链接。 6. 在UART.h文件中增加Send_sting_to_pc()函数的声明,并在UART.c文件中定义该函数,以实现字符串的输出。 7. 在UART.c文件中重定向UART0,并实现串口0的输入和输出交互。 8. 在主函数中,初始化串口,并调用Send_sting_to_pc()函数输出字符串。 9. 编译并下载程序到M051 MCU,在串口终端软件中查看输出结果。 总的来说,使用EmBITZ1.0开发M051串口需要掌握C语言编程技巧,了解芯片的寄存器操作方法,以及熟练使用EmBITZ1.0开发环境。建议开发者可以先尝试官方提供的例程,逐步理解其中的代码和思路,再自己尝试修改和扩展功能。 |
|
|
|
只有小组成员才能发言,加入小组>>
485 浏览 0 评论
1023 浏览 1 评论
2409 浏览 5 评论
2730 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2548 浏览 6 评论
使用eim外接fpga可是端口一点反应都没有有没有大哥指点一下啊
582浏览 9评论
586浏览 7评论
请教大神怎样去解决iMX6Q在linux3.0.35内核上做AP失败的问题呢
694浏览 6评论
560浏览 5评论
601浏览 5评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-28 02:55 , Processed in 0.877962 second(s), Total 80, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号