chirituzi:
你可以按鍵用中斷來(lái)實(shí)現(xiàn),每一個(gè)功能模塊里加幾條條件轉(zhuǎn)移指令例如主程序起始(f0是51單片機(jī)里面的psw中用戶可以用程序自己定義的標(biāo)志位)setbf0;軟件標(biāo)志位置1,功能1里面在適當(dāng)?shù)奈恢眉訋讞l(jnbf0,功能2)判轉(zhuǎn)移語(yǔ)句,f0為0則跳轉(zhuǎn)至功能2,為1則順序執(zhí)行下一條,功能2里面在適當(dāng)?shù)奈恢眉訋讞l(jbf0,功能3)語(yǔ)句,功能3里的判轉(zhuǎn)移語(yǔ)句和功能1里的相同,功能4里的和功能2里的判轉(zhuǎn)移語(yǔ)句相同,依次類推,修改一下出口參數(shù)就可以了例如按鍵定義為中斷0則按鍵按下后去執(zhí)行中斷0的程序中斷0的程序?yàn)?wint0:cplf0 ;(取反f0) nop reti大概程序可以設(shè)計(jì)成這樣:org0000hajmp:mainorg0003h ;外中斷0入口地址ljmpwint0 . . . .org 0030hmain:定義中斷0,開(kāi)中斷,開(kāi)中斷0gongneng1:這里是功能1程序區(qū)適當(dāng)?shù)奈恢眉訋讞l條件判轉(zhuǎn)移指令可以自己隨意安排 jnbf0,gongneng2 ;自己愿意加幾條就加幾條 . . .ajmpgongneng1gongneng2:這里是功能2程序區(qū)適當(dāng)?shù)奈恢眉訋讞l條件判轉(zhuǎn)移指令可以自己隨意安排 . .jbf0,gongneng3 .ajmpgongneng2gongneng3:這里是功能3程序區(qū)適當(dāng)?shù)奈恢眉訋讞l條件判轉(zhuǎn)移指令可以自己隨意安排 . .jnbf0,gongneng4 . ajmpgongneng3gongneng4:這里是功能4程序區(qū)適當(dāng)?shù)奈恢眉訋讞l條件判轉(zhuǎn)移指令可以自己隨意安排 .jbf0,gongneng5 .ajmpgongneng4wint0: cplf0 nop retiend朋友這樣應(yīng)該可以了,不行的話加我qq:63892347郵箱:chirituzi@126.com