sim800c调试通过_第1页
sim800c调试通过_第2页
sim800c调试通过_第3页
sim800c调试通过_第4页
sim800c调试通过_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、幵*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄* * * 工程名 * 描述 * 实验平台 * QQ:184164353 拨打电话 通过手机发送短信控制 LED STC12XX 幵*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄* */ #include string.h #include delay.h #include uart.h #define Buf2_Max 200 本地常量声明 sbit RUNING_LED = P 2人1; /* / 串口 2 缓存长度 */ / 运行指示灯 /* 本地变

2、量声明 */ xdata u8 Uart2_BufBuf2_Max; u8 Times=0,First_Int = 0,shijian=0; /u8 Time_count=0; bdata u8 Flag;/ 定时器标志位 sbit TimerO_start =Flag0;/定时器0延时启动计数器 static unsigned char *phone = ATD10086;rn; / 拨打电话,修改这里可以修改拨打的电话。 /*本地函数声明 void GPIO_config(void); void Timer0Init(void); void CLR_Buf2(void); void Wai

3、t_CREG(void); */ /* 外部函数和变量声明 */ /* 精选文库 9 *函数名 *描述 *输入 *输出 *返回 *注意 载程序时数据 mai n 主函数 串口 2负责与GPRS模块通信,串口 1用于下载程序或串口调试,可以避免在下 还发送到模块 * void main (void) GPIO_con fig(); Uart2I ni t(); TimerOI ni t(); EA=1;/开总中断 Wait_CREG(); II查询模块是否注册成功 UART2_SendString(phone); II 拨打电话 while(1) I* *函数名 *描述 *输入 *输出 *返回

4、*注意 幵*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄* Uartl 串口 1中断服务入口函数 I void Uart1() interrupt 4 if (RI) RI = 0; if (TI) TI = 0; II清除RI位 /清除TI位 I* *函数名 *描述 *输入 *输出 *返回 *注意 幵*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄* Uart2 串口 2中断服务入口函数 void Uart2() in terru pt 8 IE2 if (S2CON /关闭串口 2中断 /清除S2RI

5、位 Uart2_BufFirst_l nt = S2BUF; First_I nt+; if(First_ Int Buf2_Max) /将接收到的字符串存到缓存中 /缓存指针向后移动 /如果缓存满,将缓存指针指向缓存的首 地址 First_ Int = 0; if (S2CON IE2 |= 0 x01; II清除S2TI位 /使能串口2中断 /* *函数名 *描述 *输入 *输出 *返回 *注意 * Timer0_ISR 定时器0中断服务入口函数,20ms中断一次 I void TimerO_ISR() in terru pt 1 static u8 Time_co un t=0; TR0

6、=0;/关定时器 Time_co un t+; if(Time_co un t=50) Time_co unt = 0; RUNING_LED =RUNING_LED; TR0=1;/开定时器 /* *函数名 *描述 *输入 *输出 *返回 *注意 幵*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄* GPI O_co nfig 10 口配置函数 void GP IO_co nfig(void) P3M1 /配置P32P35为推挽输出 P 3M0 |= 0XC3; RUNING_LED=O; void Timer0I nit(void) 20 毫秒

7、22.1184MHz AUXR TMOD TL0 = 0 x00; TH0 = 0 x70; TF0 = 0; TR0 = 1; ET0 = 1; /12T模式 /设置定时器模式 16位重载 /设定定时器初值 /设定定时器初值 /清除TF0标志 /定时器0开始计时 /使能定时器0中断 /* *函数名 *描述 *输入 *输出 CLR_Buf2 清除串口 2缓存数据 *返回: *注意: 幵*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄* / void CLR_Buf2(void) u16 k; /将缓存内容清零 /接收字符串的起始存储位置 for(k=0;kBuf2_Max;k+) Uart2_Bufk = 0 x00; Firstnt = 0; /* Wait_CREG 等待模块注册成功 *函数名 *描述 *输入 *输出 *返回 *注意 幵*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄* / void Wait_CREG(void) u8 i; u8 k; i = 0; CLR_Buf2(); while(i = 0) CLR_Buf2(); UART2_Se ndStri ng(AT+CREG?); UART2_Se n

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论