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
    +关注

    关注

    15

    文章

    2382

    浏览量

    128910
  • HarmonyOS
    +关注

    关注

    80

    文章

    2146

    浏览量

    35589
  • HiSpark
    +关注

    关注

    1

    文章

    156

    浏览量

    7689
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Wi-Fi模块选型指南 | 低功耗蓝牙/Wi-Fi 6模块推荐 | 物联网设备集成攻略

    物联网的快速发展,Wi-Fi技术的成熟的情况下,越来越多的场景需要用到Wi-Fi来无线传输数据,尤其是移动设备中,怎么再设备中选择合适的Wi-Fi模块呢?下面我们来介绍下Wi-Fi模块
    的头像 发表于 12-09 11:27 372次阅读
    <b class='flag-5'>Wi-Fi</b>模块选型指南 | 低功耗蓝牙/<b class='flag-5'>Wi-Fi</b> 6模块推荐 | 物联网设备集成攻略

    浅谈Wi-Fi 6E与Wi-Fi 7的关键器件——BAW滤波器新技术

    作者: Qorvo 亚太区无线连接事业部高级行销经理林健富   2020年1月,Wi-Fi联盟正式宣布开放6GHz频段(5925MHz-7125MHz),并将其命名为Wi-Fi 6E。2020年4月
    发表于 09-19 18:29 1326次阅读
    浅谈<b class='flag-5'>Wi-Fi</b> 6E与<b class='flag-5'>Wi-Fi</b> 7的关键器件——BAW滤波器新技术

    如何更新 NuMaker IoT 板上的 Wi-Fi 模块固件?

    更新 NuMaker IoT 板上的 Wi-Fi 模块固件
    发表于 09-04 08:28

    基于 SSID 的 Wi-Fi 定位:与其他定位服务的性能比较

    随着 nRF7000 Wi-Fi 协同 IC 的推出,我们现在可以提供具有 Wi-Fi、蜂窝物联网和 GNSS 功能的完整硅到云定位解决方案。nRF7000 针对 Wi-Fi 网络扫描进行了优化
    发表于 08-31 21:01

    LitePoint Wi-Fi测试软件减轻客户设计负担

    Wi-Fi 7于一年多前获得Wi-Fi联盟认证以来,作为最新一代通信技术,Wi-Fi正逐步成为用户实现无所不在无线连接的新选择。随着每一代Wi-Fi信号复杂性的提升,建议将硬件测试纳
    的头像 发表于 08-06 15:34 902次阅读
    LitePoint <b class='flag-5'>Wi-Fi</b>测试软件减轻客户设计负担

    有没有什么修复方法可以确保 AP 模式下的 Wi-Fi 和 BLE 连接同时正常工作?

    我正在使用 CYBSYSKIT DEV 01 套件。我尝试在 AP 模式下打开 Wi-Fi 并宣传 BLE。我可以宣传 SoftAP 和 BLE。但是,我无法从中央设备连接到 BLE。它可以立即连接并断开连接。有没有什么修复方法可以确保 AP 模式下的
    发表于 07-17 06:13

    科普|公司的Wi-Fi,为什么这么慢?

    大家在公司上班,经常会使用到Wi-Fi。最近这几年,随着时代的发展,高清视频会议等大带宽网络应用越来越普遍。而公司的网络,却非常不给力,频繁卡顿,严重影响使用体验。哪怕IT的同事已经把网络优化得很
    的头像 发表于 06-20 06:06 1067次阅读
    科普|公司的<b class='flag-5'>Wi-Fi</b>,为什么这么慢?

    Wi-Fi 8:开启极高可靠性 (UHR) 连接的新纪元——1

    英国作家狄更斯在《双城记》的开头写道:“这是最好的时代,也是最坏的时代。” 这句话若套用在现今Wi-Fi 的市场现状,何尝不是惊人的相似? 怎么说呢?Wi-Fi 从被发明至今已经经过了20多年的迭代
    发表于 06-13 11:09

    Wi-Fi HaLow如何突破传统Wi-Fi性能瓶颈?

    视频推荐在万物互联的时代,传统Wi-Fi在覆盖范围、功耗、连接数上渐显不足。而Wi-FiHaLow的诞生,正在用黑科技打破传统Wi-Fi的性能瓶颈!今天,我们一起来探究Wi-FiHaL
    的头像 发表于 04-22 11:38 731次阅读
    <b class='flag-5'>Wi-Fi</b> HaLow如何突破传统<b class='flag-5'>Wi-Fi</b>性能瓶颈?

    基于 Wi-Fi 的定位服务

    以下捕获使用 location_wifi_get 函数请求 Wi-Fi 定位服务。该事件的总功耗为 125.85mC,日志显示精确度为 30.0m。 Got location: method
    发表于 04-17 15:16

    nRF Cloud Wi-Fi 定位服务

    、Predictive-GPS、Single-Cell、Multi-Cell 和 Wi-Fi 定位。通过利用 nRF Cloud 的优化定位算法,基于 Nordic SoC 和 模组的产品可在定位用例
    发表于 04-17 15:07

    Wi-Fi 定位服务

    Wi-Fi 是一种著名的无线网络技术,用于设备的局域网和互联网接入。Wi-Fi 通过 Wi-Fi 网络为家庭、办公室和学校等环境提供便捷的无线互联网接入服务。 Wi-Fi 定位是一种
    发表于 04-17 15:01

    Wi-Fi 7 与频率控制的关系

    作者:Poornima Apte 投稿人:DigiKey 北美编辑 2024-12-18 Wi-Fi 需要使用一定范围的无线电频率才能让设备进行通信拨号。多年来,Wi-Fi 一直使用 2.4 GHz
    的头像 发表于 01-25 14:45 1203次阅读
    <b class='flag-5'>Wi-Fi</b> 7 与频率控制的关系

    华为海思正式进入Wi-Fi FEM赛道?

    大家都知道了,2018年11 月离开锐迪科(RDA),前往福建晋江创立三伍微,专注于Wi-Fi射频前端芯片,从路由器Wi-Fi FEM,到手机Wi-Fi FEM,再到IoT FEM全覆
    发表于 12-11 17:42

    摩尔斯微电子发布Wi-Fi HaLow评估套件,加速物联网开发

    近日,全球领先的Wi-Fi HaLow解决方案提供商摩尔斯微电子正式推出一款开创性的评估套件——MM6108-EKH05。这款完全整合的开发平台,旨在推动各行业物联网解决方案的快速发展
    的头像 发表于 12-11 13:40 1054次阅读