ImageVerifierCode 换一换
格式:DOCX , 页数:55 ,大小:2.01MB ,
资源ID:12411603      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/12411603.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(ssd1306中文手册.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

ssd1306中文手册.docx

1、ssd1306中文手册ssd1306中文手册简介SSD1306是一个单片CMOS OLED/PLED驱动芯片可以驱动有机/聚合发光二极管点阵图形显示系统。由128 segments 和64 Commons组成。该芯片专为共阴极OLED面板设计。SSD1306中嵌入了对比度控制器、显示RAM和晶振,并因此减少了外部器件和功耗。有256级亮度控制。数据/命令的发送有三种接口可选择:6800/8000串口,I2C接口或SPI接口。适用于多数简介的应用,注入移动电话的屏显,MP3播放器和计算器等。特性1.分辨率:128 * 64 点阵面板2.电源:a)VDD = 1.65V to 3.3V 用于IC逻

2、辑b)VCC = 7V to 15V 用于面板驱动 3.点阵显示a)OLED驱动输出电压,最大15Vb)Segment最大电流:100uAc)常见最大反向电流:15mAd)256级对比亮度电流控制4.嵌入式128 * 64位SRAM显示缓存5.引脚选择MCU接口a)8位6800/8000串口b)3/4线SPI接口c)I2C接口6.水平和垂直两个方向的屏幕保存连续滚动功能。7.RAM写同步信号8.可编程的帧率和多重比率9.行重映射和列冲映射10.片上晶振11.两种封装 COG和COF12.工作温度范围广:-40 to 85订购信息暂不翻译的硬件选择设置。 引脚总线接口Data/Command 接

3、口控制信号D7D6D5D4D3D2D1D0ER/W#CS#D/C#RES#8-bit 8080D7:0RD#WR#CS#D/C#RES#8-bit 6800D7:0ER/W#CS#D/C#RES#3-wire SPI Tie LOWNCSDINSCLKTie LOWCS#Tie LOWRES#4-wire SpiTie LOWNCSDINSCLKTie LOWCS#D/C#RES#I2CTie LOWSDAoutSDAinSClTie LOWSA0RES#MCU 并口 6800系列接口不翻译MCU 并口8080系列接口不翻译MCU串口(4-wire SPI)不翻译MCU串口(3-wire SP

4、I)不翻译MCU I2C 接口I2C通讯接口由从机地址为SA0,I2C总线数据信号(SDAout/D2输出和SDAin/D1输入)和I2C总线时钟信号SCL(D0)组成。数据和时钟信号线都必须接上上拉电阻。RES#用来初始化设备。a.从机地址位(SA0)SSD1306在发送或接受任何信息之前必须识别从机地址。设备将会响应从机地址,后面跟随着从机地址位(SA0位)和读写选择位(R/W#位),格式如下:b7 b6 b5 b4 b3 b2 b1 b00 1 1 1 1 0 SA0 R/W#SA0位为从机地址提供了一个位的拓展。0111100或0111101都可以做为SSD1306的从机地址。D/C#

5、引脚作为SA0用于从机地址选择。R/W#为用来决定I2C总线接口的操作模式。R/W# = 1,读模式。R/W# = 0 写模式b.I2C总线数据信号SDASDA作为发送者和接受者之间的通讯通道。数据和应答都是通过SDA发送。应该注意的是ITO轨道电阻和SDA引脚上的上拉电阻会变成一个潜在的电压分压器。结果就是SDA上的应答可能不能达到有效的逻辑0。SDAin和SDAout绑定到了一起作为SDA。SDAin引脚必须连接到SDA。SDAout引脚可以不连接。当SDAout引脚不连接,应答信号将会被I2C总线忽略。c.I2C总线时钟信号SCLI2C总线上的信息传输任务是随着一个时钟信号的,SCL。每

6、个数据位的传输任务发生在SCL的单个的时钟周期中。I2C总线写数据I2C总线接口提供了写数据和命令到设备的接口。关于I2C总线的写模式的时序请参考下图:I2c的写模式1.主机设备通过开始条件初始化数据通讯。开始条件的定义在下面的图中展示。开始条件通过将SDA从高拉低而SCL保持高建立。2.从机地址紧跟着开始条件作为标志用。对于SSD1306,从机地址可以是“b0111100”或“b0111101”通过改变SA0到LOW或HIGH(D/C引脚作为SA0)。3.写模式的建立是通过设置R/W#为到逻辑0实现的。4.应答位信号将在接收到一个字节的数据后发生包括从机地址和R/W#位。可以参考下面的应答位

7、信号的图示。应答位的定义是在应答位相关的时钟脉冲的高周期中把SDA线拉低。5.传输完从机地址之后,控制字节或数据字节开始通过SDA传输。一个控制字节主要由CO和D/C#位后面再加上六个0组成的。a)如果Co为设为逻辑0,后面传输的信息就只包含数据字节。b)D/C为决定了下个数据字节是作为命令还是数据。如果D/C#位设为0,下一个数据就是命令。如果D/C#位设为1,下一个数据就是数据,将会存在GDDRAM中。GDDRAM列地址指针将会在每次数据写之后自动加1.6.应答位将会在接收到每个控制字节或数据字节之后发生7.写模式会在用了停止条件之后结束。停止条件:将SDA从低拉高,而SCL保持高。请注意

8、数据位的传输是有限制的1.数据位,在每个SCL脉冲阶段传输,必须在时钟脉冲高周期内保持稳定状态。可以参考下面的图示。除了开始或停止条件,数据线只能在SCL为LOW的时候转换状态。2.SDA和SCL都必须接外接上拉电阻命令解码器这个模块决定了输入数据被解读为数据还是命令。数据的解读是基于D/C#引脚的输入。如果D/C#引脚是高,D7:0就被解读为写到图像显示数据RAM(GDDRAM)中的显示数据。如果是低,D7:0的输入就被解读为一个命令。然后数据输入就会被解码并写到相关的命令寄存器中。晶振电路和显示时间发生器这是一个片上低功耗RC震荡电路。操作时钟(CLK)可以由内部震荡器或外部CL引脚生成。

9、这个选择是通过CLS引脚完成的。当CLS引脚拉高,内部振荡器开启,CL应该保留开启。将CLS拉低可以静止内部振荡器,外部时钟必须连接到CL引脚上。当选择了内部振荡器之后,输出频率Fosc可以通过命令D5h A7:4修改。用于显示时钟发生器的显示时钟(DCLK)是源于CLK的。分频因子“D”可以通过命令D5h编程范围为1到16DCLK = Fosc/D显示的帧率是由下面的公式决定D 代表时钟分频。由D5h A3:0设置。范围是1到16K是每行显示时钟的数量。值的计算如下: K = 相1周期 + 相2周期 + BANK0脉冲宽度 = 2 + 2 + 50 = 54 在上电重启时Number of

10、multiplex ratio 通过command A8h设置。上电重启值为63 。Fosc 是振荡器频率,可以通过命令D5h A7:4修改。值越大频率越大。FR同步不翻译重启电路当RES# 输入为LOW时,芯片初始化为下面的状态:1.显示关2.128 * 64显示模式3.正常的segment和显示数据列地址和行地址映射(SEG0映射到address 00h,COM0映射到address 00h)4.在串口中清除移位寄存器数据5.显示开始行设置为显示RAM地址06.列地址计数设为07.正常扫描COM输出方向8.对比度控制寄存器设为7Fh9.正常显示模式(等同于A4h命令)Segment 驱动/

11、Common驱动Segment驱动实现了128个电路源来驱动OLED面板。驱动电流的范围可以在0到100uA以内调节,有256个等级。Common驱动产生电压脉冲。segment驱动波形分为3个阶段:1.在阶段1,OLED用于显示上一个图片的像素停止充电目的是为了准备显示下一张图片的内容。2.在阶段2,OLED像素被充到目标电压。像素被从Vss驱动到相关电压水平。阶段2时间可以通过编程在1到15个DCLK内变化。如果OLED面板的像素的电容值比较大,那么就需要更长的时间周期来给电容充电以达到想要的电压。3.在阶段3,OLED驱动转换为使用电流源来驱动OLED像素,这就是电流源驱动阶段了。当完成

12、阶段3之后,驱动芯片会回到阶段1来显示下一行图像信息。这三部循环持续运行来刷新OLED面板上的图像显示。在阶段3,如果电流驱动脉冲长度设为50,在电流驱动阶段完成50个DCLK后,驱动芯片回到阶段1准备下一行的显示。图形显示数据RAM(GDDRAM)GDDRAM是一个为映射静态RAM保存位模式来显示。该RAM的大小为128 * 64为,RAM分为8页,从PAFE0到PAGE7,用于单色128 * 64点阵显示,如下图所示当一个数据字节写到GDDRAM中,所有当前列的同一页的行图像数据都会被被填充(比如,被列地址指针指向的整列(8位)都会被填充)。数据位D0写到顶行,而数据位D7写到底行,如下图

13、所示。为了灵活性,segment和common上的重映射都可以通过软件选择。对于显示的垂直移动,一个内部的寄存器保存了显示开始行可以用来设置控制RAM数据部分来映射显示(命令D3h)。SEG/COM驱动块不翻译上电和断电顺序不翻译命令表(D/C# = 0, R/W#(WR#) = 0, E(RD# = 1),除非有别的状态声明)1.基本命令表D/C#HexD7D6D5D4D3D2D1D0命令描述0081A7:01A7 0A60A50A40A30A20A11A0设置对比度双字节命令选择256级对比度中的一种。对比度随着值的增加而增加(RESET = 7Fh)0A4/A51010010X0整体显示

14、开启状态A4h,X0 =0b:恢复RAM内容的显示(RESET) 输出跟随RAMA5h, X0 =1b:进入显示开启状态,输出不管RAM内容0A6/A71010011X0设置正常显示或反相显示A6h, X0=0b:正常显示(RESET)在RAM中的0:在显示面板上为关在RAM中的1:在显示面板上为开A7h, X0=1b: 反相显示在RAM中的0:在显示面板上为开在RAM中的1:在显示面板上为关0AEAF1010111X0设置显示开或关AEh, X0=0b:显示关(睡眠模式)(RESET)AFh X0=1b:显示开,正常模式2.滚屏命令D/C#HexD7D6D5D4D3D2D1D0命令描述000

15、0026/27A7:0B2:0C2:0D2:000*00*10*00*00*10B2C2D210B1C1D1X00B0C0D0持续水平滚动设置26h, X0=0, 向右水平滚动27h, X0=1, 向左水平滚动(水平平移1列)A7:0 : 空字节B2:0 : 定义开始页地址000b PAGE0011b PAGE3110b PAGE6001b PAGE1100b PAGE4111b PAGE7010b PAGE2101b PAGE5C2:0 : 在帧率范围内设置每次滚屏的时间间隔 000b 5 frames100b 3 frames001b 64 frames101b 4 frames010b

16、128 frames110b 25 frame011b 256 frames111b 2 frameD2:0 : 定义结束页地址000b PAGE0011b PAGE3110b PAGE6001b PAGE1100b PAGE4111b PAGE7010b PAGE2101b PAGE5D2:0的值必须大于或等于B2:0D/C#HexD7D6D5D4D3D2D1D0命令描述00000029/2AA2:0B2:0C2:0D2:0E5:000*00*10*E500*E410*E300B2C2D2E2X10B1C1D1E1X00B0C0D0E0持续垂直和水平滚屏设置29h, X1X0=01b : 垂

17、直和右水平滚屏2Ah, X1X0=10b : 垂直和左水平滚屏(水平滚动一列)A7:0 : 空字节B2:0 : 定义开始页地址000b PAGE0011b PAGE3110b PAGE6001b PAGE1100b PAGE4111b PAGE7010b PAGE2101b PAGE5C2:0 :在帧频范围内设置每次滚屏的时间间隔000b 5 frames100b 3 frames001b 64 frames101b 4 frames010b 128 frames110b 25 frame011b 256 frames111b 2 frameD2:0 :定义结束页地址000b PAGE0011

18、b PAGE3110b PAGE6001b PAGE1100b PAGE4111b PAGE7010b PAGE2101b PAGE5D2:0 的值必须大于或等于B2:0E5:0 :垂直滚屏的位移比如 E5:0= 01h offset =1 rowE5:0 =3Fh offset =63 rows注意(1) 没有持续垂直滚屏功能D/C#HexD7D6D5D4D3D2D1D0命令描述02E00101110关闭滚屏关闭因命令26h/27h/29h/2Ah开启的滚屏功能注意:在使用2Eh命令来关闭滚屏动作后,RAM的数据需要重写D/C#HexD7D6D5D4D3D2D1D0命令描述02F001011

19、11激活滚屏开始滚屏,滚屏命令26h/27h/29h/2Ah配置的,有效的顺序是:有效命令顺序1:26h;2Fh有效命令顺序2:27h;2Fh有效命令顺序3:29h;2Fh有效命令顺序4:2Ah;2Fh举例说明:如果发布命令26h;2Ah;2Fh,那么最后的一个滚屏命令会被执行,在这里是2Ah。换句话说最后的滚屏命令会重写以前的滚屏设置命令。D/C#HexD7D6D5D4D3D2D1D0命令描述000A3A5:0B6:01*0*B61A5B50A4B40A3B30A2B21A1B11A0B0设置垂直滚动区域A5:0设置顶层固定的行数。顶层固定区域的行数参考GDDRAM的顶部(比如row0)重置

20、为0B6:0设置滚动区域的行数。这个行的数量用于垂直滚动滚动区域。滚动区域开始于顶层固定区域的下一行。重置为64.Note1.A5:0+B6:0 =MUX ratio2.B6:0 = MUX ratio3.垂直滚动偏移(29h/2Ah命令中的E5:0) B6:04.设置显示开始线(40h7Fh中的X5X4X3X2X1X0)B6:05.滚动区域的最后一行移动到滚动区域的第一行6.对于64d最大显示A5:0= 0,B6:0= 64整个区域滚动A5:0=0,B6:064顶层区域滚动A5:0+B6:064中心区域滚动A5:0+B6:0= 64底部区域滚动3.地址设置命令表D/C#HexD7D6D5D4

21、D3D2D1D0命令描述0000f0000X3X2X1X0设置低一点的列的开始地址作为页地址模式Set the lower nibble of the column start addressregister for Page Addressing Mode using X3:0as data bits. The initial display line register isreset to 0000b after RESET.0101F0002X3X2X1X0设置列的高地址作为页的开始地址Set the higher nibble of the column start addressre

22、gister for Page Addressing Mode using X3:0as data bits. The initial display line register isreset to 0000b after RESET.0020A1:00*0*1*0*0*0*0A10A0设置内存地址模式A1:0 = 00b, Horizontal Addressing ModeA1:0 = 01b, Vertical Addressing ModeA1:0 = 10b, Page Addressing Mode (RESET)A1:0 = 11b, Invalid00021A6:0B6:00

23、*0A6B61A5B50A4B40A3B30A2B20A1B11A0B0设置列地址设置列的开始和结束地址A6:0 : Column start address, range : 0-127d,(RESET=0d)B6:0: Column end address, range : 0-127d,(RESET =127d)D/C#HexD7D6D5D4D3D2D1D0命令描述00022A2:0B2:00*0*1*0*0*0A2B21A1B10A0B0设置页地址设置页的开始结束地址A2:0 : Page start Address, range : 0-7d,(RESET = 0d)B2:0 : P

24、age end Address, range : 0-7d,(RESET = 7d)0B0B710110X2X1X0设置页开始地址作为页地址模式Set GDDRAM Page Start Address(PAGE0PAGE7) for Page Addressing Modeusing X2:0.硬件配置D/C#HexD7D6D5D4D3D2D1D0命令描述9.1数据读写为了往GDDRAM中写数据,在6800系列并口和8080系列并口模式中将R/W#(WR#)引脚置低,D/C#引脚置高。串口模式总是处于写模式。GDDRAM列地址指针在写完一个数据之后会自动加一。10 命令描述10.1 基本命令

25、10.1.1 设置低列开始地址作为页地址模式(00h0Fh)10.1.2 设置高列开始地址作为页地址模式(10h1Fh)10.1.3 设置内存地址模式(20h)SSD1306中有三种不同的内存地址模式:页地址模式,水平地址模式,垂直地址模式。这个命令将内存地址模式设置成这三种中的一种。在这里COL的意思是图形显示数据RAM列。页地址模式(A1:0 =10xb)在页地址模式下,在显示RAM读写之后,列地址指针自动加一。如果列地址指针达到了列的结束地址,列地址指针重置为列开始地址并且也地址指针不会改变。用户需要设置新的页和列地址来访问下一页RAM内从。页地址模式下PAGE和列地址指针的移动模式参考

26、下图在正常显示数据RAM读或写和页地址模式,要求使用下面的步骤来定义开始RAM访问的位置:1.通过命令B0h到B7h来设置目标显示位置的页开始地址2.通过00h0Fh来设置低开始列地址的指针3.通过命令10h1Fh来设置高开始列地址比如说,如果页地址设置为B2h,低列地址是03h高列地址为00h,那么就意味着开始列是PAGE2的SEG3.RAM访问指针的位置如下图所示。输出数据字节将写到RAM列3的位置。水平寻址模式(A1:0= 00b)在水平寻址模式下,当显示RAM被读写之后,列地址指针自动加一。如果列地址指针达到列的结束地址,列地址指针重置为列的开始地址,并且页地址指针自动加1。水平寻址模式下页和列地址的移动顺序如下图所示。当列地址和页地址都达到了结束地址,指针重设为列地址和页地址的开始地址。垂直寻址模式(A1:0=01b)在垂直寻址模式下,当显示RAM被读写之后,页地址指针自动加一。如果页地址达到了页的结束地址,页地址自动重置为页的开始地址,列地址自动加一。页地址和列地址的移动顺序如下图所示。当列地址和页地址都达到结束地址后,指针自动重置为开始地址。在正常显示

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1