news 2026/5/29 4:21:22

硬件(7)——imx6ull通信

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
硬件(7)——imx6ull通信

一、通信基本概念

通信:嵌入式系统中的通信是指两个或两个以上的主机之间的数据交互。

时钟线:是一个固定的节拍,协同不同主机间的工作节奏。

异步、同步:异步无时钟线,同步有时钟线。

串行、并行:串行通过一根数据线传输数据,并行通过多根数据线传输数据。

  • 串行优势:引脚占用资源少。
  • 并行优势:通信速率快。eg:AHB总线,32根数据线,32根地址总线,若干控制总线。

单工、半双工、全双工:数据收发方向的不同。

  • 单工:数据接收方和数据发送方是固定的,数据传输是通过一根数据线实现,数据传输的方向是单一的。
  • 半双工:通信双方既可以作为数据发送方也可以作为数据接收方(接收方和发送方不固定),数据传输是通过一根数据线实现,数据传输的方向可以是双向的(但同一时刻数据传输呈现单一性)。
  • 全双工:通信双方既可以作为数据发送方也可以作为数据接收方,数据传输是通过两根数据线实现,任意时刻数据传输方向是双向的。

串口通信格式:115200 N 8 1

  • 波特率:115200,每秒可发送的比特数
  • 校验方式:N,无校验;O,奇校验;E,偶校验。
  • 数据位:8个比特的数据位
  • 停止位:1个

电器标准:规定高低电平的认定标准。

  • TTL:晶体管跟晶体管间电平,指芯片引脚产生的电压。高电平5V,低电平0V。
  • RS232:负逻辑,全双工通信。高电平-3V~-15V,低电平3V~15V。

上面两种电平标准的传输距离都比较有限,因为导线在传输中有电阻会衰减电压,干扰传输数据。

  • RS485:差分信号,半双工通信。用两根数据线的电压差表示高低电平。抗干扰能力极强。

二、硬件

UART:异步、串行、全双工的通信方式。

  • UART1_RXD:数据接收线
  • UART1_TXD:数据发送线

1. UART_CLK_ROOT

UART时钟根默认80MHz,预分频: 1分频。

2.引脚初始化

数据接收线和数据发送线都要配置复用功能和电器属性。

IOMUXC_SetPinMux(IOMUXC_UART1_TX_DATA_UART1_TX, 0); IOMUXC_SetPinConfig(IOMUXC_UART1_TX_DATA_UART1_TX,0x10B0); IOMUXC_SetPinMux(IOMUXC_UART1_RX_DATA_UART1_RX, 0); IOMUXC_SetPinConfig(IOMUXC_UART1_RX_DATA_UART1_RX,0x10B0);

3.存储寄存器

1).收发的数据存储寄存器:

UART1->URXD: 只读寄存器,b0-7: 保存接收到的字符。

UART1->UTXD:b0-7:需要发送的数据。

UART1->USR2:

  • b3:发送完成标志位。
  • b0:接收数据就绪位。

2).UART1初始化寄存器:

UART1->UCR1:b0,整个UART(通用异步收发传输器)模块的总开关。

UART1->UCR2:

  • b14:置1忽略RTS引脚流控(轮询模式)
  • b8:置0表示无校验使能,置1表示奇偶校验使能;
  • b6:停止位数量。0表示1位,1表示2位;
  • b5:字长(数据位宽度)。1表示8位模式,0表示7位模式;
  • b2:置1发送器使能;
  • b1:置1接收器使能;
  • b0:软件复位,软件复位将保持有效 4 个模块时钟周期;

UART1->UCR3:b2,UART工作于多路复用 (MUXED) 模式,此位应始终设置为1。

UART1->UFCR:b7-b9,设置模块时钟的分频值,0x101表示1分频

3).波特率配置寄存器

UART1->UBIR:b0-b15,UBIR;
UART1->UBMR:b0-b15,UBMR;

波特率配置

  • RefFreq:模块时钟频率,80M
  • BaudRate:目标比特率,115200M
  • 令UBIR+1=1000,则UBIR=999,UBMR=43402

注意:先改变UBIR,后改变UBMR。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/29 4:19:35

PDF.js在React中的5个高级用法:从基础渲染到性能优化

PDF.js在React中的5个高级用法:从基础渲染到性能优化 在当今数字化办公场景中,PDF文档处理已成为前端开发的高频需求。Mozilla开源的PDF.js库配合React框架,能够构建出功能强大且用户体验优秀的文档处理方案。本文将深入探讨五个关键场景下的…

作者头像 李华
网站建设 2026/5/29 4:21:21

如何免费解锁Cursor Pro:5种终极激活方法完整指南

如何免费解锁Cursor Pro:5种终极激活方法完整指南 【免费下载链接】cursor-free-vip [Support 0.45](Multi Language 多语言)自动注册 Cursor Ai ,自动重置机器ID , 免费升级使用Pro 功能: Youve reached your trial r…

作者头像 李华
网站建设 2026/3/31 22:41:37

虚拟网络声卡:打破设备壁垒的音频传输革命

虚拟网络声卡:打破设备壁垒的音频传输革命 【免费下载链接】scream Virtual network sound card for Microsoft Windows 项目地址: https://gitcode.com/gh_mirrors/sc/scream 在多设备协同工作的时代,如何让音频信号像Wi-Fi一样自由流动&#xf…

作者头像 李华
网站建设 2026/4/3 2:03:09

深入解析Apk安装后桌面图标缺失的CATEGORY_LAUNCHER与LEANBACK_LAUNCHER机制

1. 为什么你的应用安装后没有桌面图标? 最近有个朋友跟我吐槽,说他开发的TV应用在设备上安装后死活不显示桌面图标,只能在系统设置里找到。这让我想起去年处理过的一个类似案例 - Prime Video应用也出现过完全相同的问题。经过一番折腾&#…

作者头像 李华
网站建设 2026/3/31 22:32:35

Win10下QTTabBar安装全攻略:解决.NET 3.5报错0x80240438的终极方案

Win10下QTTabBar安装全攻略:解决.NET 3.5报错0x80240438的终极方案 如果你是一位Windows 10用户,经常需要在文件资源管理器中处理大量文件,那么QTTabBar绝对能成为你的效率利器。这款轻量级工具能为原生资源管理器添加浏览器式的标签页功能&…

作者头像 李华