
FPGA学习
分享FPGA学习心得,分享FPGA技术知识,分享FPGA编程案例
ZhY_Rening
这个作者很懒,什么都没留下…
展开
-
FPGA初学 模块引用(带参数) 位扩展 LED 分频器
注意程序中Verilog位扩展的写法 {led_num{1’b0}} 相当于把 1’b0复制 led_num 次,数据总长为led_num位。 {led_num{2’b01}} 数据总长为 2*led_num 位 二级文件 `timescale 1 ns / 1 ps module LED_test ( clk, rst_n, led ); parameter led_num = 4; input clk, rst_n; output [led_num - 1:0] led; reg [led原创 2021-09-25 13:03:05 · 475 阅读 · 0 评论 -
FPGA 按键key
异或符号 ^ 可以用来取反 一级文件 `timescale 1 ns / 1 ps module key_test( clk, rst_n, key_in, led_out ); parameter led_num = 3; input clk, rst_n; input [led_num - 1:0] key_in; output[led_num - 1:0] led_out; key #( .led_num(led_num) ) key_inst( .clk(clk), .rst原创 2021-09-25 12:54:17 · 679 阅读 · 0 评论 -
IIC总线协议 与 EEPROM 的使用
需要注意以下几点: 1、wire类型不能设置初值 2、当在module后的括号中写了output之后 对应的变量名不能再定义为reg 3、使用Modelsim只能检查输出信号是否正确 不能仿真接收信号是否正确 4、注意 inout 类型的 port 的用法 inout SDA; //输出或输入数据信号 reg rSDA = 1'b1; assign SDA = isOut ? rSDA : 1'bz; //输出时选择rSDA,输入时设为高阻态 在输入状态下 应当使用SDA为其他变量赋值 不应使用rS原创 2021-09-25 12:45:06 · 501 阅读 · 0 评论 -
uart 串口 接收 和 发送
串口发送 `timescale 1 ns / 1 ps module uart_transmission( clk, //串口时钟,9600bps对应的时钟频率 50M/9600/16=326分频 rst_n, //复位信号 data_in, //需要发送的8bit数据 t_sig, //发送使能信号,上升沿有效 idle, //线路状态指示,0表示线路空闲,1表示线路占用 data_tx //串行发送数据,1bit ); input clk, rst_.原创 2021-09-25 12:36:43 · 1143 阅读 · 0 评论