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