本文来源电子发烧友社区,作者:华仔stm32, 帖子地址:https://bbs.elecfans.com/jishu_2284400_1_1.html
【目的】单片机一上来就得先自己学会搞定几个常用的外设,OLED是最常用的外设之一。
【步聚】1、本来想借用原来的hellowrld就可以轻松搞定的,可是我按照教程,就是编译通不过,所以只能手工来一步步搞定。
1、把文件app_demo_i2c_oled.c、code_tab.h、ssd1306_oled.h这三个文件拷到原来LED闪灯的程序src目录下。
2、然后把app_demo_i2c_oled.c下面的hi_void app_i2c_oled_demo(hi_void);
extern,然后再执行:
3、然后开启到配置下面开启i2c:
4、感觉成事俱备,只欠下载了,编译过无错误,下载到开发板,可是问题来了,怎么样都没有点亮。。。。。
5、排雷:点不亮就上逻辑分析仪,看到板有SDA、SLC,接上,可是怎么也没有时序,后面各种排险。。。。。。。。
6、后面拨下OLED板用万用表量SDA、SCL的跑线,经过一翻的折腾,终于找到SSD1306的SDA是接到了TX,SCL提接到RX上面。。。。
7、然后翻看原理图,TX、RX是GPIO14、GPIO13,把逻辑分析仪接到TX、RX引脚上,发现有时序,但是对不上。。。。
8、然后想到是不是初始化没有配置成功,然后看到app_init的i2c初始化是:
复制代码
感觉是初始配置出问题了,然后再查看文档:
因为demo里的程序是初始化成i2c0,所以要复用GPIO14、GPIO13:
查看hi_IO_set_func函数原型:
复制代码
然后改修i2c的复用配置为:
复制代码
然后下载,逻辑分析仪也出来了时序,hellowrld也出来了。
【总结】其实ssd1306已经不知道用过在多少个开发板上,记不清楚了。这次是第一次使用,对开发板的接线、GPIO的复用不是很清楚,所以搞了一晚上才搞定。希望我的帖子对大家有帮助。
一不小心又是十一点多了,最好祝大家六一快乐、晚安!
【目的】单片机一上来就得先自己学会搞定几个常用的外设,OLED是最常用的外设之一。
【步聚】1、本来想借用原来的hellowrld就可以轻松搞定的,可是我按照教程,就是编译通不过,所以只能手工来一步步搞定。
1、把文件app_demo_i2c_oled.c、code_tab.h、ssd1306_oled.h这三个文件拷到原来LED闪灯的程序src目录下。
2、然后把app_demo_i2c_oled.c下面的hi_void app_i2c_oled_demo(hi_void);
extern,然后再执行:
3、然后开启到配置下面开启i2c:
4、感觉成事俱备,只欠下载了,编译过无错误,下载到开发板,可是问题来了,怎么样都没有点亮。。。。。
5、排雷:点不亮就上逻辑分析仪,看到板有SDA、SLC,接上,可是怎么也没有时序,后面各种排险。。。。。。。。
6、后面拨下OLED板用万用表量SDA、SCL的跑线,经过一翻的折腾,终于找到SSD1306的SDA是接到了TX,SCL提接到RX上面。。。。
7、然后翻看原理图,TX、RX是GPIO14、GPIO13,把逻辑分析仪接到TX、RX引脚上,发现有时序,但是对不上。。。。
8、然后想到是不是初始化没有配置成功,然后看到app_init的i2c初始化是:
- hi_io_set_func(HI_IO_NAME_GPIO_0, HI_IO_FUNC_GPIO_0_I2C1_SDA);
- hi_io_set_func(HI_IO_NAME_GPIO_1, HI_IO_FUNC_GPIO_1_I2C1_SCL);
因为demo里的程序是初始化成i2c0,所以要复用GPIO14、GPIO13:
查看hi_IO_set_func函数原型:
- /**
- * @ingroup iot_io
- *
- * GPIO_13 pin function.CNcomment:GPIO_13管脚功能。CNend
- */
- typedef enum {
- HI_IO_FUNC_GPIO_13_SSI_DATA,
- HI_IO_FUNC_GPIO_13_UART0_TXD,
- HI_IO_FUNC_GPIO_13_UART2_RTS_N,
- HI_IO_FUNC_GPIO_13_SDIO_D0,
- HI_IO_FUNC_GPIO_13_GPIO,
- HI_IO_FUNC_GPIO_13_PWM4_OUT,
- HI_IO_FUNC_GPIO_13_I2C0_SDA,
- HI_IO_FUNC_GPIO_13_I2S0_WS,
- } hi_io_func_gpio_13;
- /**
- * @ingroup iot_io
- *
- * GPIO_14 pin function.CNcomment:GPIO_14管脚功能。CNend
- */
- typedef enum {
- HI_IO_FUNC_GPIO_14_SSI_CLK,
- HI_IO_FUNC_GPIO_14_UART0_RXD,
- HI_IO_FUNC_GPIO_14_UART2_CTS_N,
- HI_IO_FUNC_GPIO_14_SDIO_D1,
- HI_IO_FUNC_GPIO_14_GPIO,
- HI_IO_FUNC_GPIO_14_PWM5_OUT,
- HI_IO_FUNC_GPIO_14_I2C0_SCL,
- } hi_io_func_gpio_14;
- /* I2C MUX: */
- #ifdef CONFIG_I2C_SUPPORT
- /* I2C IO复用也可以选择3/4; 9/10,根据产品设计选择 */
- hi_io_set_func(HI_IO_NAME_GPIO_14, HI_IO_FUNC_GPIO_13_I2C0_SDA);
- hi_io_set_func(HI_IO_NAME_GPIO_13, HI_IO_FUNC_GPIO_14_I2C0_SCL);
- //hi_io_set_func(HI_IO_NAME_GPIO_0, HI_IO_FUNC_GPIO_0_I2C1_SDA);
- //hi_io_set_func(HI_IO_NAME_GPIO_1, HI_IO_FUNC_GPIO_1_I2C1_SCL);
- #endif
【总结】其实ssd1306已经不知道用过在多少个开发板上,记不清楚了。这次是第一次使用,对开发板的接线、GPIO的复用不是很清楚,所以搞了一晚上才搞定。希望我的帖子对大家有帮助。
一不小心又是十一点多了,最好祝大家六一快乐、晚安!
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
wi-fi
+关注
关注
14文章
2107浏览量
124315 -
HarmonyOS
+关注
关注
79文章
1967浏览量
30006 -
HiSpark
+关注
关注
1文章
156浏览量
6901
发布评论请先 登录
相关推荐
Wi-Fi 8要来了!未来Wi-Fi技术演进方向揭秘
产品销售中,虽然Wi-Fi 7产品的销量份额快速从年初的个位数百分比增长至14%,但Wi-Fi 6产品的销量份额依然稳定在60%左右。如果从存量设备来看,那么Wi-Fi 7路由器的占比将远远小于这个数。 智能手机等终端设备已
Wi-Fi 7与Wi-Fi 6E有什么区别
也许很多人还在考虑是否要将使用的Wi-Fi设备升级到Wi-Fi 6或Wi-Fi 6E,而这些标准的继任者却已经开始“登堂入室”了。Wi-Fi 7是新一代
未来的Wi-Fi路由器
转载自——钟林谈芯 没有创新就没有未来,Wi-Fi路由器也是如此。 进入2024年以后,Wi-Fi路由器市场变得更加艰难,利润大幅下滑,BOM成本价高于市场价,接不接订单,都陷入两难。 国内主芯片
DA16200 超低功耗 Wi-Fi 模块开发套件 Pro数据手册
电子发烧友网站提供《DA16200 超低功耗 Wi-Fi 模块开发套件 Pro数据手册.rar》资料免费下载
发表于 05-30 17:53
•1次下载
DA16200 超低功耗 Wi-Fi 模块开发套件数据手册
电子发烧友网站提供《DA16200 超低功耗 Wi-Fi 模块开发套件数据手册.rar》资料免费下载
发表于 05-30 17:13
•0次下载
验证物联网Wi-Fi HaLow用例的MM6108-EKH08开发套件来啦
验证物联网Wi-Fi HaLow用例的MM6108-EKH08开发套件来啦 MM6108-EKH08开发套件专为验证物联网Wi-Fi HaLow用例而设计。该
Wi-Fi的诞生与发展
短距离无线通信技术有Wi-Fi、ZigBee、蓝牙以及Z-Wave,今天我们先揭开Wi-Fi的神秘面纱。Chrent短距离无线通信技术——Wi-Fi过去的20多年,Wi-Fi靠着仅有的
Wi-Fi HaLow和传统Wi-Fi的区别
Wi-Fi HaLow和传统Wi-Fi的区别 Wi-Fi是一种无线网络技术,可以连接到互联网或局域网,为用户提供无线上网的便利。随着科技的发展和互联网的普及,Wi-Fi也在不断演进和
康普携手Wi-Fi联盟,RUCKUS Wi-Fi 7系列接入点成Wi-Fi
康普高级副总裁兼网络、智能蜂窝和安全解决方案总裁Bart Giordano对此表示: “我们非常荣幸能与Wi-Fi Alliance形成长期合作伙伴关系,将我们的RUCKUS Wi-Fi 7 接入点平台作为Wi-Fi CERT
BT Wi-Fi模式是否可以通过ModustoolBox对套件进行编程来实现?
想配置用于分析 CYW43439 的 CY8CPROTO-062S2-43439 原型开发套件。
浏览文档我无法弄清楚如何在不同的 Wi-Fi 和蓝牙模式(电源模式、连接模式等)下配置套件。
在
发表于 01-22 06:19
Wi-Fi 6和Wi-Fi 5之间有哪些区别呢?
Wi-Fi 6和Wi-Fi 5之间有哪些区别呢? Wi-Fi 6和Wi-Fi 5是无线局域网标准的两个版本,它们之间存在很多区别。Wi-Fi
什么是2.4 GHz Wi-Fi? 如何提升2.4 GHz Wi-Fi的性能?
什么是2.4 GHz Wi-Fi?2.4 GHz Wi-Fi的优势 2.4 GHz Wi-Fi的劣势 如何提升2.4 GHz Wi-Fi的性能?2.4 GHz和5 GHz
评论