IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 智能交通灯上报功能 -> 正文阅读

[嵌入式]智能交通灯上报功能

硬件环境搭建

软件介绍

  • 1.代码目录结构及相应接口功能介绍
  • vendor_hisilicon/hispark_pegasus/demo/oc_demo
    ├── app_demo_config.c           #
    ├── app_demo_config.h           #
    ├── app_demo_gl5537_1.c         # 
    ├── app_demo_i2c_oled.c         # 
    ├── app_demo_i2c_oled.h         # 
    ├── BUILD.gn                    # BUILD.gn文件由三部分内容(目标、源文件、头文件路径)构成,开发者根据需要填写,static_library中指定业务模块的编译结果,为静态库文件led_example,开发者根据实际情况完成填写。
    |                                 sources中指定静态库.a所依赖的.c文件及其路径,若路径中包含"//"则表示绝对路径(此处为代码根路径),若不包含"//"则表示相对路径。include_dirs中指定source所需要依赖的.h文件路径。
    ├── cjson_init.c                # 
    ├── app_demo_multi_sample.c     # 
    ├── app_demo_multi_sample.h     # 
    ├── app_demo_traffic_sample.c   # 
    ├── app_demo_traffic_sample.h   # 
    ├── hal_iot_adc.c               # 
    ├── hal_iot_gpio_ex.c           # 
    ├── iot_config.h                # 
    ├── iot_adc.h                   # 
    ├── iot_gpio_ex.h               # 
    ├── ssd1306_oled.h              # 
    ├── iot_hmac.c                  # 
    ├── iot_hmac.h                  # 
    ├── iot_log.c                   # 
    ├── iot_log.h                   # 
    ├── iot_main.c                  # 
    ├── iot_main.h                  # 
    ├── iot_profile.c               # 
    ├── iot_profile.h               # 
    ├── task_start.c                # 
    ├── iot_sta.c                   # 
    ├── wifi_connecter.c            # 
    └── wifi_connecter.h            # 
    

    复制

  • 2.华为云配置

2.1 注册华为云账号,打开华为云网址,点击注册后登陆。网址如下:https://www.huaweicloud.com/product/iothub.html。

2.2 登陆后,在搜索框中输入“IOTDA”,在弹出选项中选择“设备接入IOTDA”点击进去,再点击“立即使用或者免费试用”。

2.3 创建产品及相关属性,点击左边任务栏的“产品”同时选择控制台地址为“北京四”,然后点击最右上角的“创建产品”(产品名称可自定义)。注意:创建产品时如果所属空间为NULL,请先实名注册。

2.5 创建成功后,点击查看详情,点击“自定义模型”创建用户自己的模型:

2.6 用户根据自己需要自己定义,如为模型添加服务:“TrafficLight”,服务类型:“TrafficLight”,服务描述:“交通灯”,点击确定;新增属性为属性名称:“ControlModule”,数据类型:“String”,访问权限:“可读,可写”,长度:“255”,点击确定;新增命令为命令名称:“ControlModule”,新增参数:“TrafficLight”,数据类型:“String”,长度:“255”。

2.7 点击左边任务栏的“设备”,然后注册设备图,注册创建的产品,用户根据自己需要随意填写,填写完成后,可以看到设备状态显示为未注册。

2.8 华为云端的配置基本已经完成了,进入到设备查看信息。

  • 3.板端配置及编译

    • 将源码./vendor_hisilicon/hispark_pegasus/demo目录下的oc_demo整个文件夹及内容复制到源码./applications/sample/wifi-iot/app/下。
    .
    └── applications
        └── sample
            └── wifi-iot
                └── app
                    └──oc_demo
                       └── 代码   
    

    复制

    • 修改./applications/sample/wifi-iot/app/oc_demo/iot_config.h中CONFIG_AP_SSID,CONFIG_AP_PWD为WiFi名称和WiFi以及CONFIG_DEVICE_ID和CONFIG_DEVICE_PWD。
    #define CONFIG_AP_SSID  "xxx" // WIFI SSID
    #define CONFIG_AP_PWD "xxxxxx" // WIFI PWD
    #define CONFIG_DEVICE_ID  "xxxxx" //华为云上注册的设备ID
    #define CONFIG_DEVICE_PWD "xxxxx" //华为云上注册设备时密钥
    

    复制

    • 需要将2.6节创建模型属性及服务与./applications/sample/wifi-iot/app/oc_demo/app_demo_iot.c中下列字段参数保持一致。
    #define TRAFFIC_LIGHT_CMD_CONTROL_MODE      "ControlModule"  //属性
    #define TRAFFIC_LIGHT_YELLOW_ON_PAYLOAD     "YELLOW_LED_ON"  //添加命令参数
    

    复制

    • 修改源码./applications/sample/wifi-iot/app下的BUILD.gn文件,在features字段中增加索引,使目标模块参与编译。features字段指定业务模块的路径和目标,features字段配置如下。
    import("//build/lite/config/component/lite_component.gni")
    
    lite_component("app") {
        features = [
            "oc_demo:appDemoIot",
        ]
    }
    

    复制

    • 修改.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
    

    复制

    • 工程相关配置完成后,然后编译。
  • 4.烧录

    • 编译成功后,点击DevEco Home->配置工程->hi3861->upload_port->选择对应串口端口号->选择upload_protocol->选择burn-serial->点击save保存,在保存成功后点击upload进行烧录,出现connecting, please reset device…字样复位开发板等待烧录完成。
    • 烧录成功后,再次点击Hi3861核心板上的“RST”复位键,等待开发板的连接上wifi,连接成功后,华为云设备状态变成在线,设备开始向华为云上上报最新数据栏,同时串口会有如下打印。如下图所示。

设备->命令栏->同步命令下发->选择创建的命令属性->填入参数,这里下发“YELLOW_LED_ON”为例,下发成功后,板端会从红灯变为绿灯,设备同时串口会有如下打印。如下图所示。

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2022-04-09 18:36:52  更:2022-04-09 18:38:06 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 4:20:45-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码