本文主要是介绍地平线—征程2(Journey 2-J2)芯片详解(21)—UART+SPI,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
写在前面
本系列文章主要讲解地平线征程2(Journey 2-J2)芯片的相关知识,希望能帮助更多的同学认识和了解征程2(Journey 2-J2)芯片。
若有相关问题,欢迎评论沟通,共同进步。(*^▽^*)
错过其他章节的同学可以电梯直达目录↓↓↓
地平线—征程2(Journey 2-J2)芯片详解——目录-CSDN博客
8. PERI子系统
8.1 UART
8.1.1 介绍
通用异步接收器/发射器(Universal Asynchronous Receiver/Transmitter-UART)模块提供串行通信功能,允许使用串行电缆和RS232协议与外部设备(如计算机)进行通信。该模块实现了与启停异步通信相关的所有必要功能。串行数据发送和接收的标准波特率由内部波特率发生器配置。
J2拥有4路UART模块,即是UART0~UART3。UART1是带有硬件流量控制的4线版本,其他的仅是带有TX和RX的2线版本。有些UART模块和其他引脚共用。
8.1.2 特性
UART模块的主要特性如下:
- TXD和RXD的全双工操作
- 带有16位过采样的稳定数据接收和噪声过滤
- 可配置帧格式:
——数据位:7或8位
——校验位:无、奇数或偶数
——停止位:1或2位
- 带有整数和分数除数的可编程波特率发生器
- 支持的标准波特率:19200、38400、57600、115200、230400、460800和921600(16位过采样)
- UART1拥有RTSN和CTSN的硬件流量控制
- 支持UART RDR和UART TDR寄存器的数据发送和接收
- 支持嵌入式DMA控制器的数据发送和接收,64字节的TX和RX先进先出(FIFO)
- 在实时应用中,DMA支持在超时条件下RX FIFO刷新操作
- 全面的状态和中断报告
- 通过可编程XON/XOFF字符支持软件流量控制能力
8.2 SPI
8.2.1 介绍
J2的串行外设接口(Serial Peripheral Interface-SPI)控制模块包含3个SPI控制器。SPI是一个主/从同步串行总线。SPI模块符合SPI协议并可实现作为主机和从机的功能。
同步SPI协议允许主设备与从设备启动串行数据传输。从选择信号(Slave Select Signal-SSN)允许选择一个单独的从SPI设备。当SPI总线启动时,若没有接口,则从设备也不能被选择。主机通过提供串行时钟和从机选择信号来控制通信流。从机选择信号是一个可选的低电平有效信号从而控制从机的串行数据输入和输出。
4线SPI总线:
- 时钟信号SCLK由主机驱动,所有的SPI信号都同步于此时钟信号
- 从机选择信号SSN,用于和主机通信的从机选择
- 从主机到从机的数据线,MOSI(Master Out-Slave In)
- 从从机到主机的数据线,MISO(Master In-Slave Out)
8.2.2 特性
SPI模块的主要特性如下:
- 主机模式下,MOSI和MISO之间的全双工同步串行数据传输
- 可编程SCLK频率、极性和相位,最高可达48MHz
- 可编程极性仅支持CSN信号
- 优先可编程MSB或LSB,支持8位或16位传输模式
- 支持TX和RX寄存器的数据接收和发送
- 支持嵌入式DMA控制器的数据发送和接收,32字节的TX和RX先进先出(FIFO)
- 在实时应用中,DMA支持在超时条件下RX FIFO刷新操作
- 全面的状态和中断报告
总结:本部分主要讲解了J2的UART和SPI。同学们可以根据实际应用进行选择,比如J2和MCU之间的通信可选择UART或SPI或两者都接上。
本文章是博主花费大量的时间精力进行梳理和总结而成,希望能帮助更多的小伙伴~ 🙏🙏🙏
后续内容将持续更新,敬请期待(*^▽^*)
欢迎大家评论,点赞,收藏→→→
这篇关于地平线—征程2(Journey 2-J2)芯片详解(21)—UART+SPI的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!