单片机
返回首页

STM32之RS485通讯方式实现

2024-05-06 来源:elecfans

在远距离通讯中,难免受干扰,因此,伟大的牛人们就创造了一种差分传输的方式——RS485通讯方式(以下简称RS485)。RS485由两根差分线来传输数据,比起RS232来说,其传输的距离更远,搞干扰性更强。当然,也为了节省银子,因此,只保留了一组差分线,也就只能完成同一时刻只接收或发送数据的半双工通讯了。


在设计中,我们经常使用一个名为Max485的芯片来完成TTL电平至差分电平的转换,这款芯片有一个DE(发送使能)引脚控制着RS485线的数据传输方向,而这个引脚何时高电平,何时低电平对我们的数据交换质量也就起着重大的作用。


我们先来看一下DE引脚的作用。当主设备完成发送后,其需要在1byte的时间内释放RS485总线,否则从设备在收到数据后,再回送数据时就会与主设备对总线占用的问题而产生冲突,这在RS485总线上是不允许的——RS485总线没有仲裁机制。因此,DE引脚就需要在主设备发送完成最后一个字节的最后一位数据的一位时间内将DE引脚从高电平拉到低电平。

STM32之RS485通讯方式实现

STM32微处理器提供一个应用实例来实现精确、高效地控制DE引脚。这里我们使用DMA方式通过UART发送与接收数据,那么我们将会用到DMA发送完成中断与USART发送完成中断。DMA控制器监控着整个发送过程,待发送数据将会不断地被存入USART数据寄存器直到DMA计数减至零。当DMA发送完成后将触发DMA发送完成中断,我们就在这个中断中,将DE引脚的电平拉低。

STM32之RS485通讯方式实现


进入单片机查看更多内容>>
相关视频
  • RISC-V嵌入式系统开发

  • SOC系统级芯片设计实验

  • 云龙51单片机实训视频教程(王云,字幕版)

  • 2022 Digi-Key KOL 系列: 你见过1GHz主频的单片机吗?Teensy 4.1开发板介绍

  • TI 新一代 C2000™ 微控制器:全方位助力伺服及马达驱动应用

  • MSP430电容触摸技术 - 防水Demo演示

最新器件
精选电路图
  • 红外线探测报警器

  • 短波AM发射器电路设计图

  • 使用ESP8266从NTP服务器获取时间并在OLED显示器上显示

  • 用NE555制作定时器

  • 带有短路保护系统的5V直流稳压电源电路图

  • 基于TDA2003的简单低功耗汽车立体声放大器电路

    相关电子头条文章