不管按下0~9哪个键都显示0,调试看没什么问题??问题写在前面,大佬救救我
4. 按键扫描(key=扫描到的按键值)、数码管显示结束一次;key赋一个无关值,不然会每个位一直显示上一个显示的数(在动态显示的情况下)**/还没找到别的解决办法
下面是我的代码,和仿真图,不管按下0~9哪个键都显示0,调试看没什么问题??
———————————
——————————————————————————————————————
#include
#define unchar unsigned char
unchar code seg[]={
0x99,0x92,0x82,0xf8,
unchar count=0;
unchar *array;
unchar scan_key();
unchar input(unchar k);
//******************************************************
{
P2=0xff; //段选,共阳极
while(1)
scan_key();//return key=扫描到的按键值
Display(sum);
}
//*****************************************************
{
P1=0x0f;
delayms(10);
{
{
case 0x0d:hang=1;break;
case 0x07:hang=3;break;
P1=0xf0;
{
case 0xd0:lie=1;break;
case 0x70:lie=3;break;
P1=0x0f;
key=hang*4+lie;
}
unchar input(unchar k)//k=key 扫描到的按键值存入到array[]数组
if(count>8)
if(k>=0&&k<=9)
}
return count;//count : the number of inputed digit
///*****************************************************************
{
for(i=1,j=0;i<=S,j
P3=~(0x80>>j);
P2=0xff;
}
}
void delayms(unchar t)
unchar i,j;
for(j=120;j>0;j--);
}
0