0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【HarmonyOS HiSpark Wi-Fi IoT 套件试用连载】OLED——helloworld

开发板试用精选 来源:开发板试用 作者:电子发烧友论坛 2022-11-01 15:12 次阅读
本文来源电子发烧友社区,作者:华仔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目录下。
poYBAGKXe3aAI4eBAAIqZXs1B5Q236.png
2、然后把app_demo_i2c_oled.c下面的hi_void app_i2c_oled_demo(hi_void);
extern,然后再执行:
pYYBAGKXfK6AdVOhAAD1NMq_wY8864.png
3、然后开启到配置下面开启i2c:
poYBAGKXfQKAKexjAAHuehq9C94964.png
4、感觉成事俱备,只欠下载了,编译过无错误,下载到开发板,可是问题来了,怎么样都没有点亮。。。。。
5、排雷:点不亮就上逻辑分析仪,看到板有SDA、SLC,接上,可是怎么也没有时序,后面各种排险。。。。。。。。
6、后面拨下OLED板用万用表量SDA、SCL的跑线,经过一翻的折腾,终于找到SSD1306的SDA是接到了TX,SCL提接到RX上面。。。。
7、然后翻看原理图,TX、RX是GPIO14、GPIO13,把逻辑分析仪接到TX、RX引脚上,发现有时序,但是对不上。。。。
8、然后想到是不是初始化没有配置成功,然后看到app_init的i2c初始化是:
  1. hi_io_set_func(HI_IO_NAME_GPIO_0, HI_IO_FUNC_GPIO_0_I2C1_SDA);
  2. hi_io_set_func(HI_IO_NAME_GPIO_1, HI_IO_FUNC_GPIO_1_I2C1_SCL);
复制代码
感觉是初始配置出问题了,然后再查看文档:
poYBAGKXfsOACgsUAAC68yN-CkU847.png
因为demo里的程序是初始化成i2c0,所以要复用GPIO14、GPIO13:
查看hi_IO_set_func函数原型:
  1. /**
  2. * @ingroup iot_io
  3. *
  4. * GPIO_13 pin function.CNcomment:GPIO_13管脚功能。CNend
  5. */
  6. typedef enum {
  7. HI_IO_FUNC_GPIO_13_SSI_DATA,
  8. HI_IO_FUNC_GPIO_13_UART0_TXD,
  9. HI_IO_FUNC_GPIO_13_UART2_RTS_N,
  10. HI_IO_FUNC_GPIO_13_SDIO_D0,
  11. HI_IO_FUNC_GPIO_13_GPIO,
  12. HI_IO_FUNC_GPIO_13_PWM4_OUT,
  13. HI_IO_FUNC_GPIO_13_I2C0_SDA,
  14. HI_IO_FUNC_GPIO_13_I2S0_WS,
  15. } hi_io_func_gpio_13;
  16. /**
  17. * @ingroup iot_io
  18. *
  19. * GPIO_14 pin function.CNcomment:GPIO_14管脚功能。CNend
  20. */
  21. typedef enum {
  22. HI_IO_FUNC_GPIO_14_SSI_CLK,
  23. HI_IO_FUNC_GPIO_14_UART0_RXD,
  24. HI_IO_FUNC_GPIO_14_UART2_CTS_N,
  25. HI_IO_FUNC_GPIO_14_SDIO_D1,
  26. HI_IO_FUNC_GPIO_14_GPIO,
  27. HI_IO_FUNC_GPIO_14_PWM5_OUT,
  28. HI_IO_FUNC_GPIO_14_I2C0_SCL,
  29. } hi_io_func_gpio_14;
复制代码
然后改修i2c的复用配置为:
  1. /* I2C MUX: */
  2. #ifdef CONFIG_I2C_SUPPORT
  3. /* I2C IO复用也可以选择3/4; 9/10,根据产品设计选择 */
  4. hi_io_set_func(HI_IO_NAME_GPIO_14, HI_IO_FUNC_GPIO_13_I2C0_SDA);
  5. hi_io_set_func(HI_IO_NAME_GPIO_13, HI_IO_FUNC_GPIO_14_I2C0_SCL);
  6. //hi_io_set_func(HI_IO_NAME_GPIO_0, HI_IO_FUNC_GPIO_0_I2C1_SDA);
  7. //hi_io_set_func(HI_IO_NAME_GPIO_1, HI_IO_FUNC_GPIO_1_I2C1_SCL);
  8. #endif
复制代码
然后下载,逻辑分析仪也出来了时序,hellowrld也出来了。
poYBAGKXgFyAfL93AAnye0wXHmU034.jpg
【总结】其实ssd1306已经不知道用过在多少个开发板上,记不清楚了。这次是第一次使用,对开发板的接线、GPIO的复用不是很清楚,所以搞了一晚上才搞定。希望我的帖子对大家有帮助。
一不小心又是十一点多了,最好祝大家六一快乐、晚安!
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • wi-fi
    +关注

    关注

    14

    文章

    2066

    浏览量

    123802
  • HarmonyOS
    +关注

    关注

    79

    文章

    1951

    浏览量

    29785
  • HiSpark
    +关注

    关注

    1

    文章

    156

    浏览量

    6874
收藏 人收藏

    评论

    相关推荐

    最典型的3家Wi-Fi Halow芯片企业

    Wi-Fi Halow是Wi-Fi联盟推出的专门面向物联网市场的标准。
    的头像 发表于 08-30 09:58 646次阅读
    最典型的3家<b class='flag-5'>Wi-Fi</b> Halow芯片企业

    未来的Wi-Fi路由器

    转载自——钟林谈芯 没有创新就没有未来,Wi-Fi路由器也是如此。 进入2024年以后,Wi-Fi路由器市场变得更加艰难,利润大幅下滑,BOM成本价高于市场价,接不接订单,都陷入两难。 国内主芯片
    的头像 发表于 06-20 15:32 301次阅读

    DA16200 超低功耗 Wi-Fi 模块开发套件 Pro数据手册

    电子发烧友网站提供《DA16200 超低功耗 Wi-Fi 模块开发套件 Pro数据手册.rar》资料免费下载
    发表于 05-30 17:53 1次下载
    DA16200 超低功耗 <b class='flag-5'>Wi-Fi</b> 模块开发<b class='flag-5'>套件</b> Pro数据手册

    DA16200 超低功耗 Wi-Fi 模块开发套件数据手册

    电子发烧友网站提供《DA16200 超低功耗 Wi-Fi 模块开发套件数据手册.rar》资料免费下载
    发表于 05-30 17:13 0次下载
    DA16200 超低功耗 <b class='flag-5'>Wi-Fi</b> 模块开发<b class='flag-5'>套件</b>数据手册

    华为获得全球首个国际Wi-Fi联盟WFA企业级Wi-Fi 7认证!

    Wi-Fi联盟已发布Wi-Fi 7认证标准,华为是第一批送测厂商,获得业界首个企业级Wi-Fi 7 的Wi-Fi联盟官方认证。
    的头像 发表于 04-28 10:17 482次阅读
    华为获得全球首个国际<b class='flag-5'>Wi-Fi</b>联盟WFA企业级<b class='flag-5'>Wi-Fi</b> 7认证!

    验证物联网Wi-Fi HaLow用例的MM6108-EKH08开发套件来啦

    验证物联网Wi-Fi HaLow用例的MM6108-EKH08开发套件来啦 MM6108-EKH08开发套件专为验证物联网Wi-Fi HaLow用例而设计。该
    的头像 发表于 04-11 12:01 1492次阅读
    验证物联网<b class='flag-5'>Wi-Fi</b> HaLow用例的MM6108-EKH08开发<b class='flag-5'>套件</b>来啦

    Wi-Fi 7与Wi-Fi 6的相关知识科普

    科普:Wi-Fi 7 vs. Wi-Fi 6,青出于蓝
    的头像 发表于 03-12 10:59 559次阅读
    <b class='flag-5'>Wi-Fi</b> 7与<b class='flag-5'>Wi-Fi</b> 6的相关知识科普

    Wi-Fi的诞生与发展

    短距离无线通信技术有Wi-Fi、ZigBee、蓝牙以及Z-Wave,今天我们先揭开Wi-Fi的神秘面纱。Chrent短距离无线通信技术——Wi-Fi过去的20多年,Wi-Fi靠着仅有的
    的头像 发表于 03-07 08:26 928次阅读
    <b class='flag-5'>Wi-Fi</b>的诞生与发展

    Wi-Fi HaLow和传统Wi-Fi的区别

    Wi-Fi HaLow和传统Wi-Fi的区别  Wi-Fi是一种无线网络技术,可以连接到互联网或局域网,为用户提供无线上网的便利。随着科技的发展和互联网的普及,Wi-Fi也在不断演进和
    的头像 发表于 02-02 15:28 834次阅读

    康普携手Wi-Fi联盟,RUCKUS Wi-Fi 7系列接入点成Wi-Fi

     康普高级副总裁兼网络、智能蜂窝和安全解决方案总裁Bart Giordano对此表示: “我们非常荣幸能与Wi-Fi Alliance形成长期合作伙伴关系,将我们的RUCKUS Wi-Fi 7 接入点平台作为Wi-Fi CERT
    的头像 发表于 01-23 14:10 601次阅读

    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
    的头像 发表于 12-09 16:09 1875次阅读

    什么是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
    的头像 发表于 11-27 17:09 2120次阅读

    什么是Wi-Fi 6?什么是Wi-Fi 6E?什么是最适合我的应用的?

    自 1999 年 Wi-Fi 联盟成立以来,Wi-Fi 技术不断进步,以满足对更快速度和支持更多设备的日益增长的需求。
    的头像 发表于 11-20 09:23 965次阅读
    什么是<b class='flag-5'>Wi-Fi</b> 6?什么是<b class='flag-5'>Wi-Fi</b> 6E?什么是最适合我的应用的?

    摩尔斯微电子与卓越电子合作推出 Wi-Fi HaLow 物联网解决方案

    晶圆厂半导体公司摩尔斯微电子(Morse Micro),宣布与卓越电子(AsiaRF Corp)合作推出最新的 Wi-Fi HaLow IoT 解决方案。产品阵容包括 Wi-Fi HaLow 物联网
    发表于 10-08 15:27 451次阅读
    摩尔斯微电子与卓越电子合作推出 <b class='flag-5'>Wi-Fi</b> HaLow 物联网解决方案