这里介绍51的串口使用,详情见附件.
今天发了十篇帖子,都是基于FDR51开发板的,总共有二十多个实验,明天再发把.反正这几天把它发完,希望对学习51的朋友有所帮助.
平台:FDR51开发板
#include<AT89X52.h>
#include"key.h" //包含按键扫描函数的头文件
#include"led.h" //包含数码显示的头文件
/*************************************************************************
IO口宏定义区
**************************************************************************/
sbit beep="P3"^7;
/***************************************************************
全局变量声明区
****************************************************************/
unsigned char Count="0";
/*********************************************************************
定时器0中断初始化函数
**********************************************************************/
void Time0_Init()
{
TMOD = 0x01;
IE = 0x82;
TH0 = 60;
TL0 =175; //12MZ晶振,50ms
}
/*************************************************************************
定时器0中断处理函数
**************************************************************************/
void Time0_Int() interrupt 1
{
TH0 = 60;
TL0 =175; //12MZ晶振,10ms
Count++; //长度加1
}
/****************************************************
程序主函数
*****************************************************/
void main()
{
unsigned char key="0";
unsigned int t="0";
Time0_Init(); //初始化定时器0
while(1)
{
key="getch"();
if(key!=255&&key!=13) //按下按键时
TR0=!TR0; //按下13清零
if(key==13)
t=0;
if(Count==20)
{
t++;
Count="0";
if(t==10000)
t="0";
}
led_display(t);
}
}
文章评论(0条评论)
登录后参与讨论