jnc loop4
sjmp loop4
loop6: acall delay
djnz r2,loop7
sjmp zy
loop7: mov p1,a
rlc a
jnc loop6
sjmp loop6
zy: acall delay
mov a,#00h
mov p1,a
acall delay
mov a,#0ffh
mov p1,a
acall delay
mov a,#00h
mov p1,a
acall delay
mov a,#0ffh
mov p1,a
sjmp start
delay: mov r3,#20
dly1: mov r4,#20
dly2: mov r5,#248
djnz r5,$
djnz r4,dly2
djnz r3,dly1
ret
;
end
(pcb布線圖)
五、實訓體會與自我評價:
本設計成品是以單片機at89c51晶片為核心部件,實現了單一燈的左移右移重複循環3次。然後左移2次,右移2次,閃爍2次(延時0.2秒)的功能。此次設計在軟體、編寫程式方面花費時間太多我們上網找資料,上圖書館,儘可能多的了解流水燈控制的相關知識。通過這一周的綜合實訓(單片機課程設計),熟練掌握了keil c51集成開發環境的使用方法,了解並掌握到單片機晶片的燒寫方法與步驟,進一步加深了對單片機常用指令的理解與運用。能夠較熟練的運用protel 99 se繪製電路原理圖及pcb圖,對pcb板的一般製作過程有了一定的了解。在實訓過程中,使我得到了一次用專業知識、專業技能分析和解決問題、全面系統的鍛鍊。使我在單片機的基本原理、單片機套用系統開發過程,以及在常用編程設計思路技巧(特別是彙編語言)的掌握方面都能向前邁了一大步。
同時在老師的悉心指導和嚴格要求下,獲得了豐富的理論知識,極大地提高了實踐能力,單片機領域對我今後進一步學習計算機方面的知識有極大的幫助。使我們認識到課程的重要性,同時也感受到理論與實踐之間的差距,使我們對單片機系統的套用有了更加深刻的認識。