OpenHarmony开源社区
直播中

lingxin-yuhe

11年用户 341经验值
擅长:嵌入式技术,处理器/DSP,接口/总线/驱动
私信 关注
[经验]

【HarmonyOS HiSpark Wi-Fi IoT 套件试用连载】+修改代码并编译下载

environmentDemo

本经验贴有四个步骤:

  1. 修改拉下来的代码;
  2. 编译代码;
  3. 安装CH340驱动;
  4. 下载运行。

1、修改拉下来的代码,参考environment demo下的readme.md。

软件介绍

  • 1.代码目录结构及相应接口功能介绍

vendor_hisilicon/hispark_pegasus/demo/environment_demo

├── app_demo_aht20.c #

├── app_demo_aht20.h #

├── app_demo_config.c #

├── app_demo_config.h #

├── app_demo_environment.c #

├── app_demo_environment.h #

├── app_demo_gl5537_1.c #

├── app_demo_i2c_oled.c #

├── app_demo_i2c_oled.h #

├── app_demo_mq2.c #

├── app_demo_mq2.h #

├── app_demo_multi_sample.c #

├── app_demo_multi_sample.h #

├── BUILD.gn # BUILD.gn文件由三部分内容(目标、源文件、头文件路径)构成,开发者根据需要填写,static_library中指定业务模块的编译结果,为静态库文件led_example,开发者根据实际情况完成填写。

| sources中指定静态库.a所依赖的.c文件及其路径,若路径中包含"//"则表示绝对路径(此处为代码根路径),若不包含"//"则表示相对路径。include_dirs中指定source所需要依赖的.h文件路径。

├── hal_iot_adc.c #

├── hal_iot_gpio_ex.c #

├── iot_adc.h #

├── iot_gpio_ex.h #

├── ssd1306_oled.h #

└── task_start.c #

  • 2.工程修改

    • 将源码./vendor/hisilicon/hispark_pegasus/demo目录下的environment_demo整个文件夹及内容复制到源码./applications/sample/wifi-iot/app/下。
    .
    └── applications
        └── sample
            └── wifi-iot
                └── app
                    └── environment_demo
                       └── 代码
    
    • 修改源码./applications/sample/wifi-iot/app/BUILD.gn文件,在features字段中增加索引,使目标模块参与编译。features字段指定业务模块的路径和目标,features字段配置如下。
    import("//build/lite/config/component/lite_component.gni")
    
    lite_component("app") {
        features = [
            "environment_demo:appDemoEnvironment",
        ]
    }
    
    • 修改.device/soc/hisilicon/hi3861v100/sdk_liteos/build/config/usr_config.mk文件。在这个配置文件中打开I2C,PWM驱动宏。搜索字段CONFIG_I2C_SUPPORT ,并打开I2C,PWM。配置如下:
    # CONFIG_I2C_SUPPORT is not set
    CONFIG_I2C_SUPPORT=y
    # CONFIG_PWM_SUPPORT is not set
    CONFIG_PWM_SUPPORT=y
    
    • 工程相关配置完成后,然后进入docker编译。

    2、docker环境编译。

    • 进入源码目录执行

    docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:1.0.0

    • 配置编译

      hb set
      .
      
    • 编译

      hb build -f

    3、安装CH340驱动

    • 浏览器输入www.wch.cn,进入沁恒微电子官网。搜索CH340找到驱动,下载进行安装。

      ch340驱动.png

    • 查看串口是否加载。

      设备管理器.png

4、下载运行

  • 编译成功后,点击DevEco Home->配置工程->hi3861->upload_port->选择对应串口端口号->选择upload_protocol->选择hiburn-serial->点击save保存。

    burn0.png

  • 在保存成功后点击upload进行烧录,出现connecting, please reset device..字样复位开发板等待烧录完成。

    upload.png

  • 烧录成功后,再次点击Hi3861核心板上的“RST”复位键,此时开发板的系统会运行起来。

    com100.png

  • 运行结果:environment_demo共有4种模式,分别是Environment Monitoring模式: 当进入环境监测demo,初始状态是Environment Monitoring,主要用来实时显示外部环境的温湿度以及可燃气体的浓度。

    environmentdemo.jpg
    OLED显示屏的最后一行文字的含义:T:Temperature温度,H:Humidity湿度,CG:Combustible Gas 可燃气体。温度、湿度和可燃气体值;

    Temperature Mode模式: 当再次按下左键S1时,会从Environment Monitoring模式跳到Temperature Mode模式,此模式下的OLED屏上只会显示实时的温度,通过温度传感器来实时监测外界环境的温度数据;

    temperature.jpg

    Humidity Mode模式: 当再次按下左键S1时,会从Temperature Mode模式跳转到Humiditymode模式,此模式下的OLED屏上只会显示实时的湿度,通过湿度传感器来实时监测外界环境的湿度数据;

    humidity.jpg

    Combustible Gas Mode模式: 当再次按下左键S1时,会从Humidity mode模式跳转到Combustible Gas Mode模式,此模式下的OLED屏上只会显示实时可燃气体浓度数据,通过可燃气体传感器来实时监测外界环境的可燃气体浓度数据。此时如果再按一下左键S1就会跳到Environment Monitoring界面。

    gas.jpg

    因为家里没有可燃气体,因此没有数值。

回帖(4)

玩硬件的女孩纸

2022-5-30 18:22:43
步骤很详细!点个赞!
举报

jf_65020769

2022-6-1 14:55:36
咱就是这个板子贵吗?看起来很不错哦~
1 举报

陈皓雷

2022-6-2 10:30:26
虽然作为技术小白看不懂,但貌似很厉害的样子
1 举报
  • lingxin-yuhe: 都是学习,只是学习的方法需要找到,需要找到组织才能进步的更快。

温暖镜头

2022-8-15 18:43:35
前来报到学习干货
举报

更多回帖

发帖
×
20
完善资料,
赚取积分