成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

HarmonyOS Connect設備開發之南北打通-碰一碰互動

系統 OpenHarmony
實現碰一碰連接、控制其移動、幫你開風扇、開門、澆水,甚至可以語音交互等,還有一些有趣的配件可供玩耍。總之HarmonyOS/OpenHarmony 萬物互聯,實現所想。

??想了解更多關于開源的內容,請訪問:??

??51CTO 開源基礎軟件社區??

??https://ost.51cto.com??

一、南向開發-風扇業務邏輯

可以使用開關量或者模擬量輸出控制風扇。業務代碼如下【完整剛才見附件smart_fan_iot.zip】:

static void WinderInit(void)
{
IoTGpioInit(8);
hi_io_set_func(8, HI_IO_FUNC_GPIO_8_PWM1_OUT);
IoTPwmInit(1); // GPIO8 初始化為PWM 1 輸出 可控速度
IoTGpioInit(FAN_IO1);
hi_io_set_func(FAN_IO1, HI_IO_FUNC_GPIO_2_GPIO);
IoTGpioSetDir(FAN_IO1, IOT_GPIO_DIR_OUT);
IoTGpioSetOutputVal(FAN_IO1,IOT_GPIO_VALUE0); //GPIO2 初始化為輸出 0 開關量
}
static void WinderLoop(void)
{
while (1)
{
if (strcmp(app_msg, "turn on fan") == 0)
{
IoTGpioSetOutputVal(FAN_IO1,IOT_GPIO_VALUE1);
IoTPwmStart(1, 95, 80000); // turn on fan
printf("turn on fan \r\n");
}
if (strcmp(app_msg, "turn off fan") == 0)
{
IoTGpioSetOutputVal(FAN_IO1,IOT_GPIO_VALUE0);
IoTPwmStop(1);// turn off fan
printf("turn off fan \r\n");
}
if (strcmp(app_msg, "lower speed") == 0)
{
IoTPwmStart(1, 40, 80000);
printf("lower speed \r\n");
}
if (strcmp(app_msg, "medium speed") == 0)
{
IoTPwmStart(1, 75, 80000);
printf("medium speed \r\n");
}
osDelay(WINDER_LOOP_DELAY);
}
}

控制原理圖:

二、Smart_fan演示

視頻:??smart fan demo??。

三、碰一碰機器人demo

到此,我們打通碰一碰開發道路,接下來可以實現更多有趣的項目。例如控制臺燈、機器人。

下面展示本人前不久開發出的桌面機器人MRobot:

可以實現碰一碰連接、控制其移動、幫你開風扇、開門、澆水,甚至可以語音交互等,還有一些有趣的配件可供玩耍。總之HarmonyOS/OpenHarmony 萬物互聯,實現所想。

基本開發流程和smart fan類似。

控制UI核心代碼:

 //運動控制
Forward(){
this.front_img='/common/images/up0.png';
this.work_status ="萌萌退下";
this.talk_msg = "F";
this.sendMessage();
},
Backward(){
this.front_img='/common/images/down0.png';
this.work_status ="萌萌沖沖沖";
this.talk_msg = "B";
this.sendMessage();
},
//表情聊天
Emoji_smile(){
this.emoji ="微笑";
this.talk_msg = "1";
// this.sendMessage();
},
Emoji_wao(){
this.emoji ="哇哦";
this.talk_msg = "2";
//this.sendMessage();
},
//秒控設備
Control_fan(e)
{
var ret=0;
console.log(e.checked);
if( e.checked){
this.talk_msg = "turn on fan";
this.sendMessage();
this.fan="/common/images/fanOn.png";
prompt.showToast({
message: "打開風扇"
});
}
else{
this.fan ="/common/images/fanOff.png";
this.talk_msg = "turn off fan";
this.sendMessage();
prompt.showToast({
message: "關閉風扇"
});
};
},
sendMessage(){
var ret =1;
var message = this.talk_msg;
let commonInfo = {
sessionId: getApp(this).ConfigParams.deviceInfo.sessionId
};
getApp(this).NetConfig.sendMessage(commonInfo, message, (result)=>{
if(result.code==0)
{
prompt.showToast({
message: "發送成功",
duration: 1000,
});
ret =0;}
else
{ prompt.showToast({
message: "發送失敗",
duration: 1000,
});
ret= -1;};
});
if(ret==0)
{
return 0;
}
else return -1;
},

設備側接收數據代碼:

static void MRobotProcessAppMessage(const char *data, int data_len)
{
if (data_len != MESSAGE_LEN)
{
strcpy(app_msg, data);
// app_msg=data;
printf("------app_msg:%s \r\n", app_msg);
printf("----- data:%s\r\n", data);
WINERR("data len invalid! \n");
return;
}
}
static int MRobotNetEventHandler(NET_EVENT_TYPE event, void *data)
{
switch (event)
{
case NET_EVENT_CONNECTTED: // 網絡連接成功
m_netstatus = true;
printf("m_netstatus:%d\n\n", m_netstatus); // 顯示網絡已連接
break;
case NET_EVENT_RECV_DATA: // 接收到網絡信息(FA發送的消息)
MRobotProcessAppMessage((const char *)data, strlen(data)); // 處理對應的信息
break;
default:
break;
}
return 0;
}

??想了解更多關于開源的內容,請訪問:??

??51CTO 開源基礎軟件社區??

??https://ost.51cto.com??。

責任編輯:jianghua 來源: 鴻蒙社區
相關推薦

2022-05-17 10:33:58

設備開發鴻蒙操作系統

2021-12-28 16:10:20

鴻蒙HarmonyOS應用

2022-01-17 14:51:20

鴻蒙HarmonyOS應用

2021-07-15 09:39:06

鴻蒙HarmonyOS應用

2022-12-23 20:46:37

遙控器應用鴻蒙

2021-02-23 19:24:51

數字人民幣碰一碰支付

2023-02-03 16:31:33

2021-03-20 22:11:16

數字人民幣數字貨幣區塊鏈
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产一区久久 | 久久国内精品 | 黄色小视频入口 | 亚洲人成人一区二区在线观看 | 久久黄色精品视频 | 久青草影院 | 午夜精品91 | 99福利视频导航 | 99精品电影 | 99精品一区二区 | 一区二区三区成人 | 一区二区三区中文字幕 | 亚洲福利网 | 中文一区二区 | 91综合在线观看 | 欧美国产精品一区二区 | 久久综合久久久 | 日本特黄a级高清免费大片 特黄色一级毛片 | 日韩1区 | 国产午夜精品一区二区三区嫩草 | 91精品久久久久久久久中文字幕 | 91久久久久久 | 日本精品一区二区三区在线观看 | 四虎网站在线观看 | 成人免费视频网站在线看 | 一级毛片成人免费看a | 丝袜 亚洲 另类 欧美 综合 | 午夜私人影院在线观看 | 国产日韩欧美精品一区二区 | 91社影院在线观看 | 一区二区在线 | 久久免费精品 | 国内精品久久精品 | 日韩视频在线免费观看 | 久久中文字幕一区 | 久久人体视频 | 国产精品毛片一区二区在线看 | 一区二区中文字幕 | 国产一级片一区二区三区 | 国产精品爱久久久久久久 | 97国产一区二区精品久久呦 |