售前咨询-朱:19381904226
售前咨询-杨:19381903226 English
前沿资讯 真实、准确的物联网、互联网行业新闻

单片机与微机串口通信电路的设计

你的位置: 网站首页 新闻动态 技术应用
单片机与微机串口通信电路的设计
2021-01-12 14:26:36 阅读: 发布人:纵横智控

单片机受存储介质的限制,不可能对发送、接收数据作进 一步的处理。 所以在需要对大量数据进行进一步处理的运用 中,还必须借助微机的强大数据处理能力。 这样必须通过通信 电路实现 PIC 单片机与微机间的可靠数据传输。 PICl6F876 单 片机并没有提供串行口,但是内部集成了两个类型不同的串行 通信模块,即通用同步 / 异步收发器 USART 模块和主控同步串 行端口 MSSP。 考虑到 PC 机的串行口均为九针 232 结构,PC 机 的串行接口是符合 EIA RS-232C 规范的外部总线标准接口。 RS-232C 采用的是负逻辑 ,即 逻 辑“1”:-5v~-15v;逻 辑 “0”:+ 5V~+15V。 而 CMOS 电平为逻辑“1”:4.99V,逻辑“0”:0.01V;TTL 电 平 的 逻 辑“1”和“0”则 分 别 为 2.4V 和 0.4V。 因 此 在 用 RS- 232C 总线进行串行通信时需外接电路实现电平转换。在发送端 用驱动器将 TTL 或 CMOS 电平转换为 RS-232C 电平, 在接收 端用接收器将 RS-232C 电平再转换为 TTL 或 CMOS 电平[2]。

这里选用了 MAXIM 公司的 MAX232CPE 来作电平转换。 MAX232CPE 属于 MAXIM 公司的通用串 行 接 收 / 发 送 驱 动 器 芯片,用于实现单片机与 PC 机进行数据交换时所需的握手协 议的电平转换。 MAXIM232 外围电路非常简单,只需外接几个 0.1μF 的电容即可, 相同网络标号之间的保护电阻均为 330Ω,所以,我们主要应用异步传送模式下的 USART。 而且串行通信 必须利用现有通信模块,结合自己设计的通信软件来实现。

单片机与微机串口通信电路的设计

USAR 异步发送器核心是发送移位寄存器 TSR 和发送缓冲 器 TXREG。TXREG 和内部数据总线直接相连,是一个软件可读 / 写的寄存器,用户程序把要发送的数据写入 TXREG 中,然后由 硬件自动控制再把数掘从 TIREG 装载到 TSR (如果选定 9 位格 式,还要和来自 TXSTA 的 TX9D 位共同组成 9 位数据);再在前 面自动添加一个起始位 0,在后面添加一位停止位 1,构成一个完 整的帧结构:最后在波特率时钟的控制下,再由移位寄存器 TSR 把数据逐位依次发送出去;完成“并行到串行”的转化。

TSR 一直等到把目前正在发送的数据的停止位发出去 后,才会把从 TXREG 载入新的发送数据。 一旦 TXREG 把数据 送入 TSR,寄存器 TXREG 就为腾 空 状 态,同时发送中断标志 位 TXIF 被置 1,向 CPU 发出中断请求。 尽管发送中断使能位 TXIE 控制 CPU 对该中断的响应与否,但只要 TXREG 被腾空, 都会自动把 TXIF 置 1, 而且, 只有新的发送数据写入寄存器 TXREG 后,硬件才会自动将 TXIF 清 0。 因此,也为我们的使用 软件判断工作状态提供了新的思路及可能。

USART 异步接收器核心是接收移位寄存器 RSR 和接收寄存 器 RCREG。通信的一方送来的异步串行数据,从 RC7/RX/DT 引脚 输入;在波特率发生器提供的采样定时信号的控制下,由数据检测 和恢复电路对于输入的信号波形进行采样, 以恢复数据的本来面 目;然后在波特率发生器提供的移位时钟脉冲控制下,把恢复得来 的串行数据以及起始位和停止位,一步步移入 RSR 寄存器。

只要采样到停止位, 接收移位寄存器 RSR 就把收到的 8 位数据,装载到接收寄存器 RCREG(如果 RCREG 为空);以 及 把第 9 位(如果有的话)装载到 RX9D 位;同时完 成“串 行 到 并 行”的变换;设置接收中断请求标志位 RCIF=1,通知 CPU 来读 取接收寄存器 RCREG 中的数据和第 9 位数据 RX9D,软件设 计中通过对第 9 位数据的判定 (表征数据性质时,1 代表地址 码,0 代表数据码),实现相应的处理。

其中,RCREG 是一个双缓冲寄存器, 具有 2 级结构的先 进先出模式的队列。 同样,RX9D 位也是 2 级结构。 因此,这就 允许移位寄存器连续接收 2 帧数据, 并且依次装入队列中进 行缓冲,之后第 3 个数据还可以移位到 RSR 寄存器中。

关键词:无线数据传输

友情链接