gsm-
来自「GSM室温监控系统」· 代码 · 共 59 行
TXT
59 行
#ifndef _USART_INCLUDED_
#define _USART_INCLUDED_
#include "common.h"
//延时函数ms(condition:11.0592M HSE)
void delay_ms(unsigned int time)
{
unsigned char tres;
for(;time>0;time--)
{
tres=150;
while(tres--);
}
}
//串口初始化
void USART_Init()
{
SCON=0X50;//串口:方式1,接受允许
TMOD=0X20;//定时器1:模式2,8位自动重装模式,用于产生波特率
TH1=0XFD; //初值设定 9600bit
TL1=0XFD;
TR1=1; //开启定时器1
//TI=1;//特别注意:强行使上次数据发送结束,才开始printf (不信可以试试去掉本句试试)
EA=1;
}
void SendASC(uchar d)
{
SBUF=d;
while(!TI);
TI=0;
}
void SendString(uchar *str)
{
while(*str)
{
SendASC(*str) ;
str++;
}
}
// 通讯中断接收程序 中断函数无返回值
void USART_Interrupt(void) interrupt 4 //放在这里 和放在main()里面是一样的
{
EA=0;
flag=1;
if((RxPoint<RxBuf_N)&&RI) //必须判断RI是否为1
{
RI=0;
RxBuf[RxPoint++]=SBUF;
}
RI=0;
EA=1;
}
#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?