請(qǐng)各位大俠用匯編語(yǔ)言幫忙設(shè)計(jì)一個(gè)程序,小弟不勝感激。如下圖示,單片機(jī)通電復(fù)位后端口P1.0、P1.1對(duì)應(yīng)的A、B輸出5V電壓,現(xiàn)在需要檢測(cè)此兩端口的電壓由高到低的先后時(shí)間差的一致性,要求如下:
1.jpg (18.36 KB, 下載次數(shù): 117)
下載附件
2012-8-24 13:55 上傳
按一下輕觸開(kāi)關(guān)S1后:①單片機(jī)的一個(gè)端口P0.0輸出低電平,驅(qū)動(dòng)LED1指示燈指示“正在檢測(cè)”狀態(tài);
②檢測(cè)A由高電平轉(zhuǎn)至低電平的下降沿與B由高電平轉(zhuǎn)至低電平的下降沿之時(shí)間差,并且要求連續(xù)檢測(cè)30個(gè)時(shí)間差,若30時(shí)間差均符合3.5ms~11.5ms則單片機(jī)的另一個(gè)端口P0.1輸出電平驅(qū)動(dòng)LED2指示“符合”狀態(tài)并停止檢測(cè)(無(wú)論此30個(gè)時(shí)間差符合與否均停止檢測(cè),同時(shí)關(guān)閉正在檢測(cè)狀態(tài),即LED1熄滅)。再按一次輕觸開(kāi)關(guān)則重復(fù)開(kāi)始新一次檢測(cè)。
注:開(kāi)始條件應(yīng)在兩個(gè)信號(hào)A與B均為高電平,即任意一個(gè)為低電平或兩個(gè)均為低電時(shí)初始化。如上圖示
先檢測(cè)信號(hào)A與B,若信號(hào)在2或3時(shí)必須等到4,以上第②點(diǎn)才開(kāi)始檢測(cè)A、B電平的下降沿時(shí)間差。
并且要設(shè)計(jì)3ms的防抖程序。
硬件電路如下,不知A與B接P1.0與P1.1是否可行?如果不行,應(yīng)接哪個(gè)接口?
2.jpg (42.05 KB, 下載次數(shù): 138)
下載附件
2012-8-24 13:56 上傳
|