?? 串口通信.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 + -