#include"gsm.h"
#include"gsm.h"
#include"gsm.h"
#include<string.h>
char dupbuf[1024];
char readbuf[1024];
char numbuf[12];
char msgbuf[20];
int gsm_sendmsg(int fd,char * phonenum,char * msg)
{
char z;
int ret;
char *gsm_mode = TEXT_MODE;
char buf[128];
ret = write(fd,"AT\r",strlen("AT\r"));
sleep(1);
// printf("%dasdfff\n ",ret);
memset(buf,0,sizeof(buf));
ret = read(fd,buf,128);
printf("read %d bytes from first %s.\n",ret,buf);
ret = write(fd,gsm_mode,strlen(gsm_mode));
if(ret<0)
{
printf("Write gsm_mode failed\n");
return ret;
}
printf("Write gsm_mode %d bytes\n",ret);
sleep(2);
memset(buf,0,sizeof(buf));
ret = read(fd,buf,128);
printf("read %d bytes from buf %s.\n",ret ,buf);
ret = write(fd,phonenum,strlen(phonenum));
printf("write phonenum %d bytes\n",ret);
sleep(2);
memset(buf,0,128);
ret=read(fd,buf,128);
printf("read %d bytes from phone num %s.\n",ret,buf);
ret=write(fd,msg,strlen(msg));
printf("write msg %d bytes\n",ret);
z=AT_CTLZ;
ret=write(fd,&z,sizeof(z));
printf("Write ctrl+z %d bytes\n",ret);
sleep(2);
memset(buf,0,sizeof(buf));
ret=read(fd,buf,128);
printf("read %d bytes from end %s.\n",ret,buf);
}
int rcvmsg(int fd,int cmd)
{
int ret=0;
char *getmsg=AT_GET_UNREAD;
char *getall=AT_GET_ALLMSG;
switch(cmd)
{
case 0:
ret = write(fd,getall,strlen(getall));
break;
case 1:
ret = write(fd,getmsg,strlen(getmsg));
break;
default :
ret=-1;
break;
}
return -1;
}
int readmsg(int fd,char *index)
{
char *rdmsg=AT_READ_MSG;
int len=0 ;
// char buf[1024];
// char dupbuf[1024];
memset(dupbuf,0,sizeof(dupbuf));
write(fd,rdmsg,strlen(rdmsg));
write(fd,index,strlen(index));
write(fd,"\r",strlen("\r"));
sleep(2);
memset(readbuf,0,sizeof(readbuf));
read(fd,readbuf,sizeof(readbuf));
printf("msg:%s\n",readbuf);
len=strlen(readbuf);
printf("len=%d\n",len);
if(len<35)
return -1;
memcpy(dupbuf,readbuf,sizeof(dupbuf));
printf("-----------------------------------------\n");
parsenum(readbuf);
printf("-----------------------------------------\n");
// printf("%s\n\n\n",dupbuf);
parsemsg(dupbuf);
return 0;
}
int delmsg(int fd,char *index)
{
char *delmsg=AT_DEL_MSG;
char buf[1024];
write(fd,delmsg,strlen(delmsg));
write(fd,index,strlen(index));
write(fd,"\r",strlen("\r"));
sleep(2);
memset(buf,0,sizeof(buf));
read(fd,buf,sizeof(buf));
printf("delmsg:%s\n",buf);
return 0;
}
void parsenum(char *buf1)
{
char *p,*q;
int i=0,k=11;
char *buf=buf1;
p=strsep(&buf,",");
// printf("%s\n",p);
q=strsep(&buf,",");
// printf("%s\n",q);
q=q+4;
memset(numbuf,'\0',sizeof(numbuf));
while(k--)
numbuf[i++]=*q++;
numbuf[11]='\0';
// printf("%s\n",numbuf);
}
void parsemsg(char *buf1)
{
char *p;
int i=0;
char *buf=buf1;
char str[1024];
char ms[1024];
memset(ms,0,sizeof(ms));
memset(str,0,sizeof(str));
memset(msgbuf,0,sizeof(msgbuf));
// printf("%s\n",buf);
strsep(&buf,"\n");
strsep(&buf,"\n");
// strsep(&buf,"\n");
// printf("%s\n",buf);
memcpy(str,buf,sizeof(str));
// printf("%s\n",str);
while(str[i]>='0'&&str[i]<='9')
ms[i]=str[i++];
// printf("%s\n",ms);
strcpy(msgbuf,ms);
// trim(msgbuf,ms);
printf("%d\n",strlen(msgbuf));
printf("%s\n",msgbuf);
}
void trim(char *des,char * str)
{
int i,j;
char *p;
p=str;
while(*p)p++;
p--;
while(*p)
{
if(!(*p>='0'&&*p<='9'))
p++;
else
break;
}
p[1]='\0';
strcpy(des,str);
}
没有合适的资源?快使用搜索试试~ 我知道了~
QT-小键盘输入程序,简单实现
共31个文件
o:9个
h:6个
cpp:5个
5星 · 超过95%的资源 需积分: 5 260 下载量 64 浏览量
2009-05-29
20:24:37
上传
评论 8
收藏 2.18MB RAR 举报
温馨提示
QT-小键盘输入,可以嵌入到写的QT程序代码中直接用,简单但完整实用。修改一下,方便大家参考
资源推荐
资源详情
资源评论
收起资源包目录
keypad.rar (31个子文件)
keypad
sqlite-3.4.0.tar.gz 2.11MB
result1
moc_keypad.o 7KB
main.cpp 338B
result 46KB
gsm_thread.c 2KB
studb.c 2KB
studb.h 230B
moc_keypad.cpp 3KB
studb.o 4KB
keypad.cpp 7KB
gsm.c 3KB
MainWindow.cpp 7KB
uart.h.bak 702B
gsm.h 730B
keypad.o 34KB
moc_MainWindow.cpp 2KB
gsm_thread.h 84B
keypad.h 3KB
MainWindow.h 762B
main.o 3KB
gsm.o 5KB
gsm_thread.o 3KB
uart.h 704B
stu.db 2KB
uart.o 3KB
Makefile 9KB
result1 75KB
result1.pro 424B
moc_MainWindow.o 8KB
MainWindow.o 20KB
uart.c 3KB
共 31 条
- 1
*微光*
- 粉丝: 6
- 资源: 8
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
- 5
前往页