找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 915|回復(fù): 15
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)矩陣按鍵程序問題

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:1132991 發(fā)表于 2024-10-28 20:52 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
這兩個函數(shù)是控制晉中51實(shí)驗板的矩陣按鍵的,但是左邊的jiance函數(shù)在執(zhí)行下面的主函數(shù)時無論按什么鍵都是4個重復(fù)的數(shù)字,
而右邊的MatrixKey函數(shù)就可以(例如:按下1顯示0001,再按下2顯示0012.....)
下面是主函數(shù),那個壓縮包里面就是源文件

有人可以幫忙看看嗎?
搞一下午了




新建文件夾.zip

11.74 KB, 下載次數(shù): 11

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

使用道具 舉報

沙發(fā)
ID:446156 發(fā)表于 2024-10-29 08:03 | 只看該作者
不行得話你直接用我的程序算了,驗證好多年了穩(wěn)定可靠功能多
回復(fù)

使用道具 舉報

板凳
ID:1132991 發(fā)表于 2024-10-29 09:35 | 只看該作者
qinlu123 發(fā)表于 2024-10-29 08:03
不行得話你直接用我的程序算了,驗證好多年了穩(wěn)定可靠功能多

其實(shí)我就是想知道是什么原因?qū)е碌?br />
回復(fù)

使用道具 舉報

地板
ID:844772 發(fā)表于 2024-10-29 10:30 | 只看該作者
我沒看全啊,就是想問問這個函數(shù) int jiance() 為啥返回INT 型數(shù)據(jù)
回復(fù)

使用道具 舉報

5#
ID:446156 發(fā)表于 2024-10-29 10:36 | 只看該作者
hxy52zero 發(fā)表于 2024-10-29 09:35
其實(shí)我就是想知道是什么原因?qū)е碌?/blockquote>

你是咋理解^這個運(yùn)算符的,你這個矩陣鍵盤掃描算法t1和t2應(yīng)該是或的關(guān)系為啥要用異或呢
回復(fù)

使用道具 舉報

6#
ID:446156 發(fā)表于 2024-10-29 10:52 | 只看該作者
用異或也是可以的在這里效果和或一樣。你的8個IO都加上拉電阻了嗎
回復(fù)

使用道具 舉報

7#
ID:1132991 發(fā)表于 2024-10-29 11:16 來自手機(jī) | 只看該作者
glinfei 發(fā)表于 2024-10-29 10:30
我沒看全啊,就是想問問這個函數(shù) int jiance() 為啥返回INT 型數(shù)據(jù)

給它定義的不是int嗎?
回復(fù)

使用道具 舉報

8#
ID:161164 發(fā)表于 2024-10-29 11:30 | 只看該作者
4個重復(fù)的數(shù)字是按什么鍵?出現(xiàn)哪4個?
回復(fù)

使用道具 舉報

9#
ID:1132991 發(fā)表于 2024-10-29 11:40 | 只看該作者
qinlu123 發(fā)表于 2024-10-29 10:36
你是咋理解^這個運(yùn)算符的,你這個矩陣鍵盤掃描算法t1和t2應(yīng)該是或的關(guān)系為啥要用異或呢

開始是用的或,也檢查了幾遍,但是行不通,然后用異或就行得通了,所以用的異或
回復(fù)

使用道具 舉報

10#
ID:1132991 發(fā)表于 2024-10-29 11:52 | 只看該作者
qinlu123 發(fā)表于 2024-10-29 10:52
用異或也是可以的在這里效果和或一樣。你的8個IO都加上拉電阻了嗎

都加上了,我看的原理圖
回復(fù)

使用道具 舉報

11#
ID:1132991 發(fā)表于 2024-10-29 15:04 | 只看該作者
lkc8210 發(fā)表于 2024-10-29 11:30
4個重復(fù)的數(shù)字是按什么鍵?出現(xiàn)哪4個?

就是按什么鍵,這個鍵對應(yīng)的數(shù)字重復(fù)4次
回復(fù)

使用道具 舉報

12#
ID:161164 發(fā)表于 2024-10-29 15:36 | 只看該作者
hxy52zero 發(fā)表于 2024-10-29 15:04
就是按什么鍵,這個鍵對應(yīng)的數(shù)字重復(fù)4次

因為你沒有松手檢測啊,MatrixKey()有while(P1_x==0);

回復(fù)

使用道具 舉報

13#
ID:446156 發(fā)表于 2024-10-29 16:59 | 只看該作者
lkc8210 發(fā)表于 2024-10-29 15:36
因為你沒有松手檢測啊,MatrixKey()有while(P1_x==0);

按道理將他這程序按鍵一直按下可以檢測到的,我上學(xué)那會也這么做過行得通
回復(fù)

使用道具 舉報

14#
ID:1132991 發(fā)表于 2024-10-29 17:00 | 只看該作者
lkc8210 發(fā)表于 2024-10-29 15:36
因為你沒有松手檢測啊,MatrixKey()有while(P1_x==0);

原來是這樣,等下去試試
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

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

快速回復(fù) 返回頂部 返回列表