99久久全国免费观看_国产一区二区三区四区五区VM_久久www人成免费看片中文_国产高清在线a视频大全_深夜福利www_日韩一级成人av

程序員小哈
認(rèn)證:優(yōu)質(zhì)創(chuàng)作者
作者動(dòng)態(tài)
自動(dòng)洗碗機(jī)綜合實(shí)例第二講 - 最小系統(tǒng)核心板PCB繪制
2024-07-18 09:21
自動(dòng)洗碗機(jī)綜合實(shí)例第一講 - 最小系統(tǒng)核心板原理圖繪制
2024-07-16 09:40
線路板焊接的干貨都在這里呢
2024-07-14 12:08
基于單片機(jī)的智能風(fēng)扇DIY總結(jié)
2024-07-13 14:42
基于HAL庫(kù)實(shí)現(xiàn)按鍵(外部中斷)翻轉(zhuǎn)一個(gè)LED
2024-06-30 14:02

Arduino+涂鴉云,教你輕松制作炫彩燈帶

大家好,我是程序員小哈。

前一陣參加了涂鴉智能【幻彩燈帶】Arduino開(kāi)發(fā)實(shí)戰(zhàn)訓(xùn)練營(yíng),參與完整個(gè)過(guò)程,收獲頗豐,今天對(duì)本次制作的幻彩燈帶進(jìn)行一下小結(jié),希望以后可以再次參與其他內(nèi)容的訓(xùn)練營(yíng)活動(dòng)。

概況

本次DIY內(nèi)容為基于Arduino+tuya SDK實(shí)現(xiàn)的幻彩燈帶。實(shí)現(xiàn)了通過(guò) 涂鴉智能 App 下發(fā)打開(kāi)燈帶指令控制WS2812全彩燈板的開(kāi)關(guān),下發(fā)音樂(lè)指令控制燈帶進(jìn)入音樂(lè)律動(dòng)模式。

物料清單

硬件

  • 涂鴉WiFi模組(CBU)
  • Arduino UNO開(kāi)發(fā)板
  • 聲音傳感器模塊
  • 8位WS2812全彩燈板

軟件

  • 涂鴉智能 App
  • Arduino 開(kāi)發(fā)環(huán)境

步驟

創(chuàng)建產(chǎn)品

  1. 在涂鴉智能IoT 平臺(tái)  上,在后臺(tái)產(chǎn)品開(kāi)發(fā)-->照明-->幻彩燈帶 下,創(chuàng)建一款 幻彩燈帶 產(chǎn)品,產(chǎn)品方案選擇自定義方案

  1. 創(chuàng)建產(chǎn)品后,添加功能定義。由于要控制燈帶的開(kāi)關(guān),需要添加一個(gè)布爾型功能點(diǎn)。需要設(shè)置不同的工作模式,所以需要添加一個(gè)枚舉類型的功能點(diǎn)。

注意記錄上圖中的PID值,此值在稍后的Arduino UNO代碼中會(huì)使用。

填寫一個(gè)較規(guī)范的標(biāo)識(shí)符。因?yàn)槭峭ㄟ^(guò)標(biāo)識(shí)符控制功能的實(shí)現(xiàn)。

  1. 進(jìn)入硬件開(kāi)發(fā)標(biāo)簽。

如果要跟MCU配合使用,即CBU模組只負(fù)責(zé)上網(wǎng),MCU做主控。那么“已選云端對(duì)接方式”要選擇涂鴉標(biāo)準(zhǔn)模組MCU SDK開(kāi)發(fā)

然后選擇模組,這里推薦WBR3模組CBU模組。

模組選擇完畢,在此頁(yè)面的下方,下載資料區(qū)域,涂鴉IoT平臺(tái)會(huì)根據(jù)你選擇的模組和定義的功能,提供一份開(kāi)發(fā)資料,下載此資料可以讓您快速了解涂鴉物聯(lián)網(wǎng)平臺(tái)如何使用,并加速開(kāi)發(fā)過(guò)程。

公共資料區(qū)域,還可以下載涂鴉智能App

本實(shí)例中選用的是CBU模組。

開(kāi)發(fā)資源包

模組調(diào)試

要想實(shí)現(xiàn)MCU+模組組合在一起的開(kāi)發(fā)方式,首先我們要對(duì)MCU和模組之間的通訊協(xié)議了解清楚,而要了解通訊協(xié)議,我們可以借助官方的模組調(diào)試助手,利用它可以方便、快速的理解MCU與模組的交互過(guò)程。

遇到困難,也方便調(diào)試解決問(wèn)題。

模組調(diào)試助手使用教程  https://developer.tuya.com/cn/docs/iot/module-debugging-assistant-instruction?id=K9hs0cj3lf0au

在 MCU 模擬模式中,涂鴉模組調(diào)試助手會(huì)模擬 MCU 自動(dòng)回復(fù)模組正確的協(xié)議數(shù)據(jù),用手機(jī)給模組配網(wǎng)后可測(cè)試 DP 數(shù)據(jù)的上報(bào)下發(fā)。

對(duì)應(yīng)上面的信息,模組的串口2的發(fā)送引腳,輸出的Log信息如下:

好了,有了上面的了解,我們接下來(lái)看一下使用Arduino+CBU模組實(shí)現(xiàn)的幻彩燈帶如何進(jìn)行控制。

Arduino代碼移植

引用Arduino 庫(kù)

菜單“項(xiàng)目”-->“加載庫(kù)”

  1. 引用tuya庫(kù)

如果Arduino官方已經(jīng)收錄了涂鴉SDK的話,那么在“管理庫(kù)”中檢索tuya即可;

如果沒(méi)有被收錄,那么使用“添加.ZIP庫(kù)”文件的方式加載庫(kù)。

  1. 引用Adafruit_NeoPixel庫(kù)

如果因?yàn)榫W(wǎng)絡(luò)的原因,管理庫(kù)中下載Arduino庫(kù)困難,也可以使用別人下好的庫(kù),將其放在Window系統(tǒng)下的:我的電腦>文檔>Arduino>libraries 文件夾中。

Arduino初始化

void setup() {
  pinMode(BUTTON_PIN, INPUT_PULLUP);
  strip.begin(); // Initialize NeoPixel strip object (REQUIRED)
  strip.show();  // Initialize all pixels to 'off'

  DebugSerial.begin(9600);

  Serial.begin(9600);
  //Initialize led port, turn off led.
  pinMode(LED_BUILTIN, OUTPUT);
  digitalWrite(LED_BUILTIN, LOW);
  //Initialize networking keys.
  pinMode(key_pin, INPUT_PULLUP);

  //incoming all DPs and their types array, DP numbers
  //Enter the PID and MCU software version
  my_device.init(pid, mcu_ver);
  my_device.set_dp_cmd_total(dp_array, 17);
  //register DP download processing callback function
  my_device.dp_process_func_register(dp_process);
  //register upload all DP callback function
  my_device.dp_update_all_func_register(dp_update_all);

  last_time = millis();
  music_last_time = millis();
}

循環(huán)操作

void loop() {
  //進(jìn)入配網(wǎng)模式
  //Enter the connection network mode when Pin7 is pressed.
  if (digitalRead(key_pin) == LOW) {
    delay(80);
    if (digitalRead(key_pin) == LOW) {
      my_device.mcu_set_wifi_mode(SMART_CONFIG);      
    }
  }
  
  my_device.uart_service();

  /* LED blinks when network is being connected */
  if ((my_device.mcu_get_wifi_work_state() != WIFI_LOW_POWER) && (my_device.mcu_get_wifi_work_state() != WIFI_CONN_CLOUD) && (my_device.mcu_get_wifi_work_state() != WIFI_SATE_UNKNOW)) {
    if (millis()- last_time >= 500) {
      last_time = millis();

      if (led_state == LOW) {
        led_state = HIGH;
      } else {
        led_state = LOW;
      }
      digitalWrite(LED_BUILTIN, led_state);
    }
  }

  if(work_mode==3)
  {
    if (millis()- music_last_time >= 50)
    {
      music_last_time = millis();
      visualize_music();
    }
  }
}

編譯與下載

注意:下載的時(shí)候,先不要連接涂鴉WiFi模組,避免干擾。

配網(wǎng)

總結(jié)

整個(gè)開(kāi)發(fā)過(guò)程簡(jiǎn)單高效,大大節(jié)省了開(kāi)發(fā)時(shí)間,為傳統(tǒng)設(shè)備實(shí)現(xiàn)上云,提供了一個(gè)快速接入的方案。

聲明:本內(nèi)容為作者獨(dú)立觀點(diǎn),不代表電子星球立場(chǎng)。未經(jīng)允許不得轉(zhuǎn)載。授權(quán)事宜與稿件投訴,請(qǐng)聯(lián)系:editor@netbroad.com
覺(jué)得內(nèi)容不錯(cuò)的朋友,別忘了一鍵三連哦!
贊 1
收藏 1
關(guān)注 69
成為作者 賺取收益
全部留言
0/200
成為第一個(gè)和作者交流的人吧
主站蜘蛛池模板: www日本tv| 被两个两个黑人吃奶4P | 久久久久久精品一区二区三区日本 | 99久久人人爽亚洲精品美女 | 久久国产a级久久美女毛片 日韩激情无码一级毛片 | 麻豆美女裸体aaaa片 | 久久精品亚洲成在人线av麻豆 | 欧美日韩国产高清一区二区三区 | 男人操女人视频免费 | 亚洲精品久久无码AV片亚洲有色 | 日本三级黄网站 | 无码三级香港经典三级在线视频 | 久久超乳爆乳中文字幕 | 九色成人在线 | 国产av无码专区亚洲avjulia | youjazz性欧美| aaa级精品久久久国产片 | 国产成人精品免费视频大全办公室 | 欧美性猛交XXXX三人 | 国产高清不卡一区二区 | 天堂网在线WWW最新版资源 | 91久久艹| 野花社区www官网在线观看 | 黄色一级视频 | 久久精品欧美一区二区三区不卡 | 全免费午夜一级毛片真人 | 欧美丰满大乳高跟鞋 | 国产视频精品xxxx | 5252色成人免费视频 | 亚洲中文字幕无码久久2017 | 亚洲av爆乳精品一区二区中文 | 男女性色大片免费网站 | 18gay男同69亚洲帅男蓝宇 | 91九色丨porny丨交换 | 国产古装三级在线 | 精品久久久久久久久久中文字幕 | 国产三级午夜理伦三级最新章节 | 91看大片| 无码专区无码专区视频网址 | 久草影视在线 | 色悠久久久久综合网国产 |