资源描述:
《基于avr的短信收发》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、学习了一个月C语言和AVR,做了一个短信工程的示例,很菜,但能用.那一个月的日子用一句话形容----"苦过种田",这个工程让我免于露宿街头,很感谢这里的朋友,很无私,这里的例子给我很大的帮助......现在我把这个东西发上来,希望有心的朋友给我指点,因为不知道.H文件的用法所以只有.C文件,因为还没有学会AtmanAvr软件就过期了,所以用了GCC,====================================cc1.c#include #include #incl
2、ude #define uchar unsigned char#define uint unsigned int#define SIZEX 100 //缓冲区大小====================================/====================================liu.cint getat(char *czn,char *ato,int tim) //设置,初始化{ switch(tim) {
3、 case 500: *czn=1; outtx("ATr",3); break; case 2000: *czn=2; outtx("AT+CSMS=1r",10); br
4、eak; case 3000: *czn=3; outtx("AT+CNMI=2,2,0,0,1r",18); break; case 3800: *czn=4;
5、 outtx("AT+CMGF=1r",10); break; }}int outss(char *czn,int *tim,int *ynduanx,char *arrout,char *enters,int *lenss) //短信发送函数//(当前操作标计,计时,目标电话号码尾位置,内容,数据){ if((*czn==5)&&(*tim==100)) {
6、 outtx("AT+CNMAr",8); *czn=6; } if ((*czn==6)&&(*tim==300)) { char str[100]; char str1[]={"AT+CMGS=""}; int lenw=0; int i=0; //if //{
7、 ///////////取号码//取内容(位置)//////////// for(i=0;i<40;i++) { if(i<9) { str[i]=str1[i]; }
8、 else { str[i]=*(arrout+i-2);