導航:首頁 > 操作系統 > 單片機p1口怎麼檢測

單片機p1口怎麼檢測

發布時間:2024-11-05 10:43:22

1. 51單片機關於P1口的實驗

如果實物按圖這樣接,51早就燒了。P1.5接電源,proteus里可能是算為高電平,即寫1了。你可以串一隻10K上拉電阻,這樣才真正相當於寫1

2. 如何檢測單片機P1.0的電壓

我感覺你的最終目的是在電源掉電前要計算機要執行一套保護現場或者其他的動作。那麼用這種方法就太慢了,計算機可能沒時間進行處理。
推薦你個電路,MAX813L,你可以使用它的第4腳的功能。將7805輸入端的電壓經2個電阻分壓後輸入4腳,保證正常情況下4腳稍高於1.25V。
當電源掉電時,15V濾波電容上的電壓逐漸下降,當4腳低於1.25V,MAX813L的5腳輸出低電平,接入單片機進行判斷和採取措施。
由於15V濾波電容比較大,可以保證程序有足夠的時間來進行掉電處理。

如果你只是判斷有無15V,而且單片機電源與15V無關,那麼只要把15V用一個二極體整流,然後加2個電阻分壓,再加個電容稍微濾波就OK了。反應速度取決於電容和分壓電阻大小。

3. 典型51單片機的P0,P1,P2,P3口都有哪些功能

P0口第一個功能是數據介面,第二個功能是地址低八位,P2口第二個功能是地址高八位。另外除了P0口沒有內部上拉電阻外,其他三個都有內部上拉電阻。P1就沒多少功能,就是個准雙向I/O口。最重要的就是P3口了,他除了是個准雙向I/O口外,第二功能很重要:P3.0

(RXD)串列數據接收端;P3.1

(TXD)串列數據發送端;P3.2

(INT0)外部中斷0輸入;P3.3

(INT1)外部中斷1輸入;P3.4(T0)Timer0

計數器輸入:P3.5(T1)Timer1計數器輸入;P3.6(WR)寫外部存儲器的脈沖輸出:P3.7(RD)讀外部存儲器的脈沖輸出。

(3)單片機p1口怎麼檢測擴展閱讀:

在單片機中主要包含CPU、只讀存儲器ROM和隨機存儲器RAM等,多樣化數據採集與控制系統能夠讓單片機完成各項復雜的運算,無論是對運算符號進行控制,還是對系統下達運算指令都能通過單片機完成。

由此可見,單片機憑借著強大的數據處理技術和計算功能可以在智能電子設備中充分應用。簡單地說,單片機就是一塊晶元,這塊晶元組成了一個系統,通過集成電路技術的應用,將數據運算與處理能力集成到晶元中,實現對數據的高速化處理。

4. 怎樣知道單片機的矩陣鍵盤每個按鍵的地址

1、比如是一個4行×4列的矩陣鍵盤。
2、將4行和4列共8根線分別接到單片機的I/O口,比如接P1口,行接低4位(P1.0~P1.3),列接高4位(P1.4~P1.7)。
3、單片機先將行置第電平0,列置高電平1.
4、在鍵盤掃描程序中,判斷是否有任意按鍵按下:if((P1&0xf0)!=0xf0),表示有按鍵按下,延時消抖後,再次判斷,如果(P1&0xf0)!=0xf0,則表示有按鍵按下。
5、然後開始逐行掃描:
P1=0xfe; //第一行置為低電平「0」(P1.0輸出低電平「0」)
if(P14==0) keyval=1; //如果檢測到接P1.4引腳的列線為低電平「0」,可判斷是S1鍵被按下
if(P15==0) keyval=2; //如果檢測到接P1.5引腳的列線為低電平「0」 ,可判斷是S2鍵被按下
if(P16==0) keyval=3; //如果檢測到接P1.6引腳的列線為低電平「0」,可判斷是S3鍵被按下
if(P17==0) keyval=4; //如果檢測到接P1.7引腳的列線為低電平「0」,可判斷是S4鍵被按下

P1=0xfd; //第二行置為低電平「0」(P1.1輸出低電平「0」)
if(P14==0) keyval=5; //如果檢測到接P1.4引腳的列線為低電平「0」,可判斷是S5鍵被按下
if(P15==0) keyval=6; //如果檢測到接P1.5引腳的列線為低電平「0」,可判斷是S6鍵被按下
if(P16==0) keyval=7; //如果檢測到接P1.6引腳的列線為低電平「0」,可判斷是S7鍵被按下
if(P17==0) keyval=8; //如果檢測到接P1.7引腳的列線為低電平「0」,可判斷是S8鍵被按下

P1=0xfb; //第三行置為低電平「0」(P1.2輸出低電平「0」)
if(P14==0) keyval=9; //如果檢測到接P1.4引腳的列線為低電平「0」,可判斷是S9鍵被按下
if(P15==0) keyval=10; //如果檢測到接P1.5引腳的列線為低電平「0」,可判斷是S10鍵被按下
if(P16==0) keyval=11; //如果檢測到接P1.6引腳的列線為低電平「0」,可判斷是S11鍵被按下
if(P17==0) keyval=12; //如果檢測到接P1.7引腳的列線為低電平「0」,可判斷是S12鍵被按下

P1=0xf7; //第四行置為低電平「0」(P1.3輸出低電平「0」)
if(P14==0) keyval=13; //如果檢測到接P1.4引腳的列線為低電平「0」,可判斷是S13鍵被按下
if(P15==0) keyval=14; //如果檢測到接P1.5引腳的列線為低電平「0」,可判斷是S14鍵被按下
if(P16==0) keyval=15; //如果檢測到接P1.6引腳的列線為低電平「0」,可判斷是S15鍵被按下
if(P17==0) keyval=16; //如果檢測到接P1.7引腳的列線為低電平「0」,可判斷是S16鍵被按下

依次類推,得到4×4=16個按鍵的鍵值。就知道哪個按鍵被按下。

閱讀全文

與單片機p1口怎麼檢測相關的資料

熱點內容
騰訊雲伺服器有危險嗎 瀏覽:797
復制文件到文件夾php 瀏覽:9
java注釋正則表達式 瀏覽:857
java連接遠程oracle 瀏覽:90
javamainargs 瀏覽:756
金華數據文檔加密軟體公司 瀏覽:852
內心極度擔心解壓的音樂 瀏覽:894
穿搭技巧app卡色配什麼顏色 瀏覽:592
程序員得結石 瀏覽:128
查公司薪資的app叫什麼 瀏覽:409
壓縮包多個文件夾圖片連續看 瀏覽:484
linuxmysql無法用命令啟動 瀏覽:439
地稅身份認證用什麼ApP 瀏覽:529
網址加密後能防止被封網嗎 瀏覽:759
pic單片機項目 瀏覽:177
oppo手機忘記加密密碼忘了怎麼辦 瀏覽:151
演算法競賽入門經典代碼 瀏覽:155
多功能防盜加密鎖閉閥 瀏覽:863
遙控燈單片機 瀏覽:815
網路時間同步演算法 瀏覽:473