找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 9104|回复: 1
打印 上一主题 下一主题
收起左侧

STM32F4-DISCORVERY实验一:串口2的printf重定向与格式输出

[复制链接]
跳转到指定楼层
楼主
ID:262 发表于 2014-6-3 07:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
作者:羊村长QQ:707703387
硬件平台:STM32F4-DISCORVERY
软件平台:KEIL MDK5.10


     由于USART1的引脚被占用,但是可以使用remap重定向,本例中直接使用了USART2,printf,scanf函数也可以用串口[size=+0]接收来实现。
        STM32F407xx内嵌四个通用同步/异步接收器(USART1,USART2,USART3 和USART6)和两个通用异步收发器(UART4和UART5)。这6个接口提供异步通信的IrDASIR ENDEC支持,多机通信模式,单线半双工通信模式LIN主/从功能。 USART1和USART6接口能够速度高达10.5 Mbit / s的通信其他可用的接口通信高达5.25bit/s。
       USART1,USART2,USART3和USART6还提供硬件管理的CTS,RTS信号,智能卡的模式(ISO7816兼容)和类似的SPI通信能力,所有接口都可以通过DMA控制器。

       STM32F4-Discovery板子只需要一根USB电缆,就可以开始STM32F4的软件开发与验证,非常便利。而STM32F4的SysTick,PendSV和SVC,双堆栈更是非常便于使用RTOS,FreeRTOS就是其中的一个典型的应用,对于日益复杂的嵌入式系统开发与维护非常有利。在FreeRTOS开发过程中,利用其高速串口输出系统调试信息也很常见,一般的做法是将C语言系统的printf()函数重定向到串口上,在ST厂家的函数库举例中有专门的一个目录。这里要列出的3点项目设置是在实现过程中需要注意的:
1. HSE_VALUE   这个值的定义在stm32f4xx.h中,默认是25MHz,要根据板子用的外部晶振速率进行调整,STM32F4-Discovery用的就是8MHz.
2. EWARM项目务必要选择使用Full Library   这个选择在"General Options" -> "Library Configuration"中。
3. STM32F4-Discovery使用ST-Link调试接口!创建新项目时,注意2点即可:  
4.关于烧录: 1)ST-Link的接口选项只能是SWD   2)在"Debugger"->"Download"中必须打开"Use flash loader(s)"


实验结果:


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:111233 发表于 2016-3-29 07:51 | 只看该作者
源码?
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表