查看: 2204|回复: 0

SAM4E板卡驱动OLED显示

[复制链接]
  • TA的每日心情
    擦汗
    2024-5-31 10:44
  • 签到天数: 1492 天

    连续签到: 1 天

    [LV.10]以坛为家III

    发表于 2015-2-5 09:34:16 | 显示全部楼层 |阅读模式
    分享到:

         SAM4E的板子到手有段时间了,最近太忙也没时间学,这两天抽点时间来学习了下用SAM4E的板子驱动OLED屏,手上有块ATMEL的OLED板子,用SAM4E的板子来驱动测试下。
         先看下SAM4E板子的外观,驱动OLED是使用的EXT3接口,板子下面的那个排阵。
    0.JPG
       
    看下主板接口的信号
        1.png
       
    再看下OLED板的外观,
    2.png
       
    然后是OLED板接口的描述
    3.png

         本OLED是128*32点阵的。ASCII字库是不等宽的,高度为8点阵,可以显示4行。字库定义时使用了指针数组,为了字符分开点,显示的时候在两个字符字符之间再增加一个空列。驱动使用的是SPI接口,我目前先使用IO口来模拟SPI接口。
         首先建立一个工程,怎么建立这里就不多描述了,我是用ASF的例程LOW_POWER1基础上修改的,在ASF\common\components目录下增加了display文件夹,增加了几个文件。
    4.png

        修改工程里,在mian文件里把OLED显示用不到的东西都删掉。只留下了OLED板上3个LED,3个按键和OLED显示的驱动。Main函数内容如下
    5.png

         和OLED相关的有bard_init();ssd1306_init();ssd1306_clear(); Display_Text ();这几个函数,后面的3个函数都在文件ssd1306.c文件中,然后需要用到的端口定义在sam4e_xplained_pro.h文件中。
    6.png

    ssd1306_init()函数中增加如下定义
    7.png

    OLED的初始化函数
    8.png

    总之还是比较简单的,就是IO口的操作,显示效果如下
    9.JPG 10.JPG 11.JPG
    回复

    使用道具 举报

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

    本版积分规则

    关闭

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

    手机版|小黑屋|与非网

    GMT+8, 2024-12-23 06:56 , Processed in 0.116269 second(s), 16 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.