新聞中心

EEPW首頁 > 模擬技術(shù) > 設(shè)計應用 > 單片機經(jīng)典實驗實例精華詳解(附源程序) (二)

單片機經(jīng)典實驗實例精華詳解(附源程序) (二)

作者: 時間:2013-05-26 來源:網(wǎng)絡 收藏
一、八路LED跑馬燈實驗

  現(xiàn)在讓我們開始做第一個實驗:八路發(fā)光二極管輪流點亮的實驗,也就是通常所說的跑馬燈實驗,首先讓我們來完成必須的硬件部分,我們需要焊接上8個發(fā)光二極管和8個限流電阻,可以參考下面的原理圖和實物圖像進行操作,需要注意的是LED是有極性的,引腳長的為正極,引腳短的為負極,負極和電阻一側(cè)連接,如果接錯那么相應的那一路可能在實驗中不會點亮了,在焊接前要看仔細哦~~~

  單片機經(jīng)典實驗實例精華詳解(附源程序) (二) 單片機經(jīng)典實驗實例精華詳解(附源程序) (二)

  下面我們來完成軟件編程設(shè)計,這里我們沒有采用高深的編程技巧,而是用了最笨、最直接的向端口送數(shù)的辦法來實現(xiàn),一來程序比較簡單,沒必要玩深沉,而且初學者看起來直觀易懂。

  ORG 0000H

  START:MOV P1,#01111111B;最下面的LED點亮

  LCALL DELAY;延時1秒

  MOV P1,#10111111B;最下面第二個的LED點亮

  LCALL DELAY;延時1秒

  MOV P1,#11011111B;最下面第三個的LED點亮 (以下省略)

  LCALL DELAY

  MOV P1,#11101111B

  LCALL DELAY

  MOV P1,#11110111B

  LCALL DELAY

  MOV P1,#11111011B

  LCALL DELAY

  MOV P1,#11111101B

  LCALL DELAY

  MOV P1,#11111110B

  LCALL DELAY

  MOV P1,#11111111B;完成第一次循環(huán)點亮,延時約0.25秒

  AJMP START;反復循環(huán)

  ;延時子程序,12M晶振延時約250毫秒

  DELAY:

  MOV R4,#2

  L3: MOV R2 ,#250

  L1: MOV R3 ,#250

  L2: DJNZ R3 ,L2

  DJNZ R2 ,L1

  DJNZ R4 ,L3

  RET

  END

  如何精確計算延時子程序的執(zhí)行時間?

  匯編語言的一大優(yōu)勢就是能夠精確控制程序的執(zhí)行時間,這在編寫一些對時序要求嚴格的外圍器件驅(qū)動時由為重要!

  單片機經(jīng)典實驗實例精華詳解(附源程序) (二)

晶振相關(guān)文章:晶振原理


評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉