久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1289|回復: 0
打印 上一主題 下一主題
收起左側

正點原子探索版STM32F407,接入機智云之代碼移植

[復制鏈接]
跳轉到指定樓層
樓主
ID:729078 發表于 2021-6-17 12:11 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
正點原子官方提供了與機智云連接的開發手冊,但是手冊內容中的Gizwits文件目錄和目前的機智云自動生成的代碼目錄有一定的差異,因此移植過程有了一些改變。為了方便大家針對新版機智云的代碼進行移植,也為了給自己的移植過程做一個記錄,特此寫下正點原子探索者STM32F497的移植過程。


移植步驟


在機智云物聯網開發平臺新建設備,數據點,生成代碼(選擇其他平臺)并下載。注意:機智云物聯網開發平臺dev.gizwits.com推薦使用最新的esp8266機智云GAgent固件,其下載地址:/download.gizwits.com/zh-cn/p/92/94選擇生成其他平臺的代碼是標準庫,選擇F407平臺則生成的是HAL庫。






2.打開正點原子的移植代碼:




文件路徑:



將我們下載的自動生成的代碼中的Gizwits文件夾和Utils文件夾復制到正點原子的移植代碼目錄中,提示覆蓋點擊確定即可。





打開工程,將Utils文件夾添加到頭文件路徑中





gizwits_product.c中加入led.husart3.h
  • #include <stdio.h>
  • #include <string.h>
  • #include "gizwits_product.h"
  • //下面兩個頭文件是我們后來加入的
  • #include "led.h"
  • #include "usart3.h"

修改 dataPoint_t currentDataPointextern dataPoint_t currentDataPoint

  • /** Current datapoint */
  • //dataPoint_t currentDataPoint;
  • extern dataPoint_t currentDataPoint;

找到以下代碼,并加入

  • if(0x01 == currentDataPoint.valueLEDonoff)
  • {
  • //user handle
  • //下面一行是我們后加入的
  •                         LED1=0;//LED1亮
  • }
  • else
  • {
  • //user handle
  • //下面一行是我們后加入的
  •                         LED1=1;//LED1滅                        
  • }

main.c中的 void userHandle(void)

  • //數據采集
  • void userHandle(void)
  • {
  • //判斷當前LED1開關量
  • if(LED1==0)
  • currentDataPoint.valueLEDonoff = 1;
  • else
  •         currentDataPoint.valueLEDonoff = 0;
  • }

剪切到gizwits_product.c中的對應位置

  • //下面的void userHandle(void)是我們從main.c中剪切過來的
  • //數據采集
  • void userHandle(void)
  • {
  • //判斷當前LED1開關量
  • if(LED1==0)
  • currentDataPoint.valueLEDonoff = 1;
  • else
  •         currentDataPoint.valueLEDonoff = 0;
  • }

修改gizwits_product.c中的 int32_t uartWrite(uint8_t *buf, uint32_t len)

  • int32_t uartWrite(uint8_t *buf, uint32_t len)
  • {
  • uint32_t i = 0;
  • if(NULL == buf)
  • {
  • return -1;
  • }
  • #ifdef PROTOCOL_DEBUG
  • GIZWITS_LOG("MCU2WiFi[%4d:%4d]: ", gizGetTimerCount(), len);
  • for(i=0; i<len; i++)
  • {
  • GIZWITS_LOG("%02x ", buf);
  • }
  • GIZWITS_LOG("\n");
  • #endif
  • for(i=0; i<len; i++)
  • {
  • //USART_SendData(UART, buf);//STM32 test demo
  • //實現串口發送函數,將buf發送到模組
  •                 USART_SendData(USART3,buf);
  • while(USART_GetFlagStatus(USART3,USART_FLAG_TC)==RESET); //循環發送,直到發送完畢
  • if(i >=2 && buf == 0xFF)
  • {
  • //實現串口發送函數,將0x55發送到模組
  •                 USART_SendData(USART3,0x55);
  • while(USART_GetFlagStatus(USART3,USART_FLAG_TC)==RESET); //循環發送,直到發送完畢
  • }
  • }
  • return len;
  • }

gizwits_product.c中的 void mcuRestart(void); 處加入如下代碼

  • void mcuRestart(void)
  • {
  • __set_FAULTMASK(1);//關閉所有中斷
  • NVIC_SystemReset();//復位        
  • }

gizwits_product.h中加入 void gizTimerMs(void);

  • void userInit(void);
  • void userHandle(void);
  • void mcuRestart(void);
  • //下面的一行是我們后面加入的
  • void gizTimerMs(void);


移植完成


編譯下載到開發板即可。



按下KEY1,用機智云的手機App進行連接調試。








進入即可控制LED的亮滅。




分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 成人免费视频网址 | 国产一区精品在线观看 | 国产欧美精品一区 | 日韩精品 | 伊人国产女| 久久久久久久 | 黄色片视频网站 | 亚洲天天 | 欧美激情成人 | 天天干夜夜艹 | 婷色 | 精品日韩在线观看 | 亚洲欧美日本在线 | 成年网站在线观看 | 日韩特黄 | 亚洲欧美专区 | 国产精品一区二区三区不卡 | 亚洲视频一区二区三区 | 久久精品中文 | 一区二区三区视频在线播放 | 天天躁日日躁狠狠躁伊人 | 国产一级18片视频 | 日韩av福利 | 色婷av| 四虎在线观看 | 狠狠干欧美 | 男人影院在线观看 | 欧美资源在线 | www.一区二区 | 久久精品视频网站 | 伊人天堂网 | 在线伊人网 | 黄色小视频免费 | 六月婷婷在线 | 999精品视频 | 国产一级片免费观看 | 国产精品一区二区三区四区五区 | www.成人在线| 久久久九九 | 午夜爽爽影院 | 成人激情视频 |