![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
FPGA低速接口系列学习
文章平均质量分 91
通过实战学习UART、SPI、IIC等FPGA低速接口
顺子学不会FPGA
学海无涯
展开
-
FPGA使用SPI控制FLASH
通过控制FLASH芯片进一步熟悉SPI协议。原创 2024-03-17 21:06:20 · 2307 阅读 · 1 评论 -
FPGA学习_I2C总线协议
参考:https://mp.weixin.qq.com/s/Yq7i3y0ElNJiaPOWRetstQI2C总线由Philips公司开发的一种简单的双向二线制同步串行总线,英文名称为(Internal-Integrated Circuit Bus),也就是内置集成电路总线,它只需要两根线即可实现系统内部各个连接于总线上的集成电路(IC)之间的信息传递,可以说它是内部的公共通信干线。该协议起初是飞利浦公司为了让主板、嵌入式系统用以连接低速周边装置而研发的,如今得到了广泛应用。原创 2024-03-18 17:01:20 · 1196 阅读 · 0 评论 -
FPGA通过I2C控制AT24C64
继上一篇FPGA学习_I2C总线协议内容,本文将基于FPGA通过I2C控制AT24C64(EEPROM芯片)芯片。原创 2024-03-18 22:17:56 · 1932 阅读 · 0 评论 -
UART动态调整接收时钟
接收模块当识别到起始位的时候,开始产生接收时钟,接收时钟的上升沿处于数据线正中间,因此每次接收新数据的时候,接收时钟都在数据稳定的中间附近进行采样,并且用的都是新时钟,规避累计误差。为时钟分频模块的复位信号,当识别到起始位时,r_rx_overlock会拉低,复位取消,开始产生接收时钟,当一次数据接收完成时重新复位。由于发送端和接收端存在一定的频率误差,随着时间的推移,累计误差不断增加,从而产生亚稳态现象,会导致误码,因此需要对时钟做动态纠正。对接收的异步数据进行打拍,并以此判断起始位下降沿。原创 2024-03-15 20:01:25 · 648 阅读 · 1 评论 -
FPGA学习_SPI接口协议设计
之前写过一篇UART动态纠正接收时钟的文章,UART没有时钟信号,无法控制何时发送数据,也无法保证双发按照完全相同的速度接收数据。因此,双方以不同的速度进行数据接收和发送,就会出现问题。如果要解决这个问题,UART为每个字节添加额外的起始位和停止位,以帮助接收器在数据到达时进行同步;双方还必须事先就传输速度达成共识(设置相同的波特率,例如每秒9600位)。传输速率如果有微小差异不是问题,因为接收器会在每个字节的开头重新同步。原创 2024-03-17 09:54:02 · 1027 阅读 · 1 评论