使用 DTCa 的异步 SCIC 传输/接收
出处:维库电子市场网 发布于:2023-10-08 16:30:04
发送数据预先存储在RAM的发送数据存储区域中,并使用DTC进行发送。接收数据存储在RAM中,接收数据存储均使用DTC。
当在 IRQ1 中断请求引脚上检测到下降沿时,串行发送/接收开始。
比特率:38400bps
数据长度 8 位,LSB 在前
停止位:1位
奇偶校验:无
硬件流控制:无
图 2 显示了一个连接示例。
软件
在此示例代码中,DTC 用于自动处理 SCI1 数据发送和接收。SC1I 数据发送和接收通过按下开关开始。
当数据传输使能时,会产生 TXI1 中断请求,这将成为 DTC 激活源。DTC 源用于将数据从发送数据存储区发送到 TDR 寄存器,然后从引脚发送数据。
当数据接收完成时,产生 RXI1 中断请求,这成为 DTC 激活源。DTC 用于将接收数据传送到接收数据存储区域。
发送数据传输256次后,TXI1中断发生。此时,TXI1 中断被禁止,TEI1 中断被使能。
接收数据传输 256 次后,会发生 RXI1 中断。此时,SCI1 接收和 RXI1 中断被禁止,接收结束标志变为 1。
发送完 256 字节数据后,发生 TEI1 中断。此时,SCI1 发送和 TEI1 中断被禁用,发送结束标志变为 1。
发送操作
1. 初始化 – 初始化后,等待来自开关的输入以开始发送/接收
2. 检测来自开关的输入以开始发送/接收 – 当检测到来自开关的输入以开始发送/接收时,设置 IR 标志将IRQ1 中断置0。读取发送结束标志和接收结束标志。如果发送和接收都结束,则将发送结束标志设置为0(发送)。设置DTC的传输源地址和传输操作次数,并启用DTC激活。
3. 开始数据传输 – TXI1 中断使能后,DTC 被激活,TXI1 中断的 IR 标志变为 0。发送数据的个字节从 RAM 中的发送数据存储区传输到 SCI1.TDR登记。
4. 开始数据发送——数据从 SCI1.TDR 寄存器传输到 SCI1.TSR 寄存器,TXI1 中断的 IR 标志变为 1,并且从 TXD1 引脚输出要发送数据的个字节。DTC 由 TXI1 中断请求激活,并传输发送数据的第二个字节。
5. TXI1 中断 – 第 256 个数据传输结束后,CPU 接受 TXI1 中断请求。在TXI1中断处理中,禁用TXI1中断并启用TEI1中断。
6. TEI1 中断——当第 256 个字节的一位被发送时,SCI1.TDR 寄存器没有更新,因此产生 TEI1 中断请求。在 TEI1 中断处理中,禁用发送和 TEI1 中断,并将发送结束标志设置为 1(发送结束)。从上面的步骤2开始重复操作。
版权与免责声明
凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。
本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。
如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。
- ASK 解调的核心要点与实现方式2025/9/5 16:46:17
- 双偶极子天线:结构、特性与应用全解析2025/9/3 10:29:21
- 几种流行无线通信方式及其特点2025/9/2 17:14:12
- 解密射频线缆弯曲衰减变化,掌握有效应对策略2025/8/29 16:22:47
- LoRa1120 模块与 ESP32 点对点 LoRa 通信实践全流程2025/8/29 16:16:44