如何试用Harmony OS控制外设——读取传感器?

相关知识点

本节涉及Harmony OS外设相关接口:

  • ADC接口
    • wifiiot_adc.h 头文件
unsigned int AdcRead(WifiIotAdcChannelIndex channel, unsigned short *data, WifiIotAdcEquModelSel equModel,
                     WifiIotAdcCurBais curBais, unsigned short rstCnt);
  • I2C接口
    • wifiiot_i2c.h头文件
    • I2cInit/I2cDeinit/I2cRead/I2cWrite

外设与主控芯片引脚的对应关系

  • HiSpark Wi-Fi IoT 开发套件 炫彩灯板
    • 三色LED——PWM占空比控制颜色
      • GPIO10: 红
      • GPIO11: 绿
      • GPIO12: 蓝
    • 光敏电阻——ADC采集值和电压对应,电压和电阻对应,电阻和光照强度对应
      • GPIO09: ADC4
    • 人体红外传感器——ADC采集值反应是否有人靠近
      • GPIO07: ADC3
  • HiSpark Wi-Fi IoT 开发套件 OLED屏板
    • OLED屏——SSD1306芯片,I2C总线, 地址 0x78
      • GPIO13: I2C0_SDA
      • GPIO14: I2C0_SCL
    • 两个按键——ADC,接在同一个GPIO引脚上,通过电压区分
      • GPIO05: ADC2
  • HiSpark Wi-Fi IoT 开发套件 环境检测板
    • 蜂鸣器——PWM控制声音的评率和音量
      • GPIO09: PWM0
    • MQ2 燃气传感器——ADC读取模拟值
      • GPIO11: ADC5
    • AHT20 温湿度传感器——I2C接口通信,地址 0x38
      • GPIO13: I2C0_SDA
      • GPIO14: I2C0_SCL
  1. 将此目录下的所有.c文件和BUILD.gn文件拷贝到,openharmony源码的applicationssamplewifi-iotappiothardware目录下,
  2. 修改openharmony源码的applicationssamplewifi-iotappBUILD.gn文件,将其中的 features 改为:
    features = [
        "iothardware:sensing_demo",
    ]
  1. 修改applicationssamplewifi-iotappiothardwareBUILD.gn 中的solo_demo下的sources属性,放开其中的的一个文件的注释,以开启选择对应功能文件;
    sources = [
        "colorful_light_demo.c",
        # "environment_demo.c",
        # "oled_demo.c", "oled_ssd1306.c"
    ]
  1. 在openharmony源码顶层目录执行:python build.py wifiiot

报错解决

  1. 编译过程中报错:undefined reference to hi_pwm_init 等几个 hi_pwm_开头的函数,
    • 原因: 因为默认情况下,hi3861_sdk中,PWM的CONFIG选项没有打开
    • 解决: 修改vendorhisihi3861hi3861buildconfigusr_config.mk文件中的CONFIG_PWM_SUPPORT行:
      • # CONFIG_PWM_SUPPORT is not set修改为CONFIG_PWM_SUPPORT=y
    • 原因: 因为默认情况下,hi3861_sdk中,I2C的CONFIG选项没有打开
    • 解决: 修改vendorhisihi3861hi3861buildconfigusr_config.mk文件中的CONFIG_I2C_SUPPORT行:
阅读全文
下载说明:
1、本站所有资源均从互联网上收集整理而来,仅供学习交流之用,因此不包含技术服务请大家谅解!
2、本站不提供任何实质性的付费和支付资源,所有需要积分下载的资源均为网站运营赞助费用或者线下劳务费用!
3、本站所有资源仅用于学习及研究使用,您必须在下载后的24小时内删除所下载资源,切勿用于商业用途,否则由此引发的法律纠纷及连带责任本站和发布者概不承担!
4、本站站内提供的所有可下载资源,本站保证未做任何负面改动(不包含修复bug和完善功能等正面优化或二次开发),但本站不保证资源的准确性、安全性和完整性,用户下载后自行斟酌,我们以交流学习为目的,并不是所有的源码都100%无错或无bug!如有链接无法下载、失效或广告,请联系客服处理!
5、本站资源除标明原创外均来自网络整理,版权归原作者或本站特约原创作者所有,如侵犯到您的合法权益,请立即告知本站,本站将及时予与删除并致以最深的歉意!
6、如果您也有好的资源或教程,您可以投稿发布,成功分享后有站币奖励和额外收入!
7、如果您喜欢该资源,请支持官方正版资源,以得到更好的正版服务!
8、请您认真阅读上述内容,注册本站用户或下载本站资源即您同意上述内容!
原文链接:https://www.1024c.cn/archives/21267,转载请注明出处。
0

评论0

显示验证码
没有账号?注册  忘记密码?