89C51單片機初學任務
1.LED: 第1,3,5.。。。依次點亮,奇數循環完之后開始偶數2,4,6。。。。 (一次只能亮一個燈,序號越大延遲越高)
2.數碼管:數碼管顯示自己生日(年月日之間用小數點隔開)(動態顯示)
3.按鍵:按一下第1個燈亮,再按一下 1,2燈亮,再按一下 1,2,3燈亮。。依次到燈全部都亮,然后重新開始、
4.矩陣鍵盤:模式1:自己找8個鍵 分別對應8個燈,第n號按鍵按住時,第n個燈亮,松手后燈滅
模式2:自己找8個鍵 分別對應8個燈,第n號按鍵按住時,第n個燈狀態不變,松手后燈狀態改變,
注意消抖(否則有可能燈狀態不會改變)狀態改變即 從亮到滅 或 從滅到暗
可以分成2個任務,綜合可以考慮給2周? 感覺太長
綜合:通過矩陣鍵盤輸入十六進制0-F(字母可用小寫表示也可以大寫)(要兩位數,如果已經輸入兩位數了,再鍵盤輸入的話 會清空之前的兩個數字)
在數碼管上顯示該數字(其實就是十六進制數)(只顯示最右邊2個數碼管,其他全滅)
同時8個led燈為 該數字的二進制編碼 高位位置自選
若15秒沒有動作(即沒有碰單片機)數碼管顯示的兩個數會從最右邊移動到最左邊,然后再移動回最右邊,不斷重復
假如 數字在第7,8個數碼管,移動過程就是,一定延遲后移動到,6,7位置,然后5,6一直到1,2然后再移動到2,3然后3,4
移動過程要求可觀察到
用到知識:LED,按鍵,矩陣鍵盤,數碼管,數碼管動態顯示(建議百度一下,不然容易引起歧義),定時器或for循環延遲,
|