找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2016|回復: 13
打印 上一主題 下一主題
收起左側

我想問幾個單片機方面的初級問題,請黑壇里的大佬回答一下

  [復制鏈接]
回帖獎勵 50 黑幣 回復本帖可獲得 50 黑幣獎勵! 每人限 1 次
跳轉(zhuǎn)到指定樓層
樓主
ID:345275 發(fā)表于 2018-6-5 21:30 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
1、如何掃描矩陣鍵盤確定按鍵?
2、如何把輸入的數(shù)字值轉(zhuǎn)化成數(shù)值進行運算?
3、如何在液晶屏上一個字符?
就這三個,麻煩你們了

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

來自 2#
ID:345811 發(fā)表于 2018-6-5 23:01 | 只看該作者
你好
4*4的矩陣鍵盤至少需要8個IO進行掃描,網(wǎng)上有完整的教程,可以直接參考
如果位數(shù)是確定的,可以直接利用按鍵函數(shù)返回值,如果不確定可以用字符串轉(zhuǎn)int
顯示字符的話不同液晶屏有不同的字庫表,一般買來會有庫函數(shù)或者字表的
像常用的1602 12864等并口屏以及oled等 都會有自己出廠的設計軟件和使用方法

謝謝

評分

參與人數(shù) 1黑幣 +60 收起 理由
admin + 60 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

來自 3#
ID:319344 發(fā)表于 2018-6-6 11:20 | 只看該作者
這三個問題聯(lián)系起來好像是一個計算器呀,首先回答第一個問題:矩陣鍵盤與單片機相連分為行線和列線,行線一端接IO口,另一端接VCC,而列線一端接IO口,另一端接按鍵引腳,按鍵引腳另一端接行線上(先想象一個按鍵)先讓列線輸出低電平,檢測行線IO口,如果是高電平(因為連著VCC),說明沒有按下,當按下時,按鍵就將VCC和低電平(列線IO輸出)導通了,這時候行線就會讀到低電平。  矩陣鍵盤確定按鍵:根據(jù)坐標哇,比如說第3條列線由低電平變?yōu)榱烁唠娖,而此時第1條行線變?yōu)榱说碗娖剑椭朗窃诰仃囍心膫位置的按鍵按下了,你對每行每列的按鍵都有一個標號,那就是鍵值了

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

來自 4#
ID:319344 發(fā)表于 2018-6-6 11:37 | 只看該作者
第二個問題:如果你是做的計算器,那某些按鍵就有0~9 或+ -× /的特殊含義,用某個變量表示鍵值,然后將兩個變量相運算,再將結果再用變量表示就可以了。 第三個問題:顯示字符分為 顯示什么和在哪兒顯示。 顯示字符就是顯示ASCII碼,根據(jù)ASCII碼值找到對應的字符就可以顯示了。而要想調(diào)用的話首先要有,LCD1602有字符發(fā)生存儲器,存放著點陣字符。(顯示其實就是顯示有規(guī)律的點,字符,漢字,圖形都是這樣)
在什么地方顯示:1602的話是每個小方塊都有對應的地址,選對了地址就在那兒顯示了,手機屏幕那種(無論現(xiàn)在的智能手機,還是以前的諾基亞)都是根據(jù)坐標,有個詞叫分辨率,比如320*240,就是屏幕上有那么多可以亮的點,選對了坐標,那個點就亮了,那種就沒有字符發(fā)生存儲器了,還是那句話,亮的點有規(guī)律了就是字符,漢字或圖形了

評分

參與人數(shù) 1黑幣 +60 收起 理由
admin + 60 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

來自 5#
ID:295783 發(fā)表于 2018-6-6 13:03 | 只看該作者
1.如果進行按鍵掃描的話 需要8個io口來進行操作 分別為4個橫向 4個縱向 通過變換高低電平進行按鍵掃描 其他的網(wǎng)上有程序改成自己想要的io口就可以用了
2.先把按鍵用0-9進行定義 每按下一個按鍵 通過定義的來進行運算
3.這個你要參考顯示屏的參考手冊了 顯示屏分為lcd和led lcd又分為常用的1602和12864 不過我建議用lcd1602比較好
希望對你有幫助

評分

參與人數(shù) 1黑幣 +60 收起 理由
admin + 60 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

6#
ID:127220 發(fā)表于 2018-6-5 22:59 | 只看該作者
參考宋雪松老師的教程第8張8.5節(jié)簡易加法計算器
回復

使用道具 舉報

7#
ID:156629 發(fā)表于 2018-6-5 23:09 | 只看該作者
1.通過行掃描,與列掃描確定那個按鍵按下;2.將每個按鍵按下的數(shù)值編碼成0-9,讓后進行運算,3.通過看液晶屏手冊,讀時序驅(qū)動液晶顯示字符

評分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

8#
ID:277550 發(fā)表于 2018-6-5 23:20 | 只看該作者
像4*4的鍵盤,就是4個io接橫、4個io接縱,,,,,,然后掃描橫和縱的交叉點,看哪個交叉點是低電平,就是有按下鍵。

評分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

9#
ID:345158 發(fā)表于 2018-6-5 23:53 | 只看該作者
將全部行線置低電平,然后檢測列線的狀態(tài)。只要有一列的電平為低,則表示鍵盤中有鍵被按下,而且閉合的鍵位于低電平線與4根行線相交叉的4個按鍵之中。若所有列線均為高電平,則鍵盤中無鍵按下

評分

參與人數(shù) 1黑幣 +40 收起 理由
admin + 40 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

10#
ID:345158 發(fā)表于 2018-6-5 23:58 | 只看該作者
對于數(shù)字值轉(zhuǎn)化為數(shù)值,若位數(shù)已知 ,則用按鍵函數(shù)返回值。若不確定, 一般用用字符串轉(zhuǎn)int來轉(zhuǎn)化。

評分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

11#
ID:345275 發(fā)表于 2018-6-6 00:24 | 只看該作者
kuangfeng223 發(fā)表于 2018-6-5 23:09
1.通過行掃描,與列掃描確定那個按鍵按下;2.將每個按鍵按下的數(shù)值編碼成0-9,讓后進行運算,3.通過看液晶 ...

這樣回答老師沒問題嗎,不需要提出哪段代碼給老師看嘛
回復

使用道具 舉報

12#
ID:343102 發(fā)表于 2018-6-6 09:11 | 只看該作者
可以參考這個程序:矩陣鍵盤1602顯示

LCD1602P1Key.rar

1.87 KB, 下載次數(shù): 2

回復

使用道具 舉報

13#
ID:346086 發(fā)表于 2018-6-6 13:12 | 只看該作者

將全部行線置低電平,然后檢測列線的狀態(tài)。只要有一列的電平為低,則表示鍵盤中有鍵被按下,而且閉合的鍵位于低電平線與4根行線相交叉的4個按鍵之中。若所有列線均為高電平,則鍵盤中無鍵按下.

評分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

14#
ID:331531 發(fā)表于 2018-6-6 15:01 | 只看該作者
按鍵掃描要用到外部中斷,第二個用BCD轉(zhuǎn)換就行,液晶屏顯示可以到網(wǎng)上百度驅(qū)動函數(shù),不同的液晶屏用到的不一樣。

評分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表