STM32实验9OLED显示实验.docVIP

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
3.9?OLED显示实验 ? 前面所有的介绍都没有涉及到液晶显示,从这一节开始,我们将陆续向大家介绍几款液晶显示模块。本节我们将向大家介绍相对简单的 OLED 。本节分为如下几个部分: 3.9.1?OLED简介 3.9.2?硬件设计 3.9.3?软件设计 3.9.4?下载与测试 ? ?146 3.9.1?OLED简介? OLED,即有机发光二极管(Organic?Light-Emitting?Diode),又称为有机电激光显示(Organic?Electroluminesence?Display,?OELD)。OLED由于同时具备自发光,不需背光源、对比度高、厚度薄、视角广、反应速度快、可用于挠曲性面板、使用温度范围广、构造及制程较简单等优异之特性,被认为是下一代的平面显示器新兴应用技术。? LCD都需要背光,而OLED不需要,因为它是自发光的。这样同样的显示,OLED效果要来得好一些。OLED的尺寸难以大型化,但是分辨率确可以做到很高。这一节,我们使用的是ALINETEK的OLED显示模块,该模块有以下特点:? 1)模块有单色和双色两种可选,单色为纯白色,而双色则为黄蓝双色。 ?2)尺寸小,显示尺寸为0.96寸,而模块的尺寸仅为27mm*26mm大小。 ?3)高分辨率,该模块的分辨率为128*64。? 4)多种接口方式,该模块提供了总共5种接口包括:6800、8080两种并行接口方式、3线或4线的穿行SPI接口方式,、IIC接口方式(只需要2根线就可以控制OLED了!)。? 5)不需要高压,直接接3.3V就可以工作了。? 这里要提醒大家的是,该模块不和5.0V接口兼容,所以请大家在使用的时候一定要小心,别接到5V的系统上去,否则可能烧坏模块。以上5种模式通过模块的BS0~2设置,BS0~2的设置与模块接口模式的关系如下表: ?????????????????表3.9.1.1?OLED模块接口方式设置表? ?上表中:“1”代表接VCC,而“0”代表接GND。?该模块的外观图如下: ? 图3.9.1.1?ALIENTEK?OLED模块外观图? 模块的原理图如下: 图3.9.1.2?ALIENTEK?OLED模块原理图 该模块采用8*2的2.54排针与外部连接,其引线图如上图所示,总共有16个管脚,在16条线中,我们只用了15条,有一个是悬空的。15条线中,电源和地线占了2条,还剩下13条信号线。在不同模式下,我们需要的信号线数量是不同的,在8080模式下,需要全部13条,而在IIC模式下,仅需要2条线就够了!这其中有一条是共同的,那就是复位线RST(RES),该线我们可以直接接在MCU的复位上(要先确认复位方式一样),这样可以省掉一条线。? ALIENTEK?OLED模块的控制器是SSD1306,这一节,我们将学习如何通过STM32来控制该模块显示字符和数字,本节实例将可以支持2种方式与OLED模块连接,一种是8080的并口方式,另外一种是4线SPI方式。? 首先我们介绍一下模块的8080并行接口,8080并行接口的发明者是INTEL,该总线也被广泛应用于各类液晶显示器,ALIENTEK?OLED模块也提供了这种接口,使得MCU可以快速的访问OLED。ALIENTEK?OLED模块的8080接口方式需要如下一些信号线:? ?CS:OLED片选信号。?? WR:向OLED写入数据。?? RD:从OLED读取数据。?? D[7:0]:8位双向数据线。?? RST(RES):硬复位OLED。 ?DC:命令/数据标志(0,读写命令;1,读写数据)。? 模块的8080并口读/写的过程为:先根据要写入/读取的数据的类型,设置DC为高(数据)/低(命令),然后拉低片选,选中SSD1306,接着我们根据是读数据,还是要写数据置RD/WR为低,然后:? 在RD的上升沿,?使数据锁存到数据线(D[7:0])上;? 在WR的上升沿,使数据写入到SSD1306里面;? SSD1306的8080并口写时序图如下:? 图3.9.1.3??8080并口写时序图 SSD1306的8080并口读时序图如下: 图3.9.1.4??8080并口读时序图 SSD1306的8080接口方式下,控制脚的信号状态所对应的功能如下表: 表3.9.1.2??控制脚信号状态功能表? 在8080方式下读数据操作的时候,我们有时候(例如读显存的时候)需要一个假读命(Dummy?Read),以使得微控制器的操作频率和显存的操作频率相匹配。在读取真正的数据之前,由一个的假读的过程。这里的假读,其实就是第一个读到的字节丢弃不要,从第二个开始,才是我们真正要读的数据。? 一个典型的读显存的时序图,如下图所示: 图3.9.1.5??读显存时序图? 可以看到,在发送了列地址之后,开始读数据,第一

文档评论(0)

185****7617 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档