根据Tang Nano 9k开发板官方example改编而来的spi 1.14inch lcd视频显示
git pull或者git clone本项目至本地
git clone https://github.com/Moeary/iKun.git
然后将想要转换的视频放入python处理文件的目录下,并修改视频路径为你视频的真实路径
然后运行
python video2img.py
执行完这这段代码之后该文件夹下回新增一个out子文件夹,并生成以frame****(*代表数字).bmp的视频帧文件
之后修改bmp_image2hex_out.py文件中的第26行
26 for i in range(1,9): # 假设你要处理1到9张图片
将其改为你需要的数字,默认为1到9,如果你想处理第1001张图片到1100张图片可以修改为 ''' for i in range(1001,1100): ''' 之后运行该程序
python bmp_image2hex_out.py
得到cxk.txt文件,内部大致如
assign cxk[1][32399:0] = 32400'h +"一大串16进制数字"+;
assign cxk[2][32399:0] = 32400'h +"一大串16进制数字"+;
.......
assign cxk[9][32399:0] = 32400'h +"一大串16进制数字"+;
至此 准备工作全部完成,接下来需要进入Gowin IDE中进行修改
打开GowinIDE 点击左上角的文件->打开 选择我们clone下来的14_test.gprj 进行打开
打开后双击src/top.v文件 准备开始修改
选中蓝色框住的10行assign代码 ,进行删除
然后把之前cxk.txt文件中的10行assign代码Ctrl^C Ctrl^V复制进来
至此 替换工作就完成了
然后点击Process,右击Place&Route 选择Clean & Rerun All进行电路分析布线并生成BitStream文件进行烧录
再点击中上角的Programmer进行烧录
会弹出一个新窗口用来烧录
点击save,然后再点击中上角的下载器下载到SRAM里面
等待一会就可以看到你的视频已经成功转进去并在lcd显示屏上面显示了 至此 就弄好了。
GowinIDE如果有不懂的可以去看看https://wiki.sipeed.com/hardware/zh/tang/Tang-Nano-9K/examples/LED.html
142 reg [3:0] time_cnt; //[3:0]一共4bit最多只能循环16帧,可以自行拓展
143 wire [32399:0]cxk[9:0]; //后面9:0最多只能循环10帧 可以自行拓展
255 if(time_cnt == 10) begin //达到10帧后
256 time_cnt<=4'b0000; //这里重置为0 重新开始循环
257 end
142 reg [6:0] time_cnt; //[6:0]一共7bit最多只能循环128帧
143 wire [32399:0]cxk[99:0]; //后面99:0最多只能循环100帧
255 if(time_cnt == 100) begin //达到100帧后
256 time_cnt<=7'b000_0000; //这里重置为0 重新开始循环
257 end