资源简介
BC35.rar
代码片段和文件信息
#include “bc35.h“
//本程序只供学习使用,未经作者许可,不得用于其它任何用途
//作者:余浩
//yh77530@163.com
//QQ:838625990
//创建日期:2019/6/6
u8 NB_ReceiveBuff[200]; //接收BUFF
u16 NB_ReceiveNum=0; //接收BUFF标志
u8 Command_Mode = 0; //命令模式 默认关
u8 UDPSocket = 0; //UDPso
u8 NBok=0;
//获取第n个字符的位置
char NBget_Char_Position(u8 *istr u8 ichar u8 iposi)
{
u8 posit=0;
u8 i;
for(i=0;*(istr+i) != ‘\0‘;i++)
{
if(*(istr+i) == ichar) posit++;
if(posit == iposi) return i;
}
return -1;
}
//取出BUFF里面的数据
//返回0无数据,返回>0有数据
u8 receive_UDP_msg(char *outstr)
{
u8 ij=0;
u8 pi;
if(NB_ReceiveNum & 0x4000)
{
pi = NBget_Char_Position(NB_ReceiveBuff ‘‘ 2)+1;
for(i=pi;(*(NB_ReceiveBuff+i)<=‘9‘&&*(NB_ReceiveBuff+i)>=‘0‘)||(*(NB_ReceiveBuff+i)<=‘F‘&&
*(NB_ReceiveBuff+i)>=‘A‘)||(*(NB_ReceiveBuff+i)<=‘f‘&&*(NB_ReceiveBuff+i)>=‘a‘);i+=2 )
{
*(outstr+j)=0;
if(*(NB_ReceiveBuff+i)>=‘0‘ && *(NB_ReceiveBuff+i)<=‘9‘) *(outstr+j) += (*(NB_ReceiveBuff+i)-‘0‘)*16;
else if(*(NB_ReceiveBuff+i)<=‘F‘&&*(NB_ReceiveBuff+i)>=‘A‘) *(outstr+j) += (*(NB_ReceiveBuff+i)-‘A‘+10)*16;
else if(*(NB_ReceiveBuff+i)<=‘f‘&&*(NB_ReceiveBuff+i)>=‘a‘) *(outstr+j) += (*(NB_ReceiveBuff+i)-‘a‘+10)*16;
if(*(NB_ReceiveBuff+i+1)>=‘0‘ && *(NB_ReceiveBuff+i+1)<=‘9‘) *(outstr+j) += (*(NB_ReceiveBuff+i+1)-‘0‘);
else if(*(NB_ReceiveBuff+i+1)<=‘F‘&&*(NB_ReceiveBuff+i+1)>=‘A‘) *(outstr+j) += (*(NB_ReceiveBuff+i+1)-‘A‘+10);
else if(*(NB_ReceiveBuff+i+1)<=‘f‘&&*(NB_ReceiveBuff+i+1)>=‘a‘) *(outstr+j) += (*(NB_ReceiveBuff+i+1)-‘a‘+10);
j++;
}
*(outstr+j) = 0;
NB_ReceiveNum=0;
return j;
}
else
return 0;
}
// 例:15->F
char valueToHexCh(int value)
{
char result = ‘\0‘;
if(value >= 0 && value <= 9)
{
result = (char)(value+48);
}
else if(value>=10 && value<=15)
{
result = (char)(value-10+65);
}
}
//
int StrToHex(char *chchar *hex)
{
int temp = 0;
while(*ch)
{
temp = (int)*ch;
*hex++ = valueToHexCh(temp/16);
*hex++ = valueToHexCh(temp%16);
ch++;
}
*hex=‘\0‘;
}
//发送数据函数,传入socket主机IP,远程主机端口,数据长度,数据
//这里暂时使用字符串参数
//返回值0,发送成功(鉴于UDP为报文传输,数据主机是否接收到模块是无法确认的)
//返回值1,发送失败
uint8_t send_UDP_msg(char *hostIPchar *portchar *data)
{
char ptr[200]=“AT+NSOST=“;
char sockstr[2];
char dataLen[3];
char DATA[150];
u8 datal;
sprintf(sockstr“%d“UDPSocket);
datal = strlen(data);
sprintf(dataLen“%d“datal);
StrToHex(dataDATA);
strcat(ptrsockstr);
strcat(ptr““);
strcat(ptrhostIP);
strcat(ptr““);
strcat(ptrport);
strcat(ptr““);
strcat(ptrdataLen);
strcat(ptr““);
strcat(ptrDATA);
strcat(ptr“\0“);
if(!BC95_send_cmd(ptr“OK“0))
{
return 0;
}
return 1;
}
//创建UDP链接,传入本地UDP端口号,成功返回0-6的socket id号,失败返回1
u8 creat_UDP_socket(char* local_port)
{
u8 i;
char data[10]=““;
char temp[64]=“AT+NSOCR=DGRAM17“;
strcat(templocal
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 8944 2019-07-31 17:22 BC35\bc35.c
文件 679 2019-07-26 20:50 BC35\bc35.h
目录 0 2019-07-31 17:22 BC35
----------- --------- ---------- ----- ----
9623 3
- 上一篇:STM32 矩阵键盘扫描
- 下一篇:PSCAD风电场同步发电机仿真及控制模型
相关资源
- AnalysationofTrafficParaments.rar
- InvestigationofCar-speed.rar
- InvestigationofTrafficFlowing.rar
- vs2010破解版百度链接.rar
- 83390098XN297test.rar
- a4a957981f8dcf0175898b01a6478bfd.pdf
- 新建文本文档.txt59604
- 所有.txt
- 链接.zip
- 2019_全国大学生电子设计大赛_D题_简易
- 496782016年四川省TI杯大学生电子设计竞
- springboot.zip
- TIJ4-code.zip
- chrome.r39.crx
- pure_mathmodel_origin.slx
- pe_virus.rar
- wifi字典百度云链接.txt
- 微擎模块-人人商城.txt
- batcopyv2.0.zip
- 梯度下降法.zip
- 全国省市县.txt
- 基于深度学习的智能识别APP云盘链接
- opencv.rar
- zstp.txt
- workerman_gameMatch.zip
- hdl原理图和pcb联动设计.pdf
- 打造方猫眼项目前十章.txt
- BIGEMAP地图器_18@209548.exe.zip
- Leyou.rar
- 算法导论实验二.rar
评论
共有 条评论