更多内容请访问:与华为官方共建的鸿蒙技术社区https://ost.51cto.com硬件环境搭建硬件要求:Hi3861V100核心板、扩展板、OLED板、红绿灯板;硬件结构及组网图如下图所示。Hi3861V100核心板参考:HiSpark_WiFi_IoT智能开发包_原理图硬件文档\SchematicDiagram\HiSpark_WiFi-IoT_Hi3861_CH340G_VER.B.pdf。扩展板参考:HiSpark_WiFi_IoT智能开发包_原理图硬件文档\SchematicDiagram\HiSpark_WiFi-IoT_Hi3861_CH340G_VER.B.pdf。OLED板参考:HiSpark_WiFi_IoTSmartDevelopmentKit_SchematicHardwareDocumentation\SchematicDiagram\HiSpark_WiFi_IoT_OLED_VER.A.pdf。红绿灯板硬件原理图参考:HiSpark_WiFi_IoT智能开发包_原理图硬件文档\SchematicDiagram\HiSpark_WiFi_IoT_SSL_VER.A.pdf。软件介绍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中指定业务模块的编译结果为static库文件led_example,开发者根据实际情况填写。|静态库.a依赖的.c文件及其路径在sources中指定。如果路径中包含“//”,则表示绝对路径(这里是代码根路径),如果不包含“//”,则表示相对路径。include_dirs指定源需要依赖的.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.华为云配置(1)注册华为云账号,打开华为云网站,点击注册并登录,网址如下:https://www.huaweicloud。com/product/iothub.html。(2)登录后,在搜索框中输入“IOTDA”,在弹出的选项中选择“DeviceconnectedtoIOTDA”,点击进入,然后点击“Usenowortryforfree”。(3)创建产品及相关属性,点击左侧任务栏“产品”,控制台地址选择“北京4”,然后点击右上角“创建产品”(产品名称可自定义)).注意:如果创建产品时产品所属空间为NULL,请先实名注册。(4)创建成功后,点击查看详情,点击“自定义模型”创建用户自己的模型:(5)用户可以根据自己的需要进行定义,比如在模型中添加服务:“交通灯”,服务类型:“交通灯”,服务描述:“交通灯”,点击确定;添加属性名:“ControlModule”,数据类型:“String”,访问权限:“可读,可写”,长度:“255”,点击确定;新新命令为命令名称:“ControlModule”,新参数:“TrafficLight”,数据类型:“String”,长度:“255”。(6)点击左侧任务栏的“设备”,然后注册设备图,注册创建的产品,用户可以根据自己的需要填写。填写完成后,可以看到设备状态显示为未注册。(7)华为云的配置基本完成。进入设备查看信息。3.板卡配置与编译将源码./vendor_hisilicon/hispark_pegasus/demo目录下oc_demo的整个文件夹和内容复制到源码./applications/sample/wifi-iot/app/下。...名称和WiFi以及CONFIG_DEVICE_ID和CONFIG_DEVICE_PWD。#defineCONFIG_AP_SSID"xxx"//WIFISSID#defineCONFIG_AP_PWD"xxxxxx"//WIFIPWD#defineCONFIG_DEVICE_ID"xxxxx"//华为云注册的设备ID#defineCONFIG_DEVICE_PWD"xxxxx"//华为云注册设备时的密码key需要和./applications/sample/wifi-iot/app/oc_demo/app_demo_iot.c中的以下字段参数一致,才能创建2.6节中的模型属性和服务。#defineTRAFFIC_LIGHT_CMD_CONTROL_MODE"ControlModule"//属性#defineTRAFFIC_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/配置/usr_config.mk文件。打开此配置文件中的I2C和PWM驱动程序宏。搜索字段CONFIG_I2C_SUPPORT并打开I2C,PWM。配置如下:#CONFIG_I2C_SUPPORTisnotsetCONFIG_I2C_SUPPORT=y#CONFIG_PWM_SUPPORTisnotsetCONFIG_PWM_SUPPORT=y工程相关配置完成后,进行编译。4、烧录编译成功后,点击DevEcoHome->ConfigurationProject->hi3861->upload_port->选择对应的串口号->选择upload_protocol->选择burn-serial->点击save保存,完成后点击上传savingsuccessfully进行烧录,会出现connecting,pleaseresetdevice...字样重置开发板,等待烧录完成。烧录成功后,再次点击Hi3861核心板上的“RST”复位按钮,等待开发板连接wifi。连接成功后,华为云设备状态变为在线,设备开始向华为云上报最新的数据列。串口会打印如下。如下所示。设备->命令栏->发送同步命令->选择创建的命令属性->填写参数。这里以发出“YELLOW_LED_ON”为例。发货成功后,板端会由红变绿,同时设备串口会打印如下。如下所示。更多信息请访问:与华为官方共建的鸿蒙技术社区https://ost.51cto.com
