求51单片机的c语言程序

时间:2016.05.31 发布人:zhenghaili1022

求51单片机的c语言程序

已解决问题

谷歌zhenghaili1022用户在2016.05.31提交了关于“张爱玲求51单片机的c语言程序”的提问,欢迎大家涌跃发表自己的观点。目前共有1个回答,最后更新于2025-02-14T21:28:04。希望大家能够帮助她。

详细问题描述及疑问:期待您的答案,谢了,下次有事儿别忘了找我 !

希望以下的回答,能够帮助你。

第1个回答

用户名:ningcheng521  

#include<s刑tc89.h>
#include<intrins.h>
#defineucharunsignedchar
#defineuin概策tunsignedint

ucharcodetable[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6331215问答d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71,
0x00};
斗富诉盾输措既测ucharled[]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F,0x00,0xFF};
sbitadrd=阿走调钱客育执单者块果P3^7;
sbitadwr=P3^6;
sbit**la=P2^6;
sbitwel维训括a=P2^7;

uchard取松ate1=0;
ucha些验rdate2=50;
uchardate3=100;
u讲犯克chardate4=15李肥握田侵示万士演想难0;
uchardate5=200;
uchardate6=255;

uchara,sz;

voidinit();
voiddelay(uintz);
ucharadchushihua();
voidshumaguan(uintshu);
voidprocessing();
voidmain()
{
init();

while(1)
{

sz=adchushihua();
for(a=10;a>0;a--)
{
shumaguan(sz);
p报立rocessing()呀;
}
}
}

voidinit口居根()
{

P0=0x7f;

}
voiddelay(uintz)
{
uintx,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}

ucharadchushihua()
{
ucharshuzhi;
adwr=1;
_n金鱼肉乱伤办秋力op_();
adwr=0;
_nop_();
a力良损dwr=1;

P1=0xff;

adrd=1;
_nop_();
adrd=0;
_nop_();
shuzhi=P1;
adrd=1;

returnshuzhi;
}
voidshumaguan(uintshu)
{
ucharbai,shi,g把父e;
bai=shu/100;
shi=shu%100/10;
ge=shu%10;

**la=1;
P0=tabl月兰投操示代集e[bai];
**la=0;
P0=0xff;
wela=1;
P0=0x7e;
wela=0;
delay(5);

**la=1;
P0=table[shi];
**la=0;
P0=0xff;
wela=1;
P0=0x7d;
wela=0;
delay(5);

**la=1;
P0=table[ge];
**la=0;
P0=0xff;
wela=1;
P0=0x7b;
wela=0;
delay(5);

}

voidprocessing()
{
if((sz>=date1)&&(sz<=date2))
{
P1=0xfe;
}
elseif((sz>=date2)&&(sz<=date3))
{
P1=0xfd;
}
elseif((sz>=date3)&&(sz<=date4))
{
P1=0xfb;
}
elseif((sz>=date4)&&(sz<=date5))
{
P1=0xf7;
}
elseif((sz>=date5)&&(sz<date6))
{
P1=0xef;
}
elseif(sz==date6)
{
P1=~P1;
delay(20);

}

}

这个是我刚刚写的根据你的需要反正闲来无事我写的比较笼统需要你自己根据自己的实际情况来判断确定我只是利用AD简单的处理成数码管显示的数字你要是转换成电压那就把里面的变量修改一下我写的那个控制LED灯亮就不要动了只是修改一下他前面定义的数字就可以最后那个是我自己加上去的有点趣味性希望对你有帮助