📄 串口测温.c
字号:
/*打开串口调试程序,将波特率设置为9600,无奇偶校验
晶振11.0592MHz,发送和接收使用的格式相同,如都使用
字符型格式,在发送框输入 hello,I Love MCU ,在接
收框中同样可以看到相同字符,说明设置和通信正确
www。doflye。cn 上海浩豚电子科技
*/
#include <REG52.H>
#include <stdio.h>
sbit KEY = P3^3;
unsigned char Flag;
unsigned char Temp[5]="25.32";
/*主程序*/
void Delay(unsigned char i)
{
while(--i);
}
void main (void)
{
unsigned char i; //定义临时变量
unsigned int j;
SCON = 0x50; /* SCON: 模式 1, 8-bit UART, 使能接收 */
TMOD |= 0x20; /* TMOD: timer 1, mode 2, 8-bit reload */
TH1 = 0xFD; /* TH1: reload value for 9600 baud @ 11.0592MHz */
TR1 = 1; /* TR1: timer 1 run */
EA = 1; /*打开总中断*/
ES = 1; /*打开串口中断*/
TI = 1;
while (1) /*主循环不做任何动作*/
{
if(Flag == 's')
{
Flag=0;
for(i=0;i<5;i++){
while(!TI);
TI=0;
SBUF = Temp[i];
}
}
Delay(250);
j++;
//sprintf(Temp,"5%s",j);
}
}
void UART_SER (void) interrupt 4 //串行中断服务程序
{
if(RI) //判断是接收中断产生
{
RI=0; //标志位清零
Flag=SBUF; //读入缓冲区的值
P1=Flag; //把值输出到P1口,用于观察
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -