AVR 微控制器中的 USART 数字逻辑是啥?

Posted

技术标签:

【中文标题】AVR 微控制器中的 USART 数字逻辑是啥?【英文标题】:What is the USART digital logic in AVR microcontrollers?AVR 微控制器中的 USART 数字逻辑是什么? 【发布时间】:2017-11-26 04:48:29 【问题描述】:

刚刚阅读了 AVR 微控制器中的 USART 连接,我遇到了这个问题:

AVR 微控制器的 USART(RXC、TXC 和其他内部结构)中使用的数字逻辑是什么?

我在微控制器的数据表中找到了这个问题的答案(它说逻辑是 TTL),但我不知道为什么我们使用其他逻辑转换器,如 MAX232 将串口通讯协议改为RS232C。长距离串行通信需要这样吗?

最后,我们是否需要使用另一个MAX232将之前转换的协议再次转换为TTL?如果是,那么 ATmega16 USART 与虚拟终端连接的以下设置将是正确的。

【问题讨论】:

RS232 不是“协议”,它只指定物理层。 @Rev1.0 google.com/url?sa=t&source=web&rct=j&url=http://… 这篇文章对“协议”一词的使用具有误导性。 RS232 标准规定了信号、机械和一些接口电路特性。它没有指定作为通信协议一部分的编码或帧! 【参考方案1】:

您可以直接连接两个 AVR 或 Arduino TX-RX,反之亦然。但是,如果您想与在 RS-232 电压波动下工作的真实 RS-232 端口(如 PC 或 PC 串行卡上的端口)通话,那么您才需要基于 MAX232 的电平转换器。您只需要一,因为 MAX 将来自 AVR 的 TX 信号“升档”,并将 RX 信号“降档”至 0-5V。

您需要基于 MAX232 的适配器的唯一情况是,如果另一端的设备预期(并产生)RS-232 规范中规定的更大的电压摆幅。例如,大多数 PC 串行卡或串行端口的电压为 -13V 至 13V 左右。但是 AVR 到 AVR 或 AVR 到串行控制 LCD 和短距离?不需要。

【讨论】:

感谢您对我的好问题的惊人回答。对此竖起大拇指:)

以上是关于AVR 微控制器中的 USART 数字逻辑是啥?的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法处理 AVR/Arduino 微控制器中的堆内存碎片?

如何延迟 avr 微控制器的组装?

Linux / Windows Arduino IDE 上的 avr-gcc Atmel AVR 微控制器

在 Mac 上与 AVR 微控制器交互

使用带有 AVR 微控制器的旋转编码器

AVR 微控制器记忆游戏