在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何使用GoKit和GC211來實現4G網絡的開發?

9GxC_IoTMaker ? 來源:機智云開發者 ? 作者:機智云開發者 ? 2021-03-30 14:14 ? 次閱讀

簡介

本案例主要講述了使用GoKit和GC211(4G模塊)來實現4G網絡的開發。囊括模塊接入、設備控制、數據采集、APP開發等方面內容。難度較低,適合新手入門。另外本次內容篇幅較長,將分成五部分來連載。主要是以圖文形式呈現,如在實踐過程中有疑問,可以加入機智云QQ群一起溝通探討。

連載教程內容:

gokit2/3 實現 4G 網絡模塊 GC211 的接入

STM32作為主控實現GOKIT全功能控制和采集

Arduino作為主控實現GOKIT全功能控制和采集

新版本APP快速開發

網頁控制GOKIT開發板

進入正文

STM32代碼移植編寫

通過這一步驟,我們要了解驅動下載地址、如何移植代碼,如電機控制、顏色變化、函數初始化等,移植好代碼后,為后續的APP應用開發奠定基礎。

1.下載STM32驅動文件。

在機智云下載中心下載相應型號的驅動文件。

本次以STM32為例

2.復制STM32驅動文件里面的STM32F103C8x.ioc到下載的代碼文件中替換該文件。

2bb7d570-8e06-11eb-8b86-12bb97331649.png

3.復制驅動庫代碼_CubeMX版文件夾里面的驅動文件到下載代碼的Hal文件夾。

4.使用Cubemx,生成Keil代碼

打開下載代碼里面的STM32F103C8x.ioc,需要在電腦上安裝CUBEMX,安裝方法自行百度。打開之后如下圖所示。

個人建議,任何軟件創建項目,不要包含中文路徑,否則將會導致很多不可控問題,包括此軟件。

2ef6ad4c-8e06-11eb-8b86-12bb97331649.png

5.點擊右上角generate code生成keil代碼。

6.生成代碼之后用keil打開代碼,添加驅動文件到項目

2f9405a6-8e06-11eb-8b86-12bb97331649.png

7. gizwits_product.c文件修改

添加相關的頭文件

2fd0207c-8e06-11eb-8b86-12bb97331649.png

gizwitsEventProcess函數修改,包含各個傳感器的驅動。

對RGB LED開啟紅色的控制。

if(0x01 == currentDataPoint.valueLED_OnOff)

{

ledRgbControl(254,0, 0);

}

else

{

ledRgbControl(0, 0,0);

}

break;

其他顏色和電機的修改

case EVENT_LED_Color:

currentDataPoint.valueLED_Color = dataPointPtr-》valueLED_Color;

GIZWITS_LOG(“Evt: EVENT_LED_Color %d ”, currentDataPoint.valueLED_Color);

switch(currentDataPoint.valueLED_Color)

{

case LED_Color_VALUE0:

ledRgbControl(currentDataPoint.valueLED_R,currentDataPoint.valueLED_G,currentDataPoint.valueLED_B);

break;

case LED_Color_VALUE1:

ledRgbControl(254, 254, 0);

break;

case LED_Color_VALUE2:

ledRgbControl(254,0, 70);

break;

case LED_Color_VALUE3:

ledRgbControl(238,30, 30);

break;

default:

break;

}

break;

case EVENT_LED_R:

currentDataPoint.valueLED_R = dataPointPtr-》valueLED_R;

GIZWITS_LOG(“Evt:EVENT_LED_R %d ”,currentDataPoint.valueLED_R);

ledRgbControl(currentDataPoint.valueLED_R,currentDataPoint.valueLED_G,currentDataPoint.valueLED_B);

break;

case EVENT_LED_G:

currentDataPoint.valueLED_G = dataPointPtr-》valueLED_G;

GIZWITS_LOG(“Evt:EVENT_LED_G %d ”,currentDataPoint.valueLED_G);

ledRgbControl(currentDataPoint.valueLED_R,currentDataPoint.valueLED_G,currentDataPoint.valueLED_B);

break;

case EVENT_LED_B:

currentDataPoint.valueLED_B = dataPointPtr-》valueLED_B;

GIZWITS_LOG(“Evt:EVENT_LED_B %d ”,currentDataPoint.valueLED_B);

ledRgbControl(currentDataPoint.valueLED_R,currentDataPoint.valueLED_G,currentDataPoint.valueLED_B);

break;

case EVENT_Motor_Speed:

currentDataPoint.valueMotor_Speed = dataPointPtr-》valueMotor_Speed;

GIZWITS_LOG(“Evt:EVENT_Motor_Speed %d ”,currentDataPoint.valueMotor_Speed);

motorStatus(currentDataPoint.valueMotor_Speed);

break;

如使用wifi方案,在WIFI_CON_ROUTER加上關燈操作。

case WIFI_CON_ROUTER:

ledRgbControl(0, 250, 0);

userInit函數修改,增加各個驅動函數的初始化,數據點初始化

memset((uint8_t*)¤tDataPoint, 0, sizeof(dataPoint_t));

delay_init(72); // 延時 初始化

rgbLedInit(); // RGB LED 初始化

dht11Init(); // 溫濕度初始化

irInit(); // 紅外初始化

motorInit(); // 電機初始化

motorStatus(0); // 電機轉速初始化

/** Warning !!! DataPoint Variables Init , Must Within The Data Range **/

currentDataPoint.valueLED_OnOff = 0;

currentDataPoint.valueInfrared = 0;

currentDataPoint.valueAlert_1 = 0;

currentDataPoint.valueAlert_2 = 0;

currentDataPoint.valueFault_LED = 0;

currentDataPoint.valueFault_Motor = 0;

currentDataPoint.valueFault_TemHum = 0;

currentDataPoint.valueFault_IR = 0;

currentDataPoint.valueLED_Color = 0;

currentDataPoint.valueLED_R = 0;

currentDataPoint.valueLED_G = 0;

currentDataPoint.valueLED_B = 0;

currentDataPoint.valueMotor_Speed = 0;

currentDataPoint.valueTemperature = 0;

currentDataPoint.valueHumidity = 0;

userHandle函數的修改,各個數據點的上傳,傳感器采集。

uint8_t ret = 0;

static uint32_t thLastTimer = 0;

///《 新添加代碼: 紅外傳感器數據獲取

currentDataPoint.valueInfrared = irHandle();

///《 新添加代碼: 溫濕度傳感器數據獲取

if((gizGetTimerCount()- thLastTimer) 》 2000) //上報間隔2S

{

ret = dht11Read((uint8_t *)¤tDataPoint.valueTemperature,(uint8_t*)¤tDataPoint.valueHumidity);

if(ret != 0)

{

GIZWITS_LOG(“Failedto read DHT11 [%d] ”, ret);

}

thLastTimer = gizGetTimerCount();

}

8.將#include “main.h” 添加到hal下面的各個sensor驅動之中,否則sensor將會提示沒有引腳定義報錯。

9. main.c修改,增加頭文件

#include “hal_temp_hum.h”

#include “hal_rgb_led.h”

#include “hal_motor.h”

#include “Hal_infrared.h”

#include “delay.h”

main.c 文件的 key2ShortPress( ) 函數與 key2LongPress( ) 函數中添

加長/短按key2時的LED點亮代碼。

void key2ShortPress(void)

{

GIZWITS_LOG(“KEY2 PRESS ,Soft APmode ”);

#if !MODULE_TYPE

gizwitsSetMode(WIFI_SOFTAP_MODE);

#endif

//Soft AP mode,RGB 紅燈

ledRgbControl(250,0, 0);

}

void key2LongPress(void)

{

//AirLink mode

GIZWITS_LOG(“KEY2PRESS LONG ,AirLink mode ”);

#if !MODULE_TYPE

gizwitsSetMode(WIFI_AIRLINK_MODE);

#endif

//AirLink mode,RGB 綠燈

ledRgbControl(0,250, 0);

},

10.生成bin文件。魔術棒→user→$KARMARMCCinfromelf.exe --bin --output=@L.bin !L

11.編譯項目

354a4460-8e06-11eb-8b86-12bb97331649.png

12.燒錄

STM32開發板集成串口下載,打開串口燒錄軟件mcuisp.exe,附件中可下載。

35b9b0a2-8e06-11eb-8b86-12bb97331649.png

選擇開發板串口

36013bfc-8e06-11eb-8b86-12bb97331649.png

將如圖所示開關拔到system

選擇生成的固件文件

點擊開始編程

燒錄完成。

燒錄完成之后將開關拔回flash,復位模組,就可以正常運行程序。

13.檢驗燒錄是否成功

打開 串口調試助手.exe ,附件中可以下載。監聽串口出現如下圖所示日志代表程序燒錄成功。

14.驗證設備和云端是否互聯互通

接上功能板和4G模組(插上普通4G卡)。云端設備上線。

15.打開機智云串口調試助手.exe,附件中或者官網下載中心可以下載。工具,二設備二維碼,按照如圖生成二維碼。

16.下載機智云APP,驗證智能設備和APP是否互聯互通。

使用機智云App掃碼即可綁定設備,官網下載中心可以下載APP

到此STM32移植完成。

基本上硬件部分全部完成,接下來,我要做APP了。當然在這之前,我也會把Arduino版本的如何進行移植,告知大家。

原文標題:【4G 開發】基于GOKIT+GC211的開發指南2,STM32代碼移植

文章出處:【微信公眾號:機智云開發者】歡迎添加關注!文章轉載請注明出處。

責任編輯:haq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 4G
    4G
    +關注

    關注

    15

    文章

    5572

    瀏覽量

    120742
  • STM32
    +關注

    關注

    2290

    文章

    11018

    瀏覽量

    362715

原文標題:【4G 開發】基于GOKIT+GC211的開發指南2,STM32代碼移植

文章出處:【微信號:IoTMaker,微信公眾號:機智云開發者】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    雷卯收集4G/WIFI無線傳輸產品開發

    電磁兼容整改能力。歡迎聯系。 雷卯收集增強現實4G/WIFI無線傳輸產品開發板明細如下: 以下是4G/WIFI無線傳輸產品開發板介紹: 無線傳輸產品基于
    的頭像 發表于 04-08 18:21 ?129次閱讀
    雷卯收集<b class='flag-5'>4G</b>/WIFI無線傳輸產品<b class='flag-5'>開發</b>板

    4G核心板_4G智能模組_聯發科MTK|高通|紫光展銳4G模塊開發

    4G核心板是一種集成了處理器、內存與存儲、射頻模塊、接口等主要組件的小型電路板。它采用開放式的智能Android操作系統,并內置4G通信功能,專為嵌入式系統的核心功能實現而設計。由于核心板本身需要通過底板提供支持,無法單獨運行,
    的頭像 發表于 03-04 20:15 ?396次閱讀
    <b class='flag-5'>4G</b>核心板_<b class='flag-5'>4G</b>智能模組_聯發科MTK|高通|紫光展銳<b class='flag-5'>4G</b>模塊<b class='flag-5'>開發</b>

    工業4G路由器實現電力領域監控視頻數據無線傳輸

    工業4G路由器在電力監控領域憑借強大網絡連接能力,能適應不同網絡環境,快速接入互聯網。豐富接口可連接各類電力設備,具備工業級硬件設計,能在惡劣環境穩定運行,還有多重安全防護。在電力監控數據傳輸中
    的頭像 發表于 02-24 17:51 ?575次閱讀
    工業<b class='flag-5'>4G</b>路由器<b class='flag-5'>實現</b>電力領域監控視頻數據無線傳輸

    【正點原子STM32H7R3開發套件試用體驗】4G聯網工業設備控制網關

    這次有幸參加 正點原子STM32H7R3開發套件 的評測,計劃使用 正點原子STM32H7R3開發套件,完成一個 4G聯網工業設備控制網關。 評測計劃: 1. 通過正點原子
    發表于 12-18 14:14

    LuatOS開發4G模組隨機數(random)|實戰指南

    本次學習的實戰是關于4G模組LuatOS開發的隨機數示例指南,希望大家有所收獲。
    的頭像 發表于 11-30 09:51 ?651次閱讀
    LuatOS<b class='flag-5'>開發</b>之<b class='flag-5'>4G</b>模組隨機數(random)|實戰指南

    4G 模組 HTTP 網絡協議應用 白嫖版!

    今天我們白嫖的是Air780E模組LuatOS開發4G通信中HTTP網絡協議的應用,實現模組和服務器之間數據的傳輸,詳細介紹硬件環境、軟件
    的頭像 發表于 10-30 14:22 ?1267次閱讀
    <b class='flag-5'>4G</b> 模組 HTTP <b class='flag-5'>網絡</b>協議應用 白嫖版!

    藍奧聲4G系列新突破:4G+RS485+藍牙+WiFi+以太網綜合智能網關,多元智控!

    4G網關是一款將4G LTE網絡與各種本地設備和網絡連接的設備。它具有硬件設計、軟件開發、用戶界面、安全性等功能。通過集成Modbus RT
    的頭像 發表于 08-26 11:41 ?847次閱讀
    藍奧聲<b class='flag-5'>4G</b>系列新突破:<b class='flag-5'>4G</b>+RS485+藍牙+WiFi+以太網綜合智能網關,多元智控!

    4G模塊聯網問題

    最近在調試4G模塊,4G模塊驅動調試成功,也可以ping通外網(比如www.baidu.com)。我的電腦連接路由器,也可以上網,但是用4G模塊ping不通電腦,不知道該問題出在哪里,該怎么解決
    發表于 08-01 19:01

    帶DTU串口透傳功能的工業4G路由器:4G DTU模塊路由器串口RS232/485轉4G網絡數據雙向透傳

    4G網絡數據
    深圳市博晶網絡科技有限公司
    發布于 :2024年07月31日 17:10:51

    工業4G路由器賦能泵站遠程監測實現智能化升級

    工業4G路由器在泵站遠程監測管理中利用4G技術提供穩定、高速的無線網絡連接,實現對泵站的遠程監控、數據采集、異常報警及遠程控制等功能,從而提高了泵站的管理效率和運維水平。工業
    的頭像 發表于 07-30 16:57 ?560次閱讀
    工業<b class='flag-5'>4G</b>路由器賦能泵站遠程監測<b class='flag-5'>實現</b>智能化升級

    4G新型智能電表是什么?

    4G新型智能電表是一種利用第四代移動通信技術(4G)進行數據傳輸的先進計量設備。它不僅具備傳統電表的基本功能,如電量計量,還能實現遠程抄表、用電監控、故障檢測等多種智能化服務。本文旨在詳細介紹
    的頭像 發表于 07-26 19:04 ?1110次閱讀
    <b class='flag-5'>4G</b>新型智能電表是什么?

    請問如何使用IR915L-TL00-W-S通過4G網絡實現遠程上下載三菱Q03UDEPLC程序?

    如題通過通過4G網絡實現遠程上下載三菱Q03UDE PLC程序
    發表于 07-24 07:40

    嵌入式設備中的4G/5G模塊管理

    自管理工具,旨在以更智能化的管理策略和更靈活的配置方式為用戶帶來更加便捷的網絡管理體驗。 01功能簡介 模塊層面 4G/5G網卡自管理工具在功能設計上實現了深度與廣度的結合。在模塊層
    發表于 07-13 16:45

    請問mesh的root節點能否通過4G撥號實現聯網?

    請問能實現網絡中有若干設備,支持通過4G模塊連接外網,當在用的4G模塊斷網后,由其它可以聯網的4G節點充當ROOT, 繼續完成所有節點與外網
    發表于 06-28 13:16
    主站蜘蛛池模板: 丁香婷婷电影 | 中国国产aa一级毛片 | 色综合天天综合给合国产 | 日韩美毛片 | 特级做a爰片毛片免费看一区 | 国模在线观看 | 一级特黄aaa大片29 | 被啪漫画羞羞漫画 | а8天堂资源在线官网 | 一级一级特黄女人精品毛片 | 亚洲欧美在线一区 | 女a男0攻巨肉高h | 欧洲一级鲁丝片免费 | 久久艹免费视频 | 午夜免费福利片 | 狠狠色综合久久婷婷 | 狠狠色网 | 午夜色婷婷 | 奇米小说 | 成熟女性毛茸茸xx免费视频 | a久久 | 视频二区在线观看 | 嫩草影院国产 | 色老头久久网 | 午夜影院在线观看免费 | 优优优色 | 久久亚洲国产欧洲精品一 | 色福利网 | 在线视频黄 | 伊人久久大香线蕉影院95 | 欧美操bb | xxxx日本xx| 免费美剧在线观看 | 在线观看一区二区三区四区 | 精品成人在线 | 国产大片黄在线看免费 | 特黄特色大片免费播放路01 | 午夜伦理片免费观看在线 | 色综网| 亚洲jizzjizz妇女| www.xxx.日本|