单片机流程图.docx
- 文档编号:1852371
- 上传时间:2022-10-24
- 格式:DOCX
- 页数:11
- 大小:108.44KB
单片机流程图.docx
《单片机流程图.docx》由会员分享,可在线阅读,更多相关《单片机流程图.docx(11页珍藏版)》请在冰豆网上搜索。
单片机流程图
单片机总流程图
主函数程序
#include
#include
#defineucharunsignedchar
#defineuintunsignedint
#defineOSC_FREQ12000000
#define__10ms(65536-OSC_FREQ/(12000000/9970))
#defineCOM8255XBYTE[0XFFF3]
#definePA8255XBYTE[0XFFF0]
#definePB8255XBYTE[0XFFF1]
#definePC8255XBYTE[0XFFF2]
ucharcodetab[]={0xFC,0x60,0xDA,0xF2,0x66,0xB6,0xBE,0xE0,0xFE,0xF6};
ucharcodedis_HELLO[]={0x89,0x86,0xc7,0xc7};
ucharcodedis_op51[]={0xc0,0x8c,0x92,0xf9};
ucharcodedis_code[]={0xcf,0xa4,0xcf,0xa4};
ucharucCnt_10ms=99;
uchari=0;
ucharJ=0;
ucharn=0;
ucharled1;
ucharled2;
sbitP2_4=P2^4;
sbitP3_7=P3^7;
sbitP1_0=P1^0;
sbitP1_1=P1^1;
sbitP1_2=P1^2;
voidDisp_op51();
voidDisp_HELLO();
voidSet_Init_Xint();
voidSet_Init_Timer();
voidDisp_t();
voidDelayX1ms(uintcount);
voidDisp_8255();
voidmain()
{
for(;;)
{
Set_Init_Xint();
Set_Init_Timer();
Disp_8255();
//ucCnt_10ms=99;
//ucLed1=6;
//ucLed2=8;
if(n>=1)
{
for(;;)
{
Disp_HELLO();
if(PB8255==0xef)
{
for(;;)
{
Disp_op51();
Disp_t();
for(i=0;i<0xff;i++);
}
}
for(i=0;i<0xff;i++);
}
}
}
}
定时器T0流程图
定时器初始化函数程序
voidSet_Init_Timer()
{
TMOD=0x01;
TH0=__10ms/256;
TL0=__10ms%256;
EA=1;
ET0=1;
}
定时器中断服务函数程序
Run_Time0(void)interrupt1using2
{
TR0=0;
TH0=__10ms/256;
TL0=__10ms%256;
TR0=1;
ucCnt_10ms++;
if(ucCnt_10ms==200)//1s
{ucCnt_10ms=0;
led1++;
if(led1==10)//1S时间到更新显示缓冲值
{
led1=0;led2++;}
if(led2==10)
{
led2=0;
}
}
}
外部中断0流程图
外部中断初始化函数程序
voidSet_Init_Xint()
{
IT0=1;
EX0=1;
EA=1;
}
定时器中断服务函数程序
Run_Xint0(void)interrupt0using1
{
n++;
TR0=1;
}
独立式按键流程图
8255定义入口
#defineCOM8255XBYTE[0XFFF3]
#definePA8255XBYTE[0XFFF0]
#definePB8255XBYTE[0XFFF1]
#definePC8255XBYTE[0XFFF2]
sbitP3_7=P3^7;
sbitP1_0=P1^0;
sbitP1_1=P1^1;
sbitP1_2=P1^2;
8255初始化函数程序
voidDisp_8255()
{
P3_7=0;
P1_0=0;
P1_1=1;
P1_2=0;
COM8255=0x82;
}
HELLO显示函数程序
voidDisp_HELLO()//HELLO显示函数
{
SCON=0x00;
SBUF=0xFC;
P2_4=0;
while(!
TI);
TI=0;
P2_4=1;
P2_4=0;
SBUF=0x02;
while(!
TI);
TI=0;
P2_4=1;
P1=0x7A;
P2=dis_HELLO[0];
DelayX1ms(5);
P1=0xBA;
P2=dis_HELLO[1];
DelayX1ms(5);
P1=0xDA;
P2=dis_HELLO[2];
DelayX1ms(5);
P1=0xEA;
P2=dis_HELLO[3];
DelayX1ms(5);
}
OP51显示函数程序
voidDisp_op51()
{
P1=0x7F;
P2=dis_op51[0];
DelayX1ms(5);
P1=0xBF;
P2=dis_op51[1];
DelayX1ms(5);
P1=0xDF;
P2=dis_op51[2];
DelayX1ms(5);
P1=0xEF;
P2=dis_op51[3];
DelayX1ms(5);
}
0~99显示函数程序
voidDisp_t()
{
SCON=0x00;
SBUF=tab[led2];
P2_4=0;
while(!
TI);
TI=0;
P2_4=1;
P2_4=0;
SBUF=tab[led1];
while(!
TI);
TI=0;
P2_4=1;
}
延时10ms函数程序
voidDelayX1ms(uintcount)
{
uintj;
while(count--!
=0)
{
for(j=0;j<72;j++);
}
}
欢迎您的下载,
资料仅供参考!
致力为企业和个人提供合同协议,策划案计划书,学习资料等等
打造全网一站式需求
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 流程图