当前位置: 首页 > news >正文

成都零起飞网站建设本厂有大量手工活外发

成都零起飞网站建设,本厂有大量手工活外发,wordpress+关闭warning,佛山网站建设冯哥一、前言 在之前的文章中介绍了《板级调试小助手》的系统结构和DDS自定义外设的搭建。这篇文章主要介绍一下如何在PYNQ中驱动平时长剑的OLED12864显示屏,并显示BadApple(毕竟有屏幕的地方就要有BadApple)。效果如下: BadApple 本项…

一、前言

        在之前的文章中介绍了《板级调试小助手》的系统结构和DDS自定义外设的搭建。这篇文章主要介绍一下如何在PYNQ中驱动平时长剑的OLED12864显示屏,并显示BadApple(毕竟有屏幕的地方就要有BadApple)。效果如下:

BadApple

本项目完全开源,开源地址请查看《板级调试小助手(1)系统结构和原理》文章最后

二、OLED驱动设计

        OLED显示屏使用了IIC协议,为了能方便PS端控制,我们需要将其设计成自动读取BRAM中的数据,并显示,OLED驱动的顶层如下所示。

module oled_top #
(parameter   SLAVE_ADDR =  7'b0111100,       //从机地址parameter   CLK_FREQ   = 26'd100_000_000,   //系统时钟(Hz)parameter   I2C_FREQ   = 19'd350_000,       //IIC频率parameter   BIT_CTRL   =  1'b0              //字地址位控制(16b/8b)
)
(input sysClk,           //系统时钟input sysRst,           //全局复位//RAM数据接口output [9:0]rd_addr,        //读RAM地址input  [7:0]ram_rd_data,    //读RAM数据//IIC接口output      oled_scl,inout       oled_sda
);wire            i2c_dir_clk     ;
wire            i2c_exec        ;
wire    [15:0]  i2c_data        ;
wire            i2c_done        ;i2c_dri #(.SLAVE_ADDR (SLAVE_ADDR    ) ,.CLK_FREQ   (CLK_FREQ      ) ,   .I2C_FREQ   (I2C_FREQ      )     
)
i2c_dri_u (//global clock.clk        (sysClk          ), .rst_n      (~sysRst         ), .i2c_exec   (i2c_exec      ), .bit_ctrl   (BIT_CTRL        ), .i2c_rh_wl  (1'b0            ), .i2c_addr   (i2c_data[15:8]), .i2c_data_w (i2c_data[7:0] ), .i2c_data_r (                ), .i2c_done   (i2c_done      ), .scl        (oled_scl      ), .sda        (oled_sda     ), .dri_clk    (i2c_dir_clk   )  );oled_ctrl oled_ctrl_u(.I_sys_clk    (i2c_dir_clk),.I_reset_n    (~sysRst      ),.I_i2c_done   (i2c_done   ),.O_i2c_data   (i2c_data   ),.O_i2c_exec   (i2c_exec   ),.O_rd_addr    (rd_addr    ),.I_ram_rd_data(ram_rd_data)
);endmodule

        可以看到顶层代码中,除了IIC接口,也具有一个RAM数据读接口。 i2c_dri 模块是OLED驱动模块,oled_ctrl模块用于读取BRAM数据写入OLED的控制模块,具体代码这里就不展示了,需要请移步第一章最后的开源地址。

三、PS端的python代码处理

PL端设计好之后PS端就很好设计的,主要分为一下几个步骤:

1、调用OpenCV库读取.mp4文件,逐帧解析;

2、将解析后的视频帧转换成OLED可以显示的数据;

3、将数据通过AXI总线写入BRAM

PS端代码如下:

#显示开机动画
video_path = '123.mp4';
cap = cv2.VideoCapture(video_path);  #创建VideoCapture对象
while True:ret, frame = cap.read()     #读一帧数据# 如果正确读取帧,ret为Trueif not ret:print("Error: No more frames to read.")breakgray_image = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)_, binary_image = cv2.threshold(gray_image, 170, 255, cv2.THRESH_BINARY)#变成numpy可以处理的数组numpy_image = np.array(binary_image)#获取转换后的数据re_Addr,re_Data = oled.oled_show(numpy_image)#写入oled显示缓存for i in range(0, 256):bram_ip.write(re_Addr[i],re_Data[i])

http://www.yayakq.cn/news/430463/

相关文章:

  • 广东网站建设哪家好展会广告策划公司
  • 成都免费建网站公司网页升级重要通知请拿好笔记本
  • 2019广东省工程建设网站怎么开通微信小程序卖东西
  • 河南省汝州市文明建设网站查失信被执行人名单查询
  • 绵阳网站建设设计做直播网站找哪个网站
  • 苏州网站公司性价比高柳州网站建设
  • 微信公众号 网站开发h5营销型网站
  • 池州做网站的公司公司网站建设一般要多少钱
  • 2018网站建设涉及网站左边logo图标怎么做
  • 试用型网站怎么用自己笔记本建设网站
  • 织梦手机网站制作兰州网站制作服务电话
  • 学校门户网站建设工作室内设计师怎么找
  • .net 网站管理系统福州品牌网站建设公司
  • 开发建设网站手机网站抢拍是怎么做的
  • 利用高权重网站做关键词朝阳区北京网站建设
  • 紫云网站建设即速应用微信小程序官网
  • 网站建设案例展示不可上网
  • 网站设计项目建设内容网络规划的研究内容
  • 网站登陆系统怎么做淘宝宝贝关键词排名查询工具
  • 做网站不会P图怎么办上海人才网档案查询
  • 公司网站设计与管理杭州网络
  • 做请帖的网站做自己的网站有什么用
  • 中国建设工程人才库官方网站域名建议网站
  • 注册免费的网站wordpress 路由设计
  • 网站主目录农业信息网站建设意义
  • 网站网站环境搭建教程凡科女装
  • 手机怎么制作网站学校网站手机站的建设
  • 中国糕点网页设计网站揭阳网站建设方案外包
  • react可以做门户网站么上海展台搭建
  • 爬虫科技网站建设如何经营自己的网站