找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 11737|回復(fù): 10
收起左側(cè)

用51hei板子學(xué)習(xí)一鍵多功能按鍵識別技術(shù)

  [復(fù)制鏈接]
ID:1 發(fā)表于 2010-6-4 02:58 | 顯示全部樓層 |閱讀模式

1.實(shí)驗(yàn)任務(wù)

開關(guān)S5接在P3.7/RD管腳上,在stc89c52單片機(jī)的P0端口接有四個發(fā)光二極管,上電的時候,D8接在P0.0管腳上的發(fā)光二極管在閃爍,當(dāng)每一次按下開關(guān)S5的時候,D7接在P0.1管腳上的發(fā)光二極管在閃爍,再按下開關(guān)S5的時候,D6接在P0.2管腳上的發(fā)光二極管在閃爍,再按下開關(guān)S5的時候,D5接在P0.3管腳上的發(fā)光二極管在閃爍,再按下開關(guān)S5的時候,又輪到D8在閃爍了,如此輪流下去。

 

2程序設(shè)計方法

(1.       設(shè)計思想由來

在我們生活中,我們很容易通過這個叫張三,那個叫李四,另外一個是王五;那是因?yàn)槊總人有不同的名子,我們就很快認(rèn)出,同樣,對于要通過一個按鍵來識別每種不同的功能,我們給每個不同的功能模塊用不同的ID號標(biāo)識,這樣,每按下一次按鍵,ID的值是不相同的,所以單片機(jī)就很容易識別不同功能的身份了。

(2.       設(shè)計方法

從上面的要求我們可以看出,D8到D5發(fā)光二極管在每個時刻的閃爍的時間是受開關(guān)S5來控制,我們給D8到D5閃爍的時段定義出不同的ID號,當(dāng)D8在閃爍時,ID=0;當(dāng)D7在閃爍時,ID=1;當(dāng)D6在閃爍時,ID=2;當(dāng)D5在閃爍時,ID=3;很顯然,只要每次按下開關(guān)S5時,分別給出不同的ID號我們就能夠完成上面的任務(wù)了。下面給出有關(guān)程序設(shè)計的框圖。

3程序框圖

圖4.9.2

 

4.源程序及其hex文件下載:

c語言版本   :http://www.torrancerestoration.com/ziliao/51hei-5/獨(dú)立鍵盤_一鍵多功能_c.rar
匯編語言版本:http://www.torrancerestoration.com/ziliao/51hei-5/獨(dú)立鍵盤_一鍵多功能_asm.rar

[此貼子已經(jīng)被作者于2010-6-4 2:59:13編輯過]

評分

參與人數(shù) 1黑幣 +3 收起 理由
0668866 + 3 贊一個!

查看全部評分

回復(fù)

使用道具 舉報

ID:996773 發(fā)表于 2023-3-1 14:26 | 顯示全部樓層
TA8127x6a64.jpg

英雄所見略同,我這個收音機(jī)操作菜單就和樓主一樣思路,同一個按鍵執(zhí)行三個操作流程

分別是頻道,頻率,設(shè)定三種模式,開機(jī)默認(rèn)頻道模式,頻道左邊白圈變黑圈,表示當(dāng)前

功能選項(xiàng),按一下藍(lán)色按鈕,往寄存器寫個固定數(shù)值,執(zhí)行到第二個功能頻率模式,如果這

時候轉(zhuǎn)動旋轉(zhuǎn)編碼器就可以執(zhí)行相應(yīng)的功能,再按往寄存器寫數(shù)值,執(zhí)行第三個設(shè)定功能,

這種軟件思路方案雖然復(fù)雜一些,但做出成品操作非常簡單,一個旋轉(zhuǎn)編碼器就能完成所有

操作,我學(xué)習(xí)匯編只有兩年,也是自己冥思苦想出來的,寧可讓數(shù)據(jù)多跑路也要讓自己少動手

評分

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

查看全部評分

回復(fù)

使用道具 舉報

ID:14556 發(fā)表于 2010-8-28 15:24 | 顯示全部樓層
學(xué)習(xí)學(xué)習(xí)中
回復(fù)

使用道具 舉報

ID:33544 發(fā)表于 2017-8-4 10:40 | 顯示全部樓層
學(xué)習(xí)學(xué)習(xí)按鍵多功能
回復(fù)

使用道具 舉報

ID:57570 發(fā)表于 2017-12-6 10:13 來自手機(jī) | 顯示全部樓層
這個很好寫吧!
回復(fù)

使用道具 舉報

ID:272625 發(fā)表于 2018-1-21 15:48 | 顯示全部樓層
程序有問題,有些燈不該亮的亮了
回復(fù)

使用道具 舉報

ID:66287 發(fā)表于 2018-8-22 09:02 | 顯示全部樓層
樓主,這個不屬于一鍵多功能吧?
回復(fù)

使用道具 舉報

ID:507557 發(fā)表于 2019-4-9 09:29 | 顯示全部樓層
很好!我都是用匯編,現(xiàn)在在學(xué)習(xí)C
回復(fù)

使用道具 舉報

ID:940085 發(fā)表于 2021-6-19 19:11 來自手機(jī) | 顯示全部樓層
這個看起來挺清晰的
回復(fù)

使用道具 舉報

ID:1042173 發(fā)表于 2023-10-9 12:16 | 顯示全部樓層
yytlwz 發(fā)表于 2019-4-9 09:29
很好!我都是用匯編,現(xiàn)在在學(xué)習(xí)C

厲害,你居然會匯編語言。。
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

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