三種方法讀取鍵值 使用者設計行列鍵盤介面,一般常採用三種方法讀取鍵值。 中斷式 在鍵盤按下時產生一個外部中斷通知CPU,並由中斷處理程式通過不同位址讀資料線上的狀態判斷哪個按鍵被按下。 本實驗採用中斷式實現使用者鍵盤介面。 掃描法 對鍵盤上的某一行送低電位,其他為高電位,然後讀取列值,若列值中有一位是低,表明該行與低電位對應列的鍵被按下。否則掃描下一行。 反轉法 先將所有行掃描線輸出低電位,讀列值,若列值有一位是低表明有鍵按下;接著所有列掃描線輸出低電位,再讀行值。 根據讀到的值組合就可以查表得到鍵碼。4x4鍵盤按4行4列組成如圖電路結構。按鍵按下將會使行列連成通路,這也是見的使用者鍵盤設計電路。 //-----------4X4鍵盤程序--------------// uchar keboard(void) { uchar xxa,yyb,i,key; if((PINC&0x0f)!=0x0f) //是否有按鍵按下 {delayms(1); //延時去抖動 if((PINC&0x0f)!=0x0f) //有按下則判斷 { xxa=~(PINC|0xf0); //0000xxxx DDRC=0x0f; PORTC=0xf0; delay_1ms(); yyb=~(PINC|0x0f); //xxxx0000 DDRC=0xf0; //復位 PORTC=0x0f; while((PINC&0x0f)!=0x0f) //按鍵是否放開 { display(data); } i=4; //計算返回碼 while(xxa!=0) { xxa=xxa>>1; i--; } if(yyb==0x80) key=i; else if(yyb==0x40) key=4+i; else if(yyb==0x20) key=8+i; else if(yyb==0x10) key=12+i; return key; //返回按下的鍵盤碼 } } else return 17; //沒有按鍵按下 }
上傳時間: 2013-11-12
上傳用戶:a673761058
這是用verilog寫的一個簡單的處理器,雖然只具有5個指令,但是可以透過這個範例,來了解到cpu的架構,與如何開發處理器,相信會有很大的啟發。
標簽: verilog
上傳時間: 2014-12-08
上傳用戶:ikemada
Debussy是NOVAS Software, Inc(思源科技)發展的HDL Debug & Analysis tool,這套軟體主要不是用來跑模擬或看波形,它最強大的功能是:能夠在HDL source code、schematic diagram、waveform、state bubble diagram之間,即時做trace,協助工程師debug。 可能您會覺的:只要有simulator如ModelSim就可以做debug了,我何必再學這套軟體呢? 其實Debussy v5.0以後的新版本,還提供了nLint -- check coding style & synthesizable,這蠻有用的,可以協助工程師了解如何寫好coding style,並養成習慣。 下圖所示為整個Debussy的原理架構,可歸納幾個結論:
標簽: Analysis Software Debussy Debug
上傳時間: 2014-01-14
上傳用戶:hustfanenze
Struts結合了數個技術,為了要瞭解Struts,您必須先瞭解JSP/Servlet相關技術,必須先瞭解MVC、Model 1、Model 2等架構模式。
標簽: Struts
上傳時間: 2013-12-21
上傳用戶:lhc9102
類神經網路,MLP程式碼,可以計算多層架構之類神經網路運算~C
標簽:
上傳時間: 2013-12-28
上傳用戶:txfyddz
JVT所釋出的H.264/MPEG-4 AVC REFERENCE SOFTWARE MANUAL,,裡面詳細介紹了jm的架構,以及其中 各種演算法所存在的類別,所以接觸jm的朋友,是一個非常好的嚮導,幫助你了解大概的jm雛形.
標簽: REFERENCE SOFTWARE MANUAL MPEG
上傳時間: 2013-12-20
上傳用戶:athjac
GPRS_CHT技術文檔,包括主要詳細介紹GPRS的通訊協定,內容包括GPRS 所要提供的功能、系統架構、 各個網路元件、各元件間定義的介面、計費系統與GSM 演進為GPRS 所採 行的方式。其中GPRS 介面部份,抽出來獨立成為GPRS_Interface 檔案
上傳時間: 2014-01-20
上傳用戶:huannan88
使用Flash提供的Web Service的能力,利用這個能力與SOAP Server連接並做資料的存取。而這篇文章將以一個極簡單的範例來說明如何透過Flash取得想要的資料。關於SOAP Server的製作請參考之前撰寫的"Pyhon的SOAP Library"這篇文章,這篇文章有教大家如何使用python這個程式語言實作一個RPC Server,提供其他程式作遠端呼叫。我提供RPC Server的製作,而我會使用python來架構RPC Server,使用python內建的函式庫來實作該Server。 需要工具; 1. Flash 8.0 2. Python 2.3 以上
上傳時間: 2014-01-25
上傳用戶:cc1915
在GIS領域中,目前正有一新興的架構模式產生,此架構改變了GIS處理圖資的方式,此架構模式稱為DGIS(Distributed GIS-分散式地理資訊系統)。DGIS將傳統桌上型單機作業之GIS概念延伸至網際網路(Web)之解決方案上,以能符合現行系統圖資處理之需求。而此種以分散式概念延伸至網際網路的架構稱之為網際網路地理資訊系統(WebGIS或Internet GIS)。
標簽: GIS
上傳時間: 2014-01-17
上傳用戶:dongbaobao
OPEN-JTAG ARM JTAG 測試原理 1 前言 本篇報告主要介紹ARM JTAG測試的基本原理?;镜膬热莅薚AP (TEST ACCESS PORT) 和BOUNDARY-SCAN ARCHITECTURE的介紹,在此基礎上,結合ARM7TDMI詳細介紹了的JTAG測試原理。 2 IEEE Standard 1149.1 - Test Access Port and Boundary-Scan Architecture 從IEEE的JTAG測試標準開始,JTAG是JOINT TEST ACTION GROUP的簡稱。IEEE 1149.1標準最初是由JTAG這個組織提出,最終由IEEE批準並且標準化,所以,IEEE 1149.1這個標準一般也俗稱JTAG測試標準。 接下來介紹TAP (TEST ACCESS PORT) 和BOUNDARY-SCAN ARCHITECTURE的基本架構。
標簽: JTAG BOUNDARY-SCAN OPEN-JTAG ARM
上傳時間: 2016-08-16
上傳用戶:sssl