完善资料让更多小伙伴认识你,还能领取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开发环境。建议开发者可以先尝试官方提供的例程,逐步理解其中的代码和思路,再自己尝试修改和扩展功能。 |
|
|
|
只有小组成员才能发言,加入小组>>
793 浏览 0 评论
1152 浏览 1 评论
2528 浏览 5 评论
2861 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2711 浏览 6 评论
keil5中manage run-time environment怎么是灰色,不可以操作吗?
1071浏览 3评论
194浏览 2评论
456浏览 2评论
369浏览 2评论
M0518 PWM的电压输出只有2V左右,没有3.3V是怎么回事?
454浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 19:23 , Processed in 0.985894 second(s), Total 79, Slave 59 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号