完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
` 本帖最后由 MMCU5721167 于 2018-12-13 20:06 编辑 来源 灵动微电MMCU 上一章节中已经教大家如何使用MM32SPIN2x的比较器轮询功能,本章节将与大家一起配置UART的Bit9模式实现多机通讯功能。 图1UART多机通信 在双机通讯中,UART的8bit通信的第九位一般是奇偶校验位,而多机通讯中,第九位用于标识地址或数据,常用1表示后面的是从机地址,0表示后面的是数据。我们通常希望只有被寻址的接收者才被激活,来接收随后的数据,这样就可以减少由未被寻址的接收器的参与带来的多余的UART服务开销。未被寻址的设备可启用其静默功能置于静默模式。在静默模式里,任何接收状态位都不会被设置,所有接收中断被禁止。 图2UART多机通信 通过 UART 可以实现多处理器通信 (将几个 UART 连在一个网络里)。例如某个 UART 设备可以是主,它的 TX 输出和其他 UART 从设备的 RX 输入相连接; UART 从设备各自的TX 输出逻辑地与在一起,并且和主设备的 RX 输入相连接。 在多处理器配置中,我们通常希望只有被寻址的接收者才被激活,来接收随后的数据,这样就可以减少由未被寻址的接收器的参与带来的多余的 UART 服务开销。
在上述配置中,我们启用了地址标记唤醒,在接收到的地址帧中的地址与UART_RXADDR中的地址匹配时,UART_CCR中的RWU位由系统清零,从静默模式中唤醒,同时置位UART_ISR的RXB8_INTF和RX_INTF位;若地址不匹配,则只有UART_ISR的RXB8_INTF被置位,UART进入静默模式。 在库函数中还有两个在发送时会用到的函数: void UART_Set9bitAutomaticToggle(UART_TypeDef*UARTx, FunctionalState NewState); //B8TOG设置,在地址帧发送结束后,B8TXD自动翻转翻转,进入数据帧格式 voidUART_Set9bitLevel(UART_TypeDef* UARTx, FunctionalState NewState); //B8TXD设置,用于设置下一帧是地址帧还是数据帧 在主机与从机简单配置之后,我们用简单的数据测试配置的功能:
主机发送的数据:0x152(地址) 0x031 0x0320x033 0x15A(地址) 0x0340x035 0x036 0x153(地址) 0x0370x038 0x039 从机将接收到的数据帧经UART再进行转发。 图3 测试结果 可以看到,从机在收到地址帧后,从机只在接收到0x15A之后从静默模式切换回正常模式,接下来的数据会接收并触发接收中断,将接收到的0x34 0x350x36再发回主机,在接收到0x152和0x153这两个不匹配的地址后保持或切换到静默模式,不再接收数据。 灵动微电子即将参加于2018年12月20-22日在深圳会展中心召开的“2018深圳国际电子展暨深圳国际嵌入式系统展”,届时灵动会给大家带来很多意想不到的惊喜,展位号:1C16,敬请期待! 关于灵动微电子 灵动微电子股份有限公司(股票代码:833448,股票简称:灵动微电)是国内专注于MCU产品与MCU应用方案的领先供应商,是中国工业及信息化部和上海市信息化办公室认定的集成电路设计企业,同时也是上海市认定的高新技术企业。自2011年3月成立至今,灵动微电子已经成功完成数百余MCU产品的设计及推广,灵动微电子目前已批量供货的基于ARMCortex-M0及Cortex-M3 内核的MCU产品包括:针对通用高性能市场的MM32F系列,针对超低功耗及安全应用的MM32L系列,具有多种无线连接功能的MM32W系列,电机驱动及控制专用的MM32SPIN系列,以及针对超小尺寸及超高集成度的MM32P系列等,以满足客户及市场多领域、多层次的丰富应用场景需求。 灵动微电子立足本土,洞悉市场,贴近客户,以为客户提供“保姆式”的全方位支持为特色,坚持“专业、可靠、便捷、高效”的服务理念,贯彻差异最大化,成本最优化的经营策略,不断强化自身生态价值,维护良好产品品牌。公司在销售初期就与客户充分接触,为客户提供产品整体解决方案,从产品功能定义、市场竞争力分析到算法整合、软件驱动、应用例程等都深入参与,为客户提供精准的市场分析和全面的应用方案,帮助客户把握好成功的每一个重要环节。 |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
2252个成员聚集在这个小组
加入小组灵动微电子MM32全系列MCU产品应用手册,库函数和例程和选型表
11795 浏览 3 评论
【MM32 eMiniBoard试用连载】+基于OLED12864的GUI---U8G2
5968 浏览 1 评论
【MM32 eMiniBoard试用连载】移植RT-Thread至MM32L373PS
11069 浏览 0 评论
【MM32 eMiniBoard测评报告】+ 开箱 + 初探
4591 浏览 1 评论
灵动微课堂(第106讲) | MM32 USB功能学习笔记 —— WinUSB设备
4324 浏览 1 评论
[MM32软件] MM32F002使用内部flash存储数据怎么操作?
1224浏览 1评论
842浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-19 14:30 , Processed in 0.426714 second(s), Total 39, Slave 31 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号