|
【HarmonyOS HiSpark Wi-Fi IoT 套件试用连载】6.驱动OLED, 今天尝试了驱动OLED,本来想自己写IIC的驱动来驱动OLED的,因为以前在STM32上做过IIC的OLED的驱动,但是在润和的gitee上面看到他们又做demo,所以直接拿来用了,省事省时又省力。
废话不多说。
先去gitee上下载源码。
https://gitee.com/hihopeorg/HarmonyOS-ssd1306
下载下来放到这个目录中,备用。
7.png (39.27 KB, 下载次数: 0)
下载附件 保存到相册
昨天 22:59 上传
我们先来看一下原理图:
1.png (13.96 KB, 下载次数: 0)
下载附件 保存到相册
昨天 22:59 上传
2.png (23.68 KB, 下载次数: 0)
下载附件 保存到相册
昨天 22:59 上传
3.png (776.05 KB, 下载次数: 0)
下载附件 保存到相册
昨天 22:59 上传
从上面的原理图中可以看出,IIC的SDA连接到了GPIO13,SCL链接到了GPIO14。
记住这个,下面会用到。
接下来是修改BUILD.gn文件。
将app文件夹下的BUILD.gn文件修改为如下图所示:
8.png (123.33 KB, 下载次数: 0)
下载附件 保存到相册
昨天 23:02 上传
然后到目录vendor\hisi\hi3861\hi3861\build\config下找到 usr_config.mk ,在里面添加C ONFIG_I2C_SUPPORT=y
再找到vendor\hisi\hi3861\hi3861\app\wifiiot_app\init下找到app_io_init.c,将IIC的端口修改为13(SDA),12(SCL),如下:
- #ifdef CONFIG_I2C_SUPPORT
- /* I2C IO复用也可以选择3/4; 9/10,根据产品设计选择 */
- hi_io_set_func(HI_IO_NAME_GPIO_13, HI_IO_FUNC_GPIO_0_I2C1_SDA);
- hi_io_set_func(HI_IO_NAME_GPIO_14, HI_IO_FUNC_GPIO_1_I2C1_SCL);
- #endif
复制代码
然后编译,下载,就可以用了,如下图:
4.png (467.88 KB, 下载次数: 0)
下载附件 保存到相册
昨天 22:59 上传
5.png (490.02 KB, 下载次数: 0)
下载附件 保存到相册
昨天 22:59 上传
6.png (500.19 KB, 下载次数: 0)
下载附件 保存到相册
昨天 22:59 上传 |
|