- 博客(6)
- 收藏
- 关注
原创 【FPGA】UART串口通信
tb文件里传入一个高低电平表示为8’b10101010的数据,然后经过uart_rx模块后得到一个8’b0101010的中间data,再经过uart_tx模块后输出高低电平表示为8’b10101010的数据。(也就是说串行通信传输的数据是1比特1比特的传送的)但并行传送的线路长度受到限制,因为长度增加,干扰就会增加,数据也就容易出错。并行是指多比特数据同时通过并行线进行传送,这样数据传送速度大大提高。uart_rx.v(数据输入模块)uart_tx.v(数据输出模块)uart_tb.v(测试文件)
2024-11-29 10:22:21
2613
原创 【FPGA】中值滤波处理BMP图片
bmp文件的存储格式是Windows系统中广泛使用的图像文件格式,对图像不做任何程度的压缩处理,主要分为位图头文件,位图信息头,调色板信息,像素数据四大部分,由于通常是处理RBG图像,因此仅讨论RGB的情况。中值滤波是基于排序统计理论的一种能有效抑制噪声的非线性信号处理技术,中值滤波的基本原理是把数字图像或数字序列中一点的值用该点的一个邻域中各点值的中值代替,让周围的像素值接近真实值,从而消除孤立的噪声点。:对3x3窗口的每一行进行排序,得到每行max,mid,min数。
2023-01-08 21:32:48
2669
9
原创 【FPGA】基于状态机实现自动售货机模拟
key1付款1元,key2付款5元,若投币数量小于商品总价则在五六位显示投币数量,且数码管第二位显示0表示无法出货,若投币数量大于等于商品总价则在五六位显示投币超出总价所需退款价格,数码管第二位显示1表示key出货,此时按下key3进入OUT状态。此自动售货机可以选择A(三元)与B(五元)商品且选择商品数量,一次可以投1块与5块钱。:key1商品数量加一,key2商品数量减一,在数码管第一位显示数量,商品数量不为0时按key3进入PAY状态,同时得到所需支付总价并在数码管三四位显示。
2022-11-26 22:56:18
3223
原创 【FPGA】UART串口通信——奇偶校验实现
因多了一位校验位,所以在之前uart代码的基础上,除了增加判断条件,还需要将data的位宽改为9位,bit_cnt计数器记到10(0-10共11位,起始位,8位数据,校验位,终止位)在之前的uart实现中,uart_rx模块接收完数据后就直接传给uart_tx进行输出,当有校验位时则需要在uart_tx输出前写一个判断条件。输出8’b10000101的数据和0正确校验位时,通过判断得到start拉高条件,tx输出。奇校验:数据1个数为奇时,校验为0,反之为1。偶校验:数据0个数为偶时,校验为0,反之为1。
2022-11-26 12:48:17
7633
1
原创 【FPGA】时钟分频器实现
4.时钟clk2可以通过clk下降沿时计数器控制,也可以把同一时钟周期把clk1的值在下降沿给clk2,两种方式都能达到clk2在clk1后半个clk周期的目的,我选择用后面一种方式实现。5.clk1与clk2的与运算得到一个clk_div,clk_div在计数器0时clk下降沿到计数器2时clk上升沿时为1,此时满足占空比50%3.设置两个时钟clk1,clk2,分别在计数器0与2初始时刻和0与2中间时刻取1。2.通过一个计数器cnt记录0,1,2三个数以达到三分频的需求。1.奇数分频(三分频)
2022-11-05 13:18:06
1471
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人