摘要:一說明本庫基于編譯,其他的內核也支持,采用串口和模組通信。使用時添加文件到工程中,頭文件引用即可。此外,需要外部實現模組的復位操作,一般是對管腳拉高一段時間,復位函數需要指定函數為。四實例以下為使用的庫,實現對接自建。
一、說明
本lib庫基于STM32F407編譯,其他的cortexM4內核也支持,采用串口和EC20模組通信。
庫包括兩個文件:ec20_mqtt.h和ec20_mqtt.lib。使用時添加lib文件到工程中,頭文件引用ec20_mqtt.h即可。
下載:https://gitee.com/eiri_jackmaster/ec20_mqtt_cm4-lib
二、功能
提供了創建mqtt客戶端、連接服務器、訂閱、發布、取消訂閱、斷開連接、獲取imei號等API接口。
/*! -------------------------------------------------------------------------- *//*! Public function prototype */ EC20_status EC20_initialize(void);EC20_status EC20_mqttClientCreate(uint8_t pClientID,char* pIPv4, uint32_t pPort);EC20_status EC20_mqttClientConnectServer(uint8_t pClientID, char* pClientIDStr,char* pName, char* pPswd);EC20_status EC20_mqttClientSubscribe(uint8_t pClientID, char* pTopic, uint8_t pQos);EC20_status EC20_mqttClientUnSubscribe(uint8_t pClientID, char* pTopic);EC20_status EC20_mqttClientPublish(uint8_t pClientID, char* pTopic, uint8_t pQos, uint8_t pRetain, uint8_t *pData, uint32_t pSize);EC20_status EC20_mqttClientDisConnectServer(uint8_t pClientID);extern void EC20_moduleHardReset(void);size_t EC20_getIMEI(char *pIMEIBuff);
三、移植
在頭文件指定相應的串口操作函數和毫秒級基本延時即可。此外,需要外部實現EC20模組的復位操作,一般是對rst管腳拉高一段時間,復位函數需要指定函數為void EC20_moduleHardReset(void)。
/*! macro defination for porting *//*! ec20 uart default 115200 8 N 1 */#define EC20_SENDDATA(a,b) USART2_sendData(a,b) /*! uart redefine */#define EC20_SENDSTR(a) USART2_sendString(a)#define EC20_RXFLAG usart2Rx.flag #define EC20_RXBUFF usart2Rx.buff#define EC20_RXLEN usart2Rx.size#define EC20_BUFF_SIZE UART2_BUFF_SIZE /*! buffsize define */#define EC20_DELAYMS HAL_Delay#define PRINT_ENABLE 0x10 /*! 0x00=enable, other=disable*/
四、實例
以下為STM32F407使用ec20的mqtt庫,實現對接自建EMQX。
1、工程添加ec20_mqtt.lib
2、頭文件引入
定義變量和私有mqtt服務器信息(我使用了訂閱認證和鑒權):
??3、實現EC20模組復位接口
?4、調用接口
(1)初始化
(2)創建mqtt客戶端,連接服務器
(3)訂閱和發布主題
?4、執行結果
?
?可以看到發布和訂閱正常。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/120929.html
摘要:基于開發的軟件包導師汪禮超學員崔林威摘要騰訊物聯網操作系統是騰訊面向物聯網領域開發的實時操作系統,具有低功耗,低資源占用,模塊化,可裁剪等特性。圖中斷函數處理進行生成工程配置,按如下界面進行配置,最后點擊,并點擊。 ...
摘要:主控板此次繪制了主控板,引出了多種外設接口,串口,,,定時器,模擬等。原理圖主控芯片復位電路單數據通道傳感器電源指示燈藍牙接口串口慣性傳感器深度傳感器模擬卡卡下載電源接口下載點著里下載 ...
摘要:通過創建個任務閃爍間隔閃爍間隔串口發送數據間隔配置和口這里選用定時器作為系統時鐘作為的時鐘源配置并創建個任務配置串口和這里不多說配置時鐘生成代碼打開在文件里面進行默認任務編寫閃爍間隔寫作默認任務里閃爍寫在任務中串口發送間隔任務結果 stm32通過Cubemx創建3個任務 1.閃爍LED1 ...
摘要:帶中文字庫的是一種具有位位并行線或線串行多種接口方式,內部含有國標一級二級簡體中文字庫的點陣圖形液晶顯示模塊其顯示分辨率為。貼片按鍵模塊支持標準的協議,完整的協議棧。以最低成本提供最大實用性,為功能嵌入其他系統提供無限可能。 項目簡介 開發環境: Keil5.14,CubeMX6.0.1,主...
閱讀 4312·2021-09-24 09:47
閱讀 1189·2021-09-03 10:33
閱讀 2071·2019-08-30 11:13
閱讀 1037·2019-08-30 10:49
閱讀 1759·2019-08-29 16:13
閱讀 2050·2019-08-29 11:28
閱讀 3097·2019-08-26 13:31
閱讀 3636·2019-08-23 17:14