迅维网

标题: 【NV32F100x试用体验】No.11 显示屏OLED [打印本页]

作者: バ幸福De右岸    时间: 2016-12-25 10:40
标题: 【NV32F100x试用体验】No.11 显示屏OLED
这是一个很简单的应用,显示也是一个很好玩的东西,就是喜欢。
其实原本是想写写EEPROM的,结果,还没搞清楚。
往后推推。

言归正传,OLED也是显示屏,而且省电方便,显示清晰。

                               
登录/注册后看高清大图

OLED显示效果
手上其实也有很多显示屏,有16位并口的,8位并口的,这个OLED支持4线SPI和IIC其实我觉得是假的SPI。

使用5个IO口,我说是假的SPI因为这个SPI没有输入,而且还多了一个DC脚。
   
  • GPIO_PinInit(GPIO_PTE0,GPIO_PinOutput);//对应CS
  • GPIO_PinInit(GPIO_PTE1,GPIO_PinOutput);//对应DC
  • GPIO_PinInit(GPIO_PTE2,GPIO_PinOutput);//对应RES
  • GPIO_PinInit(GPIO_PTE3,GPIO_PinOutput);//对应D1
  • GPIO_PinInit(GPIO_PTD2,GPIO_PinOutput);//对应D0


[color=rgb(51, 102, 153) !important]复制代码


都设置为输出模式。

在OLED.H里修改函数
//-----------------OLED端口定义----------------                                             
#define OLED_CS_Clr()  GPIO_PinClear(GPIO_PTE0)//CS
#define OLED_CS_Set()  GPIO_PinSet(GPIO_PTE0)

#define OLED_RST_Clr() GPIO_PinClear(GPIO_PTE2)//RES
#define OLED_RST_Set() GPIO_PinSet(GPIO_PTE2)

#define OLED_DC_Clr() GPIO_PinClear(GPIO_PTE1)//DC
#define OLED_DC_Set() GPIO_PinSet(GPIO_PTE1)

//PC0~7,作为数据线
#define DATAOUT(x) GPIO_Write(GPIOC,x);//输出  
//使用4线串行接口时使用

#define OLED_SCLK_Clr() GPIO_PinClear(GPIO_PTD2)//CLK
#define OLED_SCLK_Set() GPIO_PinSet(GPIO_PTD2)

#define OLED_SDIN_Clr() GPIO_PinClear(GPIO_PTE3)//DIN
#define OLED_SDIN_Set() GPIO_PinSet(GPIO_PTE3)
这是Navota的库文件,所以直接使用。
后面就能直接使用了,是不是很简单。

                               
登录/注册后看高清大图

当然多亏了官方提供的驱动文件,为我们提供了方便。
希望对你有帮助。放上源文件。如果有任何疑问,对比查阅。

NV32demoOLED.zip

230.92 KB, 下载次数: 0, 下载积分: 下载分 -2 分, 下载 1 次


作者: quisheng    时间: 2017-1-7 08:36
谢谢分享,什么语言编写的,




欢迎光临 迅维网 (https://www.chinafix.com/) Powered by Discuz! X3.4