查看: 8630|回复: 15

[原创] [我为LPC代言]LPC824驱动中景园电子0-96寸OLED模块SSD1306

[复制链接]
  • TA的每日心情
    奋斗
    2017-1-18 20:00
  • 签到天数: 45 天

    连续签到: 1 天

    [LV.5]常住居民I

    17

    主题

    262

    帖子

    0

    高级会员

    Rank: 4

    积分
    533
    最后登录
    2024-11-23
    发表于 2016-12-20 22:46:58 | 显示全部楼层 |阅读模式
    LPC824驱动中景园电子0-96寸OLED模块SSD1306在买SSD1331时同时买了一块SSD1306,现在也是用LPC824来驱动,SSD1306的引脚排列与SSD1331的排列一致:
    1:GND
    2:VCC(3.3V、5V均可)
    3:SCL(时钟)
    4:SDA(数据)
    5:RES(RST复位)
    6:DC(数据/命令)
    7:CS(片选)
    SSD1306支持3线SPI驱动,4线SPI驱动,也支持IIC驱动,在论坛里看到的很多是IIC驱动,所以我这里使用4线SPI驱动,当然也有SPI驱动的,不过多多少少有一些差异,有的在Mbed平台实现,有的是OLED是六根线的。
    同样,接下来分配引脚:
    //              GND                    地
    //              VCC                  5V或3.3V
    //              D0                          P0_24(CLK)
    //              D1                        P0_8MOSI
    //              RES                  P0_26
    //              DC                          P0_15
    //              CS                           P0_27     
    分配完引脚就是写程序了,其实这里的引脚驱动程序比较简单,如下:
    1. //-----------------OLED引脚定义----------------         
    2. #define OLED_CS_Clr()  Chip_GPIO_PinSetState(LPC_GPIO_PORT, 0, 27, 0)           //0
    3. #define OLED_CS_Set()  Chip_GPIO_PinSetState(LPC_GPIO_PORT, 0, 27, 1);                //1

    4. #define OLED_RST_Clr() Chip_GPIO_PinSetState(LPC_GPIO_PORT, 0, 26, 0)           //0
    5. #define OLED_RST_Set() Chip_GPIO_PinSetState(LPC_GPIO_PORT, 0, 26, 1)                //1

    6. #define OLED_DC_Clr() Chip_GPIO_PinSetState(LPC_GPIO_PORT, 0, 15, 0)                   //0
    7. #define OLED_DC_Set() Chip_GPIO_PinSetState(LPC_GPIO_PORT, 0, 15, 1)                //1

    8. #define OLED_SCLK_Clr() Chip_GPIO_PinSetState(LPC_GPIO_PORT, 0, 24, 0)           //0
    9. #define OLED_SCLK_Set() Chip_GPIO_PinSetState(LPC_GPIO_PORT, 0, 24, 1)                //1

    10. #define OLED_SDIN_Clr() Chip_GPIO_PinSetState(LPC_GPIO_PORT, 0, 8, 0)           //0
    11. #define OLED_SDIN_Set() Chip_GPIO_PinSetState(LPC_GPIO_PORT, 0, 8, 1)                //1
    复制代码
    1. void OLED_PIN_Init(void)
    2. {
    3.         Chip_GPIO_Init(LPC_GPIO_PORT);                     
    4.         Chip_GPIO_PinSetDIR(LPC_GPIO_PORT, 0, 24, 1);  //ÉèÖÃΪÊä³ö
    5.         Chip_GPIO_PinSetDIR(LPC_GPIO_PORT, 0, 8, 1);  
    6.         Chip_GPIO_PinSetDIR(LPC_GPIO_PORT, 0, 26, 1);  
    7.         Chip_GPIO_PinSetDIR(LPC_GPIO_PORT, 0, 15, 1);  
    8.         Chip_GPIO_PinSetDIR(LPC_GPIO_PORT, 0, 27, 1);  
    9. }
    复制代码
    设置完引脚后其他程序参考官方给的例程基本就完成了,下面贴上源代码:

    给出结果图:


    IMG_20161220_214917.jpg

    LPC824_OLED_SSD1306_lib.rar

    1.41 MB, 下载次数: 145, 下载积分: 威望 1

    回复

    使用道具 举报

  • TA的每日心情
    开心
    2025-2-5 17:05
  • 签到天数: 206 天

    连续签到: 1 天

    [LV.7]常住居民III

    28

    主题

    1814

    帖子

    2

    金牌会员

    Rank: 6Rank: 6

    积分
    5873
    最后登录
    2025-6-26
    发表于 2017-2-22 16:10:25 | 显示全部楼层
    你的结果就是显示LPC824 你好 是么?lz?蓝灯闪烁么?过一两秒显示的内容是否变了?
    哎...今天够累的,签到来了~
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2017-1-18 20:00
  • 签到天数: 45 天

    连续签到: 1 天

    [LV.5]常住居民I

    17

    主题

    262

    帖子

    0

    高级会员

    Rank: 4

    积分
    533
    最后登录
    2024-11-23
     楼主| 发表于 2017-2-23 16:19:33 | 显示全部楼层
    yangjiaxu 发表于 2017-2-22 16:10
    你的结果就是显示LPC824 你好 是么?lz?蓝灯闪烁么?过一两秒显示的内容是否变了? ...

    内容不变
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2025-2-5 17:05
  • 签到天数: 206 天

    连续签到: 1 天

    [LV.7]常住居民III

    28

    主题

    1814

    帖子

    2

    金牌会员

    Rank: 6Rank: 6

    积分
    5873
    最后登录
    2025-6-26
    发表于 2017-2-24 17:22:00 | 显示全部楼层

    恩恩,我找到原因了,是我的线接触不好 ,嘻嘻,多有打扰,不好意思啦
    哎...今天够累的,签到来了~
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    11 小时前
  • 签到天数: 2925 天

    连续签到: 16 天

    [LV.Master]伴坛终老

    23

    主题

    4140

    帖子

    82

    金牌会员

    Rank: 6Rank: 6

    积分
    13771
    最后登录
    2025-7-21
    发表于 2017-2-25 23:53:25 来自手机 | 显示全部楼层
    有意向买这个屏,参观一下。谢谢分享
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2023-9-15 08:42
  • 签到天数: 1952 天

    连续签到: 1 天

    [LV.Master]伴坛终老

    1

    主题

    4686

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    9405
    最后登录
    2023-9-15
    发表于 2017-2-26 06:45:02 | 显示全部楼层
    谢谢分享!
    今天天气不错!签到!
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2021-11-8 23:15
  • 签到天数: 154 天

    连续签到: 1 天

    [LV.7]常住居民III

    8

    主题

    301

    帖子

    2

    金牌会员

    Rank: 6Rank: 6

    积分
    1045
    最后登录
    2025-6-13
    发表于 2017-2-26 10:21:01 | 显示全部楼层
    中文显示是怎样实现的, 用外挂字库?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2017-1-18 20:00
  • 签到天数: 45 天

    连续签到: 1 天

    [LV.5]常住居民I

    17

    主题

    262

    帖子

    0

    高级会员

    Rank: 4

    积分
    533
    最后登录
    2024-11-23
     楼主| 发表于 2017-2-26 14:50:17 | 显示全部楼层

    谢谢支持
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2017-1-18 20:00
  • 签到天数: 45 天

    连续签到: 1 天

    [LV.5]常住居民I

    17

    主题

    262

    帖子

    0

    高级会员

    Rank: 4

    积分
    533
    最后登录
    2024-11-23
     楼主| 发表于 2017-2-26 14:50:37 | 显示全部楼层
    toofree 发表于 2017-2-25 23:53
    有意向买这个屏,参观一下。谢谢分享

    谢谢支持
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2017-1-18 20:00
  • 签到天数: 45 天

    连续签到: 1 天

    [LV.5]常住居民I

    17

    主题

    262

    帖子

    0

    高级会员

    Rank: 4

    积分
    533
    最后登录
    2024-11-23
     楼主| 发表于 2017-2-26 14:51:12 | 显示全部楼层
    phantomgz 发表于 2017-2-26 10:21
    中文显示是怎样实现的, 用外挂字库?

    自己生成字库
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-21 12:40 , Processed in 0.103775 second(s), 29 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表