資源簡介
該代碼為BC26連接物聯網平臺代碼,包含電信IOT平臺連接和移動onenet平臺連接,電信iot平臺部分僅實現連接平臺和發送數據,至于平臺注冊、配置和profile創建這里不作介紹。至于移動onenet部分代碼比較多,包含bc26上電自檢、網絡注冊及套件資源創建、數據上傳等,PSM模式應用。代碼僅供學習參考。

代碼片段和文件信息
#include?
#include????//sprintf函數使用的庫函數
#include?
#include?“string.h“
#include?“FL100G.h“
#include?“Keyboard.h“
#include?“Utc1212.h“
#include?“flash.h“
#include?“timer.h“
#include?“Display.h“
UART_BUF?buf_uart0;?????//NBIOT
char?*strx=NULL*extstrx=NULL;
unsigned?char??err;????//全局變量
char??IMEI[15]={0X000X000X000X000X000X000X000X000X000X000X000X000X000X000X00};
//=========================移動IOT========================================
char??MsgID0[8]={0X000X000X000X000X000X000X000X00};
char??MsgID1[8]={0X000X000X000X000X000X000X000X00};
//==========================電信IOT==================================
#define?SERVERIP?“180.101.147.115“
#define?SERVERPORT?5683
#define?BC26_UART_IO
//===============================================================================================
//strstr(str1str2)函數使用時注意事項
//定義:strstr(str1str2)?函數用于判斷字符串str2是否是str1的子串。如果是,則該函數返回str2在str1中首次出現的地址;否則,返回NULL。
//????因而,在使用或者處理strstr(str1str2)返回值之前,切記不要對str1字符串進行更改,若要更改,應該等使用完返回值后再更改
//????\r??\n??回車+換行?Windows系統里面,每行結尾是“<回車><換行>”,即“?\r\n”,即把光標移到下一行的行首?
//拷貝函數:strcpy函數
//????????char*strcpy(char?*dest?const?char?*src);??【參數】dest?為目標字符串指針,src為源字符串指針。
//????????memcpy函數
//?????????void?*memcpy?(?void?*?dest?const?void?*?src?size_t?num?);??memcpy()?會復制?src?所指的內存內容的前?num?個字節到?dest所指的內存地址上
//?????????memcpy()并不關心被復制的數據類型,只是逐字節地進行復制,這給函數的使用帶來了很大的靈活性,可以面向任何數據類型進行復制。
//拼接函數?strcat函數
//?????????char?*strcat(char?*dest?const?char?*src);?【參數】:?dest?為目標字符串指針,src?為源字符串指針。
//?????????strcat()?會將參數?src?字符串復制到參數?dest?所指的字符串尾部;dest?最后的結束字符?NULL?會被覆蓋掉,并在連接后的字符串的尾部再增加一個?NULL。
//格式化輸出:%d?十進制整形;%ld?十進制長整形;%5.3d?有這個嗎?;%s?字符串;%c?字符型;%f?浮點型
//?\n?換行符(LF)
//?\r???回車(CR)?,相當于鍵盤上的“Enter“
//?\t???跳到下一個TAB位置\0?????空字符(NULL)
//?\‘???單引號(撇號)
//?\“???雙引號
//?\\???代表一個反斜線字符‘‘\‘?等,詳細可百度“轉義字符”
//===============================================================================================
//BC26支持115200以下波特率自適應
void?BC26_IO_Init(void)
{
//--------------?串口初始化?---------------
??????P3SEL?|=?NB_RXD?+?NB_TXD;???????????????//P3.4?TXD??P3.5?RXD
??P3DIR?|= NB_PSM_EINT+NB_RESET+NB_PWRKEY; //輸出,NB_PSM_EINT?外部中斷引腳輸入,用于喚醒BC模組,拉低電平喚醒
//NB_PWRKEY??模塊處于關機狀態時,通過NB_PWRKEY拉低500ms以上,可開機
//NB_RESET???復位引腳?通過拉低該引腳500ms以上,可使其復位
??P3OUT?&=?~(NB_PSM_EINT+NB_RESET+NB_PWRKEY); //
????
??????UCA0CTL1?|=?UCSWRST;????????????????????//Software?reset
??????UCA0CTL0?=??0x00;???????????????????????//?UART-Mode,8數據位,1停止位,無校驗位,LSB先發送?????????????????????????????????????????????
??????UCA0CTL1?|=?UCSSEL_2;???????????????????//?SMCLK
??
??????UCA0BR0?=?13; //?12MHz?57600???這里設置為57600
??????UCA0BR1?=?0; //?12MHz?57600???(UCAxBR0?+?UCAxBR1?×?256)
??????UCA0MCTL?=?UCOS16; //?Modulation?UCBRSx=0??UCBRFx=0 UCOS16=1
??????UCA0CTL1?&=?~UCSWRST; //?**Initialize?USCI?state?machine**
}
////////////////////////////////////////////////////////////////////////////
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2019-12-11?17:49??BC26-Drivers-20191211\
?????文件???????29912??2019-12-11?12:16??BC26-Drivers-20191211\Utc1212.c
?????文件????????2432??2019-12-11?11:58??BC26-Drivers-20191211\Utc1212.h
評論
共有 條評論