自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 第十一课 HDMI彩条显示实验

整个系统需要两个输入时钟,一个是视频的像素时钟 Pixel Clk,另外一个时钟 Pixel Clk x5 的频率是像 素时钟的五倍。由前面的简介部分我们知道,并串转换过程的实现的是 10:1 的转换率,理论上转换器需要 一个 10 倍像素时钟频率的串行时钟。如果每个像素点的颜色深度为 24 位,即 RGB 每个颜色分量各占 8 位,那么每个通道上的颜色数据将 通过一个 8B/10B 的编码器(Encoder)来转换成一个 10 位的像素字符。MDS 连接从逻辑功能上可以划分成两个阶段:编码和并串转换。

2023-10-17 18:42:48 148

原创 第十课 LCD彩条显示实验

HSYNC:行同步信号,当此信号有效的时候就表示开始显示新的一行数据,查阅所使用的 LCD 数据手 册可以知道此信号是低电平有效还是高电平有效,图 17.1.7 为低电平有效。HOZVAL:行有效显示区域,即显示一行数据所需的时间,假如屏幕分辨率为 1024*600,那么 HOZVAL就是 1024,单位为 CLK。VSYNC:帧(场)同步信号,当此信号有效的时候就表示开始显示新的一帧数据,查阅所使用的 LCD数据手册可以知道此信号是低电平有效还是高电平有效,图 17.1.8 为低电平有效。

2023-10-16 16:02:37 265 1

原创 第九课 uart串口通信

接收标志赋值:rx_cnt ,baud_cnt 一个是数据位计数,波特率计数能计数每一位的中间时刻,采稳定的信号。baud_cnt从0~434,每记到434rx_cnt+1. 把计数rx_cnt的值在中间采沿,保存在rx_data_t中。baud_cnt == BAUD_CNT_MAX - BAUD_CNT_MAX/16 ( baud_cnt == BAUD_CNT_MAX*15/16 -1'b1)相等?

2023-10-07 14:34:27 132 1

原创 第八课 IP核之FIFO

一 FPGA 使用的 FIFO 一般指的是对数据的存储具有先 进先出特性的一个缓存器,常被用于数据的缓存,或者高速异步数据的交互也即所谓的跨时钟域信号传递。特点:它与 FPGA 内部的 RAM 和 ROM 的区别是没有外部读写地址线,采取顺序写入数据,顺序读出数据的方式, 使用起来简单方便,由此带来的缺点就是不能像 RAM 和 ROM 那样可以由地址线决定读取或写入某个指定 的地址。ip_fifo.v: 例化pll的ip核,FIFOip核,读和写模块以及fifo读写时钟阈下的ila。创建pll的ip核。

2023-09-27 14:51:30 188 2

原创 第七课 IP核之RAM

CLKA:RAM 端口 A 的时钟信号。但也可以被配置成伪双端口 RAM(Simple Dual-Port ram,SDP)(有两个 端口,但是其中一个只能读,另一个只能写)或单端口 RAM(只有一个端口,读/写只能通过这一个端口来 进行)。二 实验任务:本节实验任务是使用 Xilinx BMG IP 核,配置成一个单端口的 RAM,然后对 RAM 进行读写操作,通 过在 Vivado 自带的仿真器中观察波形是否正确,最后将设计下载到启明星 Zynq 开发板中,并使用 ILA 对 其进行在线调试观察。

2023-09-21 16:03:19 312 1

原创 第六课 IP核PLL/MMCM

在反馈路径中插入M计数器会使VCO的震荡频率是FREF信号频率的M倍,FREF信号等于输入时钟(FIN) 除以预缩放计数器(D)。在本实验中,读者可以简单地理解为:外部时钟连接到具有时钟能力的输入引脚 CCIO(Clock-Capable Input),进入 MMCM/PLL,产生不同频率和不同相位的时钟信号,然后驱动全局时钟资源 BUFG。PLL 主要用于为内存接口生成所需的时钟信号,但也具有与器件逻辑 的连接,因此如果需要额外的功能,它们可以用作额外的时钟资源。输入时钟为sys_clk.

2023-09-19 16:36:58 145 1

原创 第五课 呼吸灯

当flag为1,led由亮变暗,此时cnt_ms>=cnt_s led为1.当flag为0,led由暗变亮,此时cnt_ms《=cnt_s led为1. 如果当前的周期计数值小于等于占空比计数值,则 LED 输出高电平,即点亮;cnt_2ms:当计数到MS_MAX时归0此时us也刚好为0,每计满US_MAX加1. cnt_2s:当计数到最大值归0,此时us和ms也为0,每计满2ms加1。inc_dec_flag为低电平,led灯由暗变亮,inc_dec_flag为高电平,led灯由亮变暗。

2023-09-19 10:17:27 140 1

原创 第四课 触摸按键控制led

当 OP2 拉低时,触摸 IC 工作在同步模式(类似于非自锁的轻触按键),即触摸时输出有效电平,松开后输出无有效电平;OP2 拉高时触摸 IC 工作在保持模式(类似于自锁按键),即检测到触摸操作后输出有 效电平,松开后,输出电平保持不变。实验任务:本节的实验任务是使用触摸按键控制 LED 灯的亮灭,开发板上电后 LED 为点亮状态,手指触摸后 LED熄灭;当再次触摸时,LED 点亮。触摸 IC 的引脚 OP1 和 OP2 均拉低,因此当手指按在触摸按键上时,TOUT 管脚输高电平, 松开后输出低电平。

2023-09-17 14:29:36 147 1

原创 第三课 按键控制蜂鸣器

按键消抖:当我们按下或松开 按键时,由于弹片的物理特性,不能立即闭合或断开,往往会在断开或闭合的短时间内产生机械抖动, 消除这种抖动的过程即称为按键消抖。发送最终得到的按键值在计数器递减到1时送出按键值。代码中的第 46 行,只 有在计数器递减到 1 时,即此时计数器计时完了 20ms,才会寄存按键的值。按键控制蜂鸣器模块 (beep_control),识别按键按下的那一刻,并对蜂鸣器的鸣叫状态进行翻转。key_beep.v 对得到的filter信号打拍,捕获按键端口的下降沿,得到一个时钟周期的脉冲信号。

2023-09-16 16:42:25 1032 1

原创 第二课 按键控制led实验

实验任务:本节实验任务是使用底板上的 PL_KEY0 和 PL_KEY1 按键来控制底板上的 PL_LED0 和 PL_LED1 两个LED 的闪烁方式。计数器在每次计时到 0.5 秒的 时候,就改变 LED 的显示状态,然后清零并重新开始计数。然后根据两个按键(KEY0 和 KEY1)的状态,在不同的 LED 状态下,分别设置 LED 的显示模式(是 同时闪烁,或者交替闪烁)第二种是自锁按键,自锁按键第一次按下后保持接通,即自锁,第二次按下后,开关断开,同时开关按钮 弹出来.//参数定义的用法。

2023-09-16 10:57:56 461 1

原创 第一课 fpga led灯闪烁实验

1.计算0.5s cnt的计数次数:时钟为 50MHz,所以一个时钟周期为 20ns(1/50MHz)。因此计数器 cnt 通过对 50MHz系统时钟计数,计时到 0.5s,需要累加 0.5s/20ns=2500_0000 次。四.tb仿真模板:输入输出——信号初始化——生成时钟——模块例化 此实验(wire [1:0] led;问题:1.为什么用5000_0000表示 2. cnt

2023-09-13 17:02:34 127 2

原创 编译ubuntu18.04编译opencv 4.20

include_directories( ${OpenCV_INCLUDE_DIRS} ) # 添加一个用于包含的文件去构建的文件夹。target_link_libraries( DisplayImage ${OpenCV_LIBS} ) # 链接的库。cmake_minimum_required(VERSION 3.1) # 选择最匹配的最低的Cmake版本。project( DisplayImage ) # 创建的程序的名称(项目的名称)测试: 按照参考连接,还不错的cmakelist.txt。

2023-06-05 13:47:48 177 3

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除