📄 串口通信.c
字号:
/***********************************************************************************/
/* 程序名:单片机接收字符 */
/* */
/* 晶振:12.0 M CPU型号:AT89S52 */
/* */
/* */
/* 功能描述: */
/* */
/* */
/* 网址:http://www.mcu-arm.cn */
/* 邮箱:mcu-arm2007@163.com
/* QQ技术群:2056101 */
/* */
/* */
/* 创灵电子工作室 版权所有 */
/* 2007-12-20 */
/************************************************************************************/
#include <reg51.h>
#define uchar unsigned char
#define uint unsigned int
static uchar Num;
uchar SEG_TAB[] = {0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8, 0x80, 0x90};//0-9数字
sbit P2_0 = P2^0;
sbit P2_1 = P2^1;
/********************************************************************************************
* 函数名称:Delay()
* 功 能:软件延时
* 入口参数:无符号的整型变量
* 出口参数:无
*********************************************************************************************/
void Delay(uint t)
{
uchar i ;
while(t--)
{
for(i = 0;i <125;i++)
{;}
}
}
/********************************************************************************************
* 函数名称:Disp()
* 功 能:显示函数
* 入口参数:无
* 出口参数:无
*********************************************************************************************/
void Disp(void)
{
P2_1 = 0;
P0 = SEG_TAB[ Num/10 ];
Delay(1);
P2_1 = 1;
P2_0 = 0;
P0 = SEG_TAB[ Num%10 ];
Delay(1);
P2_0 = 1;
}
/********************************************************************************************
* 函数名称:main()
* 功 能:主函数
* 入口参数:无
* 出口参数:无
*********************************************************************************************/
void main(void)
{
TMOD = 0x20;
TL1 = 0xfd; TH1 = 0xfd;
SCON = 0xd8;PCON = 0x00;
TR1 = 1;
while(1)
{
Disp();
if(RI == 1)
{
RI = 0;
Num = SBUF;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -