当前位置:文档之家› AT89C51单片机开发板程序

AT89C51单片机开发板程序

keyinput=P0。
keyinput&=0x0f。
if(keyinput!=0x0f>
{
delay(10>。
P0|=0x0f。
keyinput=P0。
keyinput&=0x0f。
if(keyinput!=0x0f>
{
switch(keyinput>
{
case 0x0e:key=0。break。
case 0x0d:key=1。break。
case 0x0b:key=2。break。
case 0x07:key=3。break。
default:key=0xff。
}
}
}
}
void delay(uint z>
{
uint x,y。
for(x=z。x>0。x-->
for(y=122。y>0。y-->。
}
用矩阵键盘显示LED数码管<0-9,A-F)
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
uchar code a[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,
0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0xff}。
AT89C51单片机开发板程序
1个LED数码管静态显示<0-9)
include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar i。
uchar code a[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}。
IE=0x82。
TMOD=0x01。
TCON=0x30。
while(1>。
}
void TOINT(> interrupt 1
{
TH0=0xd8。TL0=0xf0。
if(P2&1>P1=table[num/10]。else P1=table[num%10]。
P2^=3。
if(++count<100>return。
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
#define mima 3
#define duanma P1
sbit weima=P3^0。
sbit redled=P0^5。
sbit greenled=P0^6。
delay(1000>。
}
}
void delay(uint z>
{
uint x,y。
for(x=z。x>0。x-->
for(y=122。y>0。y-->。
}
void extern1(> interrupt 2
{
P2=0x00。
delay(2000>。
P2=0xff。
delay(2000>。
}
பைடு நூலகம்1位密码锁
{
uint x,y。
for(x=z。x>0。x-->
for(y=122。y>0。y-->。
}
void extern1(> interrupt 2
{
P2=0x00。
delay(2000>。
P2=0xff。
delay(2000>。
}
中断控制流水灯(从左向右>
#include<reg52.h>
#include<intrins.h>
void delay(uint z>。
sbit hang1=P0^3。
sbit hang2=P0^2。
sbit hang3=P0^1。
sbit hang4=P0^0。
void main(>
{
uchar b,c。
c=16。
while(1>
{
hang1=0。
hang2=1。
hang3=1。
hang4=1。
void delay(uint z>。
void main(>
{
uchar b,c。
c=5。
while(1>
{
P0|=0x0f。
b=P0。
b&=0x0f。
if(b!=0x0f>
{
delay(20>。
P0|=0x0f。
b=P0。
b&=0x0f。
if(b!=0x0f>
{
switch(b>
{
case 0x0e:c=1。break。
TMOD|=0x01。
TH0=(65536-10000>/256。
TL0=(65536-10000>%256。
EA=1。
ET0=1。
TR0=1。
while(1>
{
}
}
void timer0(> interrupt 1
{
TH0=(65536-10000>/256。
TL0=(65536-10000>%256。
for(y=122。y>0。y-->。
}
一只闪亮的灯
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit led=P2^0。
void delay (uint z>。
void main(>
{
led=0。
delay(1000>。
count=0。
if(++num>99>num=0。
}
定时控制一只闪亮的灯
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
uint n。
sbit led=P0^0。
void main (>
{
TMOD&=0xf1。
uchar key=0xff。
void scankey(>。
void delay(uint z>。
void main(>
{
weima=0。
while(1>
{
duanma=0xbf。
redled=1。
greenled=1。
scankey(>。
if(key==mima>
{
duanma=0x8c。
greenled=0。
{
case 0xe0:c=12。break。
case 0xd0:c=13。break。
case 0xb0:c=14。break。
case 0x70:c=15。break。
default:c=16。
}
}
}
P3&=0xf0。
P2=a[c]。
}
}
void delay(uint z>
{
uint x,y。
for(x=z。x>0。x-->
case 0x0d:c=2。break。
case 0x0b:c=3。break。
case 0x07:c=4。break。
default:c=0。
}
}
}
P1&=0xfe。
P2=a[c]。
}
}
void delay(uint z>
{
uint x,y。
for(x=z。x<0。x-->
for(y=122。y<0。y-->。
default:c=16。
}
}
}
P3&=0xf0。
P2=a[c]。
hang1=1。
hang2=0。
hang3=1。
hang4=1。
P0|=0xf0。
b=P0。
b&=0xf0。
if(b!=0xf0>
{
delay(10>。
P0|=0xf0。
b=P0。
b&=0xf0。
if(b!=0xf0>
{
switch(b>
delay(3000>。
key=0xff。
}
if(key!=0xff>
{
duanma=0x86。
redled=0。
delay(3000>。
key=0xff。
}
else
{
duanma=0xbf。
redled=1。
greenled=1。
}
}
}
void scankey(>
{
uchar keyinput。
P0|=0x0f。
b=P0。
b&=0xf0。
if(b!=0xf0>
{
delay(10>。
P0|=0xf0。
b=P0。
b&=0xf0。
if(b!=0xf0>
{
switch(b>
相关主题