音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費(fèi)注冊(cè) 首頁(yè) | 行業(yè)黑名單 | 幫助
維庫(kù)電子市場(chǎng)網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

求:大家怎么做的4*4鍵盤(pán)矩陣掃描?有什么好方法?

作者:wangyanshuai 欄目:單片機(jī)

我想問(wèn)好手們,這個(gè)程序到底怎么編又好有簡(jiǎn)潔?告訴我方法也行,我有點(diǎn)彷徨了!

2樓: >>參與討論
93622215

其實(shí)很簡(jiǎn)單!我給你一個(gè)3×4的例子!

程序:uchar kbscan(void)
{
  uchar col,row;
  P1=0xf0;
  if((P1&0xf0)!=0xf0)
  {
    delay1(10);
    if((P1&0xf0)!=0xf0)
       {
      col=(~P1)&0xf0;
   P1=0xfe;
   while((P1&0xf0)==0xf0)
      P1=(P1<<1)|0x01;
           row=(~P1)&0x0f;
   return(row|col);
    }
else return(0x20);
  }
  else return(0x20);
}


3樓: >>參與討論
wangyanshuai

特別感謝,C 語(yǔ)言編程剛學(xué),所以沒(méi)有很簡(jiǎn)潔的編程經(jīng)驗(yàn)啊

4樓: >>參與討論
lihai813

思路是這樣的:

假設(shè)鍵盤(pán)接在P1口,首先給P1高4位設(shè)高電平,低4位設(shè)低電平,也就是0xF0;

然后循環(huán)檢測(cè)P1是否等于0xF0,(也可以用中斷),不等于就證明有鍵按下,并記下P1口的值;

高4位中哪一位被拉低了就可以知道按鍵在哪行(或者哪列),剩下只有4個(gè)可能按鍵;

分別把高4位中的一位置低,看哪位置低后P1口等于前面記下的值,按鍵就在這一列(或者行)。

5樓: >>參與討論
wangyanshuai

非常之感謝

6樓: >>參與討論
zwt659
好東東
7樓: >>參與討論
2539037005

強(qiáng),學(xué)習(xí)一下,挺有用的

8樓: >>參與討論
AVR_AFA

添加了一個(gè)簡(jiǎn)單的4x4鍵盤(pán)讀取程序。

基于AVR單片機(jī)采用查表方式做的。

9樓: >>參與討論
490386390
我也不清楚,我問(wèn)一下我們老師哈
10樓: >>參與討論
星際爭(zhēng)霸
很多的書(shū)上都有,多看看就知道了
11樓: >>參與討論
danny032

用C編寫(xiě)起來(lái)簡(jiǎn)單又用意看懂

可是用匯編寫(xiě)太長(zhǎng)了啊~~~~

12樓: >>參與討論
LB
匯編和C都要學(xué)習(xí)
13樓: >>參與討論
Jaylunix

請(qǐng)問(wèn)樓上的是怎么實(shí)現(xiàn)“基于AVR單片機(jī)采用查表方式做的”的阿?

可否提供參考程序阿?小弟用了常規(guī)的方法使用過(guò)程中好像都不大穩(wěn)定阿

先謝過(guò)了!

14樓: >>參與討論
sagetom
反轉(zhuǎn)法,行掃描法!
參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
基于51系列單片機(jī)的數(shù)控直流電源
快速開(kāi)關(guān)
[求助]一個(gè)新手的入門(mén)求教,各位大蝦請(qǐng)指點(diǎn)
藍(lán)牙車載等晶體晶振元件
請(qǐng)問(wèn)1MHZ頻率信號(hào)可以用什么方法測(cè)量?
免費(fèi)注冊(cè)為維庫(kù)電子開(kāi)發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào)