欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 請教單片機C語言結(jié)構(gòu)體中數(shù)據(jù)和4*5矩陣鍵盤相關(guān)的問題 [打印本頁]

作者: 花田雨    時間: 2020-3-3 17:24
標題: 請教單片機C語言結(jié)構(gòu)體中數(shù)據(jù)和4*5矩陣鍵盤相關(guān)的問題
typedef struct A
{
char num[3];
long n;
struct user *next;
};
struct A *p;

p=(struct A*)malloc(LEN);
p->n=0;

怎么表示新開辟的單元里數(shù)組的首地址啊
p->num好像不對

而且用液晶顯示p->n卻是-1

編寫的液晶顯示函數(shù)沒有問題,可以顯示數(shù)字和用首地址顯示字符串


圖片中矩陣鍵盤y5也接收不到信號,不管按沒按下,一直是高,我是用x1-x4輸出掃描,其中輸入檢測y1-y4為P0上的,y5是P2^3,就接收不到了
以下是代碼
sbit y1 = P0^4;
sbit y2 = P0^5;
sbit y3 = P0^6;
sbit y4 = P0^7;
sbit y5 = P2^3;
sbit x4 = P0^3;
sbit x3 = P0^2;
sbit x2 = P0^1;
sbit x1 = P0^0;


void KeyScan(void)
{
char i=0,a=0;
for(i=0;i<4;i++)//循環(huán)4次,i逐次加1
{  
switch(i)
  {
   case 0:x1=0;x2=1;x3=1;x4=1;break;
   case 1:x1=1;x2=0;x3=1;x4=1;break;
   case 2:x1=1;x2=1;x3=0;x4=1;break;
   case 3:x1=1;x2=1;x3=1;x4=0;break;
  }
   if(!y1){delayms(20);if(!y1){a=i+1;while(!y1);break;}}
   if(!y2){delayms(20);if(!y2){a=i+5;while(!y2);break;}}
   if(!y3){delayms(20);if(!y3){a=i+9;while(!y3);break;}}
   if(!y4){delayms(20);if(!y4){a=i+13;while(!y4);break;}}
    if(!y5){delayms(20);if(!y5){a=i+17;while(!y5);break;}}
/*鍵盤通過a值來判斷按哪個鍵
       第一列   第二列   第三列   第四列
第一行 a=1      a=2      a=3     a=4
第二行 a=5      a=6.......
第三行 a=9.......
第四行  a=13...*/
}
  switch(a)
  {
   case 1:KeySta[0][0]=KeyMap[0][0];break;
   case 2:KeySta[0][1]=KeyMap[0][1];break;
   case 3:KeySta[0][2]=KeyMap[0][2];break;
   case 4:KeySta[0][3]=KeyMap[0][3];break;
   case 5:KeySta[1][0]=KeyMap[1][0];break;
   case 6:KeySta[1][1]=KeyMap[1][1];break;
   case 7:KeySta[1][2]=KeyMap[1][2];break;
   case 8:KeySta[1][3]=KeyMap[1][3];break;
   case 9:KeySta[2][0]=KeyMap[2][0];break;
   case 10:KeySta[2][1]=KeyMap[2][1];break;
   case 11:KeySta[2][2]=KeyMap[2][2];break;
   case 12:KeySta[2][3]=KeyMap[2][3];break;
   case 13:KeySta[3][0]=KeyMap[3][0];break;
   case 14:KeySta[3][1]=KeyMap[3][1];break;
   case 15:KeySta[3][2]=KeyMap[3][2];break;
   case 16:KeySta[3][3]=KeyMap[3][3];break;
   case 17:KeySta[4][0]=KeyMap[4][0];break;
   case 18:KeySta[4][1]=KeyMap[4][1];break;
   case 19:KeySta[4][2]=KeyMap[4][2];break;
   case 20:KeySta[4][3]=KeyMap[4][3];break;
default:break;
}
}





歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1