历史上的今天
今天是:2024年09月12日(星期四)
2018年09月12日 | STM32F4 开发笔记5: miniUART的使用方法
2018-09-12 来源:eefocus
本文介绍miniUART的使用方法,miniUART是一组轻量型代码,可以用于完成串口接收数据功能的快速实现。其可正确对2包数据按照时间间隔进行分割,使用简单,代码可靠。
可以按照下列步骤使用mininUART.
1、打开config.h文件,按照下图所示的内容代码进行设置,设置为1表示启用miniUART。
2、打开miniUART_config.h文件,对miniUART进行配置,如下图所示。MINIUART_PERIOD是指两包数据之间的最小时间间隔,说的通俗一些如果串口接收到的2个字节之间的时间间隔小于MINIUART_PERIOD的数值,则认为该2个字节是同1包数据,否则认为后1个字节是下1包数据的第1个字节。MINIUART_LENGTH是指串口缓冲区的最大长度,其值应大于接收数据包的最大长度。
3、打开main.c文件,定义全局变量miniUART1(这里以通用串行口1为例,名字可以自行设定),如下图所示。
4、在main函数的while前,对miniUART1进行初始化,如下图所示。
5、选择合适的定时器,并将定时值设定为1ms,其使用方法,可参看先前的日志“STM32F4 开发笔记3: 定时器2-5的使用方法”,并加入如下图所示的代码。
6、在UART1中断服务处理函数中,加入如下图所示的代码。
7、至此,就可以在main函数中的while主循环中,对接收到的数据包进行处理了,如下图所示。只要函数miniUART_IsReceivedData返回为true,则表示1个新的数据包已经到达。图中所示的程序还列出了,对于数据包的处理方法,供大家参考使用。
史海拾趣
|
没做过嵌入式系统,现在要做这个的开发,闹心~~~买了个开发板,想好好研究发现了好多疑问。目的是想通过ARM芯片最终控制自定义的外设~~。看了些资料原来是要定义IO的流接口驱动。买的开发板提供了一个例程,就是控制开发板上的4个LED灯的熄、灭,程 ...… 查看全部问答> |
|
今天中午闲暇之余,看了向农姐姐的一个帖子,是关于面试的,拒绝了一个女孩子,源于一个问题“如果她来EEWORLD,只能从最底层做起,做些别人不愿意做的事。。。”这不得不勾起了我的回忆,往事历历在目啊。。 ...… 查看全部问答> |
|
undefined 用的是C语言,CPU使用的是MSP430F135,使用了库函数,能编译通过,但是无法连接成功,出现如下提示: Making target Debug... Linking... Error[e46]: Undefined external "log10" referred in na ( E:\\jiemei\\program\\NA ...… 查看全部问答> |
|
各位好,最近在看伪随机序列发生器,看了些资料,但是有个地方还是没有看明白。主要是从生成多项式与生成框图和verilog代码怎么对应的。比如下面的资料:他的生成多项式是P=X15+X14+1,但是看生成框图,只是把第14位和第15位抽头异或了,这样不就成 ...… 查看全部问答> |
|
终于找到Serial.to.Ethernet(破解版),可以把电脑做串口服务器用了! 本帖最后由 jameswangsynnex 于 2015-3-3 20:03 编辑 安装在单位的服务器中,用做串口服务器用,不必再买硬件版串口服务器了,节省几百块。不知那位有新版的破解软件? … 查看全部问答> |




