自昊芯推出专题讲解sci串口通讯奇偶校验,分为两期讲解,上期主要讲解标准sci模式下的奇偶校验,本期主要讲解增强fifo模式下的奇偶校验。
hx2000系列sci模块与中断框图如下,可通过sciccr[parityena]使能,启动奇偶校验;采用sciccr[parity]选择,使用奇或偶校验,对每个字符增加一个额外的校验位,以校验收发数据的二进制码中“1”的个数,校验收发数据的一致性;fifo模式下校验原理与标准模式一致,但收发数据校验位不一致时,仅置位scirxbuf[sciffpe]输出错误信号。
由此设计sci串口增强fifo通信校验实例:采用sci与串口ch340,通过串口调试助手,向cpu发送任意一组四字节数据,cpu接收所发送的数据,通过按键控制,选择奇或偶校验,校验收发数据的一致性,硬件连接如下图所示:
基于以上分析,在cdk上开发sci串口增强fifo通信校验,代码包括:sci gpio外设引脚配置,sci增强fifo功能与校验配置程序,发送、接收与校验程序,主程序调用执行。主要代码如下:
1.int main(void)2.{3. /*初始化系统控制*/4. initsysctrl();5. /*初始化内存控制寄存器,使能内存流水线模式*/6. initflash();7. /*初始化串口通信的gpio口:gpio28: scirxda,gpio29: scitxda*/8. initscigpio();9.10. /*初始化led,用于指示奇偶与帧格式校验错误*/11. initled();12. /*初始化key按键,用于控制奇偶校验模式选择*/13. initkey();14.15. /*关闭pie中断*/16. initpiectrl();17. /*清除中断标志位*/18. ier = 0x0000;19. ifr = 0x0000;20. /*初始化pie中断向量表*/21. initpievecttable();22.23. eallow;24. /*中断向量表入口地址scirxinta,指向执行接收中断、校验模式选择与程序*/25. pievecttable.scirxinta=&sci_rx_isr;26. edis;27.28. /*打开相应的pie中断线*/29. ier |= m_int9;30. /*pie group 9, scirxinta*/31. piectrlregs.pieier9.bit.intx1=1;32.33. /*sci增强fifo配置:含奇偶校验*/34. scia_config(9600);35. /*打开全局中断*/36. eint;37. for (;;)38. {39. }40. return 0;41.}
cdk上开发sci串口增强fifo通信校验程序,编译结果为:
编译通过后,就可开始调试了,调试后,可通过串口调试助手查看发送与接收到的数据:
收发数据校验位不一致时,通过sciaregs.scirxbuf.sciffpe置位输出错误信号:
超100亿元紫光车规级电子器件制造及配套项目签约落户芜湖
手机屏幕失灵应该如何解决
EMC产生的条件_为何要做EMC设计
Banias处理器
使用workvisual软件对KR C4进行外部轴配置
芯教程|平头哥助力昊芯HX2000系列芯片专题SCI串口通讯奇偶校验(二)SCI增强FIFO
RT9907应用电路及参数资料
芯科科技光模块利器预置I2C Bootloader功能
大疆车载融资计划已启动,接连获得比亚迪和一汽集团投资意向
贸泽电子即日起备货Laird Connectivity的BL653系列模块
腾讯发现特斯拉Autopilot漏洞
苹果今年上半年要大幅扩产:iPhone 11/SE继续服役降价
ZETAOTA提供远程升级服务 提高实用性
便携式SSD KE31不仅传输速度快 容量更是高达960GB
苹果折叠屏加速但MacBook和iPad折叠屏在2024年推出的可能性极小
区块链技术如何改变美容行业
用12V的DC电源,如何设计照明“壁灯”
中国量子计算机迎来里程碑式的突破
华为携手LG U+在韩国首尔完成5G预商用网络测试
麻省理工工程师利用碳纳米管制成一种小型传感器 可嵌入到植物叶子中以修复损伤或击退昆虫等天敌