抽取後四位難道不是與下0XFFFF搞定嗎
延遲兩秒的話可以用每次按鍵啟動或刷新壹個定時器來搞定,至於是在中斷服務程序內搞還是僅僅做個標記就看情
現在情況是妳能顯示數字了,那麽妳就應該能得到輸入的數字了吧。(方便起見就不用輸入來觸發中斷了)程序主循環結構是:1、定時掃描輸入I/O狀態,定時的作用就是用來做防顫處理的,在間隔幾毫秒的過程後,如果按鍵狀態還是變化了,才表示實際按動過了。2、上面如果檢測到有變化,則將定時器的數字清零,在這個定時器的服務程序裏執行將壹個標誌置位。然後再執行內存中輸入數字的變化,和顯示的內容。3、判斷是否有定時器中斷觸發的標誌,有的話就執行將數轉換成BCD碼(就是轉換成10進制數)的過程,並顯示出來。如此就完成了。
至於定時器中斷怎樣搞,和匯編相比,更簡單了,直接初始化定時器的特殊定時器,再在程序裏定義中斷服務程序就好了。我估計妳的輸入數字還沒能整理,那樣的話在上面的第2步裏,的第二個操作中先將原數乘16,再加上後來添的數就OK了,顯示的話直接對這個數進行處理就好了。