CubieBoard中文论坛

 找回密码
 立即注册
搜索
热搜: unable
查看: 9360|回复: 3

基于CubieBLE-1109开发板通过GPIO模拟SPI实现OLED点亮

[复制链接]
发表于 2018-7-27 15:33:36 | 显示全部楼层 |阅读模式
本帖最后由 蓝天-彭 于 2018-9-26 16:23 编辑

一、软硬件环境
1、软件SDK版本:ATB110X_SDK_TAG_ZS110A_1910_180724
2、硬件:最新的芯片ATB1109,配合ATB110x开发板
3、OLED:0.96彩色OLED,驱动芯片为ST7735S

二、实现步骤
1、基于炬芯BLE蓝牙SDK中的心率sample实现OLED驱动的添加
工程路径:ATB110X_SDK_TAG_ZS110A_1910_180724\zs110a\samples\bluetooth\peripheral_hrs\keil5
(开发板的使用和工程的配置相关内容参考《ATB110开发板入门指南》)

2、添加GPIO驱动
打开工程,添加GPIO驱动文件gpio_acts.c到工程中。驱动文件路径:ATB110X_SDK_TAG_ZS110A_1910_180724\zs110a\drivers\gpio

3、添加OLED驱动文件及相关头文件,这部分在附件中,可自己定义文件夹放置并添加到工程中即可

4、在 app_main 函数中添加GUI_init函数,对OLED进行初始化
具体代码实现为:(注意使用 extern 导入GUI_init 函数)
  1. extern void GUI_init(void);
  2. void app_main(void)
  3. {
  4.         int err;
  5.         GUI_init();

  6.         err = bt_enable(bt_ready);
  7.         if (err) {
  8.                 printk("Bluetooth init failed (err %d)\n", err);
  9.                 return;
  10.         }

  11.         bt_conn_cb_register(&conn_callbacks);
  12.         
  13.         /* Implement notification. At the moment there is no suitable way
  14.          * of starting delayed work so we do it here
  15.          */
  16.         while (1) {
  17.                 k_sleep(MSEC_PER_SEC);
  18.                
  19.                 /* Heartrate measurements simulation */
  20.                 hrs_notify();
  21.         }        
  22. }
复制代码
三、测试结果
手机拍摄的照片颜色有误差,实际显示的颜色为蓝色!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

发表于 2018-8-25 21:34:47 | 显示全部楼层
请问大家,一般的手环上的OLED屏是否和这个调试过的屏一回事?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-8-27 16:28:08 | 显示全部楼层
ahha007 发表于 2018-8-25 21:34
请问大家,一般的手环上的OLED屏是否和这个调试过的屏一回事?

这个就是一家做手环的公司提供的屏幕
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|粤ICP备13051116号|cubie.cc---深刻的嵌入式技术讨论社区

GMT+8, 2024-4-20 06:07 , Processed in 0.022524 second(s), 16 queries .

Powered by Discuz! X3.4

© 2001-2012 Comsenz Inc. | Style by Coxxs

返回顶部