求微控制器 掃瞄法和反線法簡介描述!急!!!

2025-03-31 02:15:19 字數 3085 閱讀 8216

求微控制器4*4矩形鍵盤行掃瞄法的掃瞄過程和原理!

1樓:網友

反轉法鍵盤掃瞄過程:1)p3高4位為列低4位為行讓高4位為1低4位為判斷是否有按鍵按下,如果有按鍵按下則高4位上的有一位為低電平。3)去抖動程式。

4)繼續判斷。5)儲存高4位上的按鍵情況。6)判斷是否有按鍵按下,如果有按鍵按下則低4位上的有一位為低電平。

7)去抖動。8)繼續判斷。9)儲存低4位上的按鍵情況。

2樓:網友

1、全掃瞄。

2、橫豎交替掃瞄。

3樓:acg影印件

原理:向所有行輸出低電平,若無鍵按下,則+5v電壓經電阻r使得所有列的輸出均為高電平;如有鍵按下,就會將所在列鉗位到低電平。此時讀列線便可知道是否有鍵按下。

如果有按下,便可開始尋找按鍵鍵碼(接2)。

逐行掃瞄)首先向第0行輸出低電平,其餘行輸出高電平。若列線讀取的值全為1,說明按下的鍵不在第0行;若某一列讀取為0,則可確定按鍵的鍵碼(行號+列號)

然後向第1行輸出低電平,其餘行輸出高電平,…(重複該過程)

微控制器鍵盤行列掃瞄法程式問題

4樓:網友

while(1) 裡面,你不按的時候n一直等於0xff,如果你的數碼管是共陰的,那肯定一直亮的,default:return 0xff;break; 改成 default:return 0;break; 就可以。

乙個關於微控制器鍵盤行列反轉掃瞄法的問題

5樓:夢舞湖畔

uchar keyscan()//鍵盤掃瞄,使用行列反轉掃瞄法。

return(key); //有鍵按下返回行列值,無鍵按下返回0}

6樓:做而論道

按鍵沒有按下時,你返回的,是多少?

用行列反轉法進行微控制器矩陣鍵盤掃瞄,解釋一下下面的程式

7樓:做而論道

keyport=0x0f; //行線輸出全為0cord_h=keyport&0x0f; //讀入列線值這兩句**最後造成的結果就是使得cord_h=0x0f。

這樣的話,完全沒有任何的意義呀,--

不一定是 0f。

有按鍵時,也可能是 07,也可能是 0d,也可能是 0e,也可能是 0b。

8樓:網友

你這是不看電路就分析啊?

keyport=0x0f; //行線輸出全為0那說明行線是keyport的高四位,cord_h=keyport&0x0f; //讀入列線值這個說明讀低4位,之後判斷有沒有變成0的。

如果沒按鍵按下,低4位怎麼變成0呢?

51微控制器,4*4矩陣鍵盤,掃瞄法

9樓:徐志尚

逐行掃瞄法和反轉法!

51微控制器的查表法 的 原理是 什麼 ?透徹點給解釋下吧!

10樓:沙裡波特

原理,很簡單。

就是你開飯店,事先,你得準備好多種菜品的材料,放在冷庫。

顧客上門,點什麼,你馬上就能做什麼。不要現出去買。

11樓:落葉城主

查表法來,就是將你的一自些固定的資料儲存到程式存bai儲器中,當你的du程式中。

需要這些zhi資料時,movc指令讀取dao這些資料。舉例假設你的系統要用數碼管顯示0-9這10個數字,而假設這10個數字各自的斷碼(點亮時io口相應的電平)分別為。

0xc0, //"0"

0xf9, //"1"

0xa4, //"2"

0xb0, //"3"

0x99, //"4"

0x92, //"5"

0x82, //"6"

0xf8, //"7"

0x80, //"8"

0x90, //"9"

你有兩種方法儲存這時個資料,一種是在資料區用十個位元組儲存這些資料(資料常量),但這會佔用你的資料儲存器空間。另外一種方法就是把這些不變的數放到程式空間中,到需要的時候到程式空間中讀取,這便是查表。也就是在程式空間中建立乙個表,假設你需要就9這個數值的斷碼,就去表中檢視一下9對應的資料。

12樓:網友

將資料表存在flash區,使用movc指令讀取。

13樓:網友

給你講bai一句最「透徹」的話吧,所du謂的51微控制器zhi的「查表法」dao其實就是一種版通過特定指令:

movc a, @a+pc

movc a, @a+dptr

去特權定儲存區(注意,是程式儲存單元,不是內部和外部ram單元)讀資料而已。

對於 movc a, @a+pc 指令,是以當前pc(程式計數器值)作為基址暫存器,a的內容作為無符號數和pc內容(下一條指令的起始位址)相加後得到乙個16位的位址,由該位址指出的程式存貯器單元內容送到累加器a。

而對於 movc a, @a+dptr 指令,則是以dptr作為基址暫存器,a的內容作為無符號數和dptr的內容相加得到乙個16位的位址,由該位址指出的程式存貯器單元的內容送到累加器a。

微控制器矩陣鍵盤按鍵行列逐級掃瞄法

14樓:網友

unsigned char keyscan(void) //鍵盤掃瞄函式,使用行列逐級掃瞄法。

15樓:網友

你把十六進位換成2進位,全部讀一遍程式就明白了。

16樓:網友

提問者看錯程式了,這是四乘四的矩陣,高四位低四位,不是高八位,全部八位都置1就掃瞄不到按鍵操作了。 val=keyport&0xf0是得出按了哪個鍵,至於val+=0x0e,沒看出來,要看他後面的程式做了什麼。

微控制器子程式設計,求平方時用查表法,其內部是如何運作的?

17樓:網友

通過movc a,@a+pc查詢a-1的平方,a-1的平方放在tab裡,你得先知道pc是16位程式計數器,存放指令的位址。

求51微控制器c語言教程 ,求51微控制器c語言教程 pdf

微控制器學習方法 網上微控制器資料很多 你上csdn上找吧 那上面多的是 這個網上的太多了。你搜一下,有很多 的。這種東西多得很,你應該先搜搜再提問 急求郭天祥 新概念51微控制器c語言教程 入門 提高 開發 拓展全攻略 pdf 這是郭天祥這本書最完整的pdf,是整本的,不是一部分。望採納 從入門到...

微控制器原理的參考文獻有哪些,急求關於微控制器的外文參考文獻五篇,不要具體內容,只要標題,作者,年份,型別等就可以了

1 李廣弟等 微控制器基礎 北京航空航天出版社,2001.7 2 樓然苗等 51 系列微控制器設計例項 北京航空航天出版社,2003.3 3 唐俊翟等 微控制器原理與應用 冶金工業出版社,2003.9 4 劉瑞新等 微控制器原理及應用教程 機械工業出版社,2003.7 5 吳國經等 微控制器應用技術...

微控制器的定時和計數有什麼區別,微控制器片內定時器與計數器的主要區別是什麼

2 計數物件不同 定時器實際上也是計數器,只是計數的是固定週期的脈衝 計數器只是計數時間。微控制器也被稱為單片微控器,屬於一種整合式電路晶片。在微控制器中主要包含cpu 只讀儲存器rom和隨機儲存器ram等,多樣化資料採集與控制系統能夠讓微控制器完成各項複雜的運算,無論是對運算子號進行控制,還是對系...