MicroBlaze AXI总线实现OLED显示
OLED作为从设备,主设备通过SPI控制协议和OLED模块进行通信,硬件接口为PMOD接口,OLED模块内部集成SRAM存储设备缓存显示数据。OLED模块使用4wire SPI串行方式,其信号包含:SCK(时钟),CS(片选),MOSI(master output slave in),D/C(data or control),
RESET(复位信号),通过SPI发送控制及显示数据完成对OLED显示输出。显示前,首先要对OLED显示属性进行设置,包括显示分辨率,显示亮度等初始化信息,SPI配置是单向的,有的配置命令需要发送配置命令和配置字,比如配置显示地址模式,需要发送双字节命令,20:00;配置为行地址模式;配置完成后,需要将显示数据以字节形式发送到显示缓存中;
在AXI系统总线下,搭建软核的关键部分步骤如下;
1、添加GPIO外设;
![图片1.png](http://editerupload.eepw.com.cn/fetch/20160912/308457_1_0.jpg)
2、单击YES;添加IP;
![图片2.png](http://editerupload.eepw.com.cn/fetch/20160912/308457_1_1.jpg)
3、 将channel1 的位宽设置为2;其它默认;单击OK;
![图片3.png](http://editerupload.eepw.com.cn/fetch/20160912/308457_1_2.jpg)
![图片4.png](http://editerupload.eepw.com.cn/fetch/20160912/308457_1_3.jpg)
4、SPI外设选择接口连接,将不用的信号线断开;
![图片5.png](http://editerupload.eepw.com.cn/fetch/20160912/308457_1_4.jpg)
![图片6.png](http://editerupload.eepw.com.cn/fetch/20160912/308457_1_5.jpg)
图5-24
5,对SPI所需要的SCLK,SS,MOSI信号进行连线,扩展到外部接口。
![图片7.png](http://editerupload.eepw.com.cn/fetch/20160912/308457_1_6.jpg)
![图片8.png](http://editerupload.eepw.com.cn/fetch/20160912/308457_1_7.jpg)
![图片9.png](http://editerupload.eepw.com.cn/fetch/20160912/308457_1_8.jpg)
6、设置GPIO 接口属性,完成信号线RESET,D/C信号分配。在此只是这只两个输出信号。
![图片10.png](http://editerupload.eepw.com.cn/fetch/20160912/308457_1_9.jpg)
7、进入SDK初始化界面;
![图片11.png](http://editerupload.eepw.com.cn/fetch/20160912/308457_1_10.jpg)
8、关掉Weclome面板;
9、file->new->application project;
![图片12.png](http://editerupload.eepw.com.cn/fetch/20160912/308457_1_11.jpg)
10、点击Next;
![图片13.png](http://editerupload.eepw.com.cn/fetch/20160912/308457_1_12.jpg)
11、选择Peripheral Tests;点击Finish;编译完成。
![图片14.png](http://editerupload.eepw.com.cn/fetch/20160912/308457_1_13.jpg)
12,需要修改代码,并添加字库;将font.h文件和main.c文件直接拷入x:oled_skoledsoftoledsrc工程目录源文件下;删除testperiph.c,project->built all;
13、编译完成,生成elf后缀文件;
14、下载bit,Xilinx Tools—>program FPGA;选择bit目录
![图片15.png](http://editerupload.eepw.com.cn/fetch/20160912/308457_1_14.jpg)
15、给板子上电,板子使用6V,3A,电源,注意jtag 下载方式选择,选择***;上电下载;
显示下载进度;
![图片16.png](http://editerupload.eepw.com.cn/fetch/20160912/308457_1_15.jpg)
16、bit下载成功后,运行OLED程序;
![图片17.png](http://editerupload.eepw.com.cn/fetch/20160912/308457_1_16.jpg)
17、点击OLED,右键选择Run As->launch on hardware;
![图片18.png](http://editerupload.eepw.com.cn/fetch/20160912/308457_1_17.jpg)
18、查看板子现象;
![图片19.jpg](http://editerupload.eepw.com.cn/fetch/20160912/308457_1_18.jpg)
运行oled中main.c程序,显示ASCII码字符以码值。
![无标题.png](http://editerupload.eepw.com.cn/fetch/20160912/308457_1_19.jpg)
关键词: NANO2 microblaze FPGA OLED
![](https://webstorage.eepw.com.cn/images/2014/m/wx.png)
加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW
或用微信扫描左侧二维码