本文介绍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个新的数据包已经到达。图中所示的程序还列出了,对于数据包的处理方法,供大家参考使用。
上一篇:STM32F0开发笔记3: STM32CubeF0介绍
下一篇:STM32F4 开发笔记3: 定时器2-5的使用方法
推荐阅读
史海拾趣
Control Sciences Inc深知人才是企业发展的核心。因此,公司一直注重人才培养和引进。公司不仅设立了专门的研发机构,吸引了大批优秀的科研人才,还定期组织员工培训和交流活动,提高团队的整体素质。这些措施使得Control Sciences Inc的团队越来越强大,为公司的发展提供了有力的人才保障。
迪一电子公司成立于2006年,最初只是一家规模较小的半导体电子元器件制造企业。在创业初期,公司面临着资金紧张、技术落后和市场竞争激烈等多重困难。然而,创始人李政坚信半导体行业的发展潜力,带领团队不断研发新产品,提高产品质量,逐渐在市场上赢得了一席之地。
在技术创新的基础上,迪一电子公司开始积极拓展市场。公司积极参加国内外电子展会和博览会,与全球各地的客户建立联系。同时,公司还注重品牌建设,通过广告宣传、赞助活动等方式提高品牌知名度和美誉度。这些努力使迪一电子的产品逐渐打入国际市场,赢得了更多客户的认可。
作为一家有远见的企业,迪一电子公司始终关注社会责任和可持续发展。公司积极参与环保和公益活动,推动绿色生产和可持续发展。同时,公司还注重员工培训和福利保障,为员工提供良好的工作环境和发展机会。这些举措不仅提升了公司的社会形象,也增强了员工的归属感和凝聚力。
本帖最后由 jameswangsynnex 于 2015-3-3 20:01 编辑 AVS标准于2006年3月正式被批准为国家标准。由于具有较高的编码效率和较低的专利费用,因而在国内市场受到部分运营商的青睐。目前,AVS正在被中国网通在其IPTV试验中使用,该公司计划今年在大连 ...… 查看全部问答∨ |
|
三相电测量芯片里面有个词是“line-cycle accumulation”是什么意思啊 参考中文中给的是周期循环累加,不甚理解,各位对三相交流电路熟悉的大虾们指点一下吧,是什么含义呢?原理是什么? 万分感谢。… 查看全部问答∨ |
|
我在资源视图下点右键,插入activex控件,插入的是注册在pc上的空间,在ppc上无法使用。我该如何正确插入注册在ppc下的webbrowser控件? … 查看全部问答∨ |
|
c51程序。。。哪位高手能帮我找出错误?我自己编的三个灯的定时程序,可是只有2个两个闪烁。。。。。 ORG 0000H ; AJMP START ; ORG 000BH ;定时器0的中断向量地址 AJMP TIME0 ;跳转到真正的定时器程序处 ORG 0030H ; START:MOV P1,#0FFH ;关所有的灯 MOV 30H,#00H ;软件计数器预清0 MOV TMOD,#01H ;定时/计数器0工作于方式1 MOV TH0,#3CH ; ...… 查看全部问答∨ |
|
nr_ti坛友在站内短消息中,跟我讨论关于430仿真器的问题,由于有附件需要上传,所以我在论坛上发帖回复。问题描述:\" 将msp430连接仿真器,需要引出哪些引脚?\"MSP430是通过JTAG来进行调试的,下面的内容就是JTAG的讲解。不算上供电,其实就是5 ...… 查看全部问答∨ |