这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 为何同样的硬件原理图,我的板子上运行不了,别人的板可以?

共1条 1/1 1 跳转至

为何同样的硬件原理图,我的板子上运行不了,别人的板可以?

工程师
2020-11-02 23:05:02     打赏

最近用51单片机做了一个按键控制数码管的小东东,为何同样的硬件原理图,发给老师傅运行没问题,在另一个师兄那里数码管不亮,在我这里实现不了按键控制,想知道是什么问题.....

还希望大家帮帮忙


我的源码如下:


#include <reg51.h>
#define uint unsigned int
uint k;
unsigned char   x,y,z;
unsigned char seg7code[16]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
void delayms()
{
uint i,j;
for(i=200;i>0;i--)
  for(j=100;j>0;j--);
}
void scannkey()
{
P3=0x0f;

while(P1==0x0f);

if(P3!=0x0f)
{
  delayms();                      

   x=P3;
   P3=0xf0;
   y=P3;
   z=x|y;
   switch(z)
   {
         
    case(0xee):k=0;break;
    case(0xde):k=1;break;
    case(0xbe):k=2;break;
    case(0x7e):k=3;break;
    case(0xed):k=4;break;  
    case(0xdd):k=5;break;  
    case(0xbd):k=6;break;  
    case(0x7d):k=7;break;
    case(0xeb):k=8;break;   
    case(0xdb):k=9;break;  
    case(0xbb):k=10;break;  
    case(0x7b):k=11;break;
    case(0xe7):k=12;break;   
    case(0xd7):k=13;break;  
    case(0xb7):k=14;break;
    case(0x77):k=15;break;
      }
  }
}

//====================== 主程序
void main()
{
while(1)
{
  scannkey();
  P0=seg7code[k];
}
}





关键词: 按键     源码     故障     数码管    

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]