JC24B 2.4G无线模块配置
生活随笔
收集整理的這篇文章主要介紹了
JC24B 2.4G无线模块配置
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
模塊圖
引腳功能
結構定義(頭文件)
//typedef unsigned char u8; typedef u8* pu8; //typedef unsigned short u16;typedef struct _jc24b_data_t {u8 rf_cmd1;u8 rf_cmd2;u16 rf_node_id;u16 rf_net_id;u8 nc1;u8 rf_power;u8 nc2;u8 rf_baud;u8 nc3;u8 rf_chn;u8 nc4;u8 rf_speed;u8 nc5;u8 rf_lenght;//0x12u8 nc6;u8 rf_check_sum; }jc24b_data;//RF功率 #define RF_12dbm 0 #define RF_9dbm 2 #define RF_6dbm 4 #define RF_0dbm 6 #define RF_F5dbm 8 #define RF_F15dbm 10 #define RF_F25dbm 12 #define RF_F35dbm 14//串口波特率 #define BAUD_9600 4 #define BAUD_38400 6//空中速率 #define RF_250Kbps 0 #define RF_1Mbps 1 #define RF_2Mbps 2//默認參數 #define RF_DEFAULT_BAUD BAUD_9600 #define RF_DEFAULT_NODE_ID 0x1122 #define RF_DEFAULT_NET_ID 0x3311 #define RF_DEFAULT_POWER RF_12dbm #define RF_DEFAULT_CHN 99 #define RF_DEFAULT_AIR_SPEED RF_1Mbps//校驗和 u8 CheckSum(pu8 pSrc, u8 len);//數據重置 void Jc24B_Reset(jc24b_data* dat);//設置組網ID模塊ID void Jc24B_SetID(jc24b_data* dat,u16 node_id, u16 net_id);實現代碼
u8 CheckSum(pu8 pSrc, u8 len) {u8 i = 0, ret = 0;for (; i < len; ++i)ret += *pSrc++;return ret; }void Jc24B_SetCheckSum(jc24b_data *dat) {dat->rf_check_sum = CheckSum((pu8)dat,dat->rf_lenght-1); }void Jc24B_Reset(jc24b_data *dat) {memset(dat, 0, sizeof(jc24b_data));dat->rf_cmd1 = 0xaa;dat->rf_cmd2 = 0x5a; //發送dat->rf_node_id = RF_DEFAULT_NODE_ID;dat->rf_net_id = RF_DEFAULT_NET_ID;dat->rf_power = RF_DEFAULT_POWER;dat->rf_baud = RF_DEFAULT_BAUD;dat->rf_speed = RF_DEFAULT_AIR_SPEED;dat->rf_chn = RF_DEFAULT_CHN; // RF信道dat->rf_lenght = 0x12;Jc24B_SetCheckSum(dat); //設置校驗和 }void Jc24B_SetID(jc24b_data *dat, u16 node_id, u16 net_id) {if(dat->rf_cmd1!=0xaa)Jc24B_Reset(dat);dat->rf_node_id = node_id;dat->rf_net_id = net_id;Jc24B_SetCheckSum(dat); //設置校驗和 }總結
以上是生活随笔為你收集整理的JC24B 2.4G无线模块配置的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: “黑球”行动再升级,SMBGhost漏洞
- 下一篇: Access denied for us