FPGA
文章平均质量分 54
silence
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
UART
uart_rx `define NONE 0 `define ODD 1 `define SEVEN 2 `define SPACE 3 `define MARK 4 `define STOP_ONE 0 `define STOP_ONEHALF 1 `define STOP_TWO 2 module uart_rx #( parameter CLK = 50_000_000, parameter BAUD = 9原创 2020-12-30 22:23:01 · 153 阅读 · 0 评论 -
任意整数分频时钟的建立
1.该程序使用Verilog语言,用状态机实现任意整数分频的时钟; 2.偶数分频和奇数分频都能实现; 2.在运算中把除法和取余逻辑上比较好理解的运算符,改变成右移位和减法实现,可以大量节省FPGA资源; module div( input wire clk, input wire rst, input wire [31:0] a, //任意分频倍数 output wire clk_a ); reg clk1; reg clk2; wire [31:0] T_H; wire原创 2020-12-25 21:15:50 · 318 阅读 · 0 评论 -
iic协议通讯驱动
模块特点 利用状态机完成iic的驱动,将重复的状态进行合并,使代码更简单; 由于iic不能连续完成读写操作,在STOP状态后又加了一个DELAY (延迟)状态,延迟了5ms,可以保证程序不会卡死; 为体现iic的节能特点,使用了三态门,在空闲状态下,sda和scl线处于释放状态; 为了使一次通讯稳定运行,在通讯刚开始时对数据进行寄存,而且在通讯过程中不能发生变化; iic协议读/写数据步骤 iic协议读数据时序图 iic协议写数据时序图 iic协议通讯驱动模块 module i2c_driver(原创 2020-12-25 17:17:40 · 404 阅读 · 1 评论
分享