SOGO論壇

標題: 8051程式(組合語言) [列印本頁]

作者: gabrielle    時間: 2009-12-2 18:55:32     標題: 8051程式(組合語言)

想請各位大大幫忙想這個程式,我用8951的port0.0~0.6接74244的2.4.6.8.11.13.15腳,74244的1.10.19接地20接vcc,74244的18.16.14.12.9.7.5腳接330歐姆的電阻到兩個共陰七段的a.b.c.d.e.f.g,七段上面兩個com接地,下面十位數的com接2003A的16腳,個位數的接15腳,2003A的9接vcc8接地,2003A的1接到7404的2腳,2接到7404的1腳在接到8951的port0.7,7404的14接vcc7接地,8951的port1.7~1.0接到4x4的鍵盤(左邊第一支腳接1.7按照順續接到1.0),鍵盤左邊由上到下是F.B.A.0再來是E.3.2.1再來D.6.5.4再來C.9.8.7,(程式要讓鍵盤按的數字出現在七段,停止輸入後約1~2秒由輸入的數字開始倒數,倒數完之後進入59~0的循環計數)例如:7A倒數到0之後變成一直重複59到0,請各位大大幫忙了

不是我不想寫,我根本連組合語言都不會,老師只跟我們說要有什麼功能,電路跟程式都要自己想辦法,我電路都是找資料慢慢才完成的,但程式我真的沒辦法。

《 本帖最後由 gabrielle 於 2009-12-4 13:19 編輯 》
作者: a37583758    時間: 2009-12-2 22:58:07     標題: 回覆 #1 gabrielle 的帖子

哀...
想當初我們班都在混的人  還不是都自己翻書考過考試、做好作業...
作者: wwww    時間: 2009-12-2 23:23:27

電路應該修正
七段上面兩個com接地,下面十位數的com接2003A的16腳,個位數的接15腳,
應沒有上面兩個com與下面兩個com之分
作者: 不良歐吉桑    時間: 2009-12-5 23:44:34

這程式就只有兩個大迴圈而已啊,

第一個迴圈是讓你的系統 standby 或叫 polling ,一直在偵測鍵盤的輸入,鍵盤有輸入時就將輸入值顯示出來,一旦輸入結束,就 delay 兩秒鐘,把鍵盤輸入值存下來,然後跳到第二個迴圈。

第二個迴圈就是倒數啦,在跳出第一個迴圈的時候已經記錄一個值在暫存器裏了,把這個值拿來一直做“減 1”的動作,順便顯示出來,減到變 0 為止,然後跳回第一個迴圈。記得做減法時 delay 要夠久,七段顯示器才會讓人看得懂。

至於鍵盤產生的是什麼 code ,自己要去量,輸入到你的系統要用 binary, decimal 或 hex ,隨你便,轉換要自己注意;還有系統輸出轉換成七段顯示器的 code 就不用我教了吧?

還有描述電路不要用講的,畫張圖來看比較快。

這老師很客氣了啦,還沒想一些花招來整學生咧。要是我是老師,可能會加上一些有的沒有的,例如



《 本帖最後由 不良歐吉桑 於 2009-12-5 23:57 編輯 》




歡迎光臨 SOGO論壇 (https://oursogo.com/) Powered by OURSOGO.COM