本文包含原理图、PCB、源代码、封装库、中英文PDF等资源
您需要 登录 才可以下载或查看,没有账号?注册会员
×
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
code uchar table[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0x0F8,0x80,0x90,0x88,0x83,0x0C6,0x0A1,0x86,0x8E,0x0FF};
uchar num,n,i,j,k;
/**********八段数码管的位选**********/
sbit p10=P1^0;
sbit p11=P1^1;
/*********ad0809特殊i/0口的定义***********/
sbit eoc=P2^0;
sbit start=P2^1;
sbit oe=P2^3;
/*********地址选择定义*******/
sbit c=P2^5;
sbit b=P2^6;
sbit a=P2^7;
/************延时子函数50ms*************/
void delay(uchar n)
{
for(i=0;i<n;i++)
{
for(j=0;j<110;j++)
{
;
}
}
}
/**********八段数管的显示子函数*****************/
void display(uchar num)
{
p10=1;
P3=table[num/10];
delay(5);
p10=0;
p11=1;
P3=table[num%10];
delay(5);
p11=0;
}
/************初始化(0809地址选择,数码段的初始化状态都为灭)*********/
void init()
{
p10=0;
p11=0;
a=0;
b=0;
c=0;
//ale=1;
// start=1;
// delay(2);
// start=0;
}
/********ad0809的数据读取跟显示******************/
void ad0809()
{
//uchar temp;
oe=0;
start=0;
start=1;
start=0;
delay(2);
while(eoc==0);
oe=1;
k=P0;
oe=0;
// return(k);
/*********测试是否进行转化已经结束display(40)****************/
//display(40);
display(k);
}
void main()
{
//uchar k1;
init();
while(1)
{
ad0809();
// k1=ad0809();
// display(k1);
// display(40);
}
}
截图00.rar
(38.74 KB, 下载次数: 0)
|