日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費注冊]

當前位置:電子發(fā)燒友網(wǎng) > 圖書頻道 > 電子 > 《單片機原理與應用》 > 第3章 MCS-51單片機指令系統(tǒng)

第1節(jié) P1口外接8只LED發(fā)光二極管模擬彩燈

  3.1.1 硬件電路

  硬件電路如圖3.1所示。AT89S51是MCS-51系列單片機中的一種,通常采用40腳DIP封裝, 1腳~8腳是4個并行輸入/輸出端口(P0口、P1口、P2口、P3口)中的一個,稱為P­1­口,8條口線用P1。0~P1。7表示,這8個引腳均可帶最大20mA灌電流負載,可以直接驅(qū)動發(fā)光二極管,圖示電路中D0~D7為8只LED,各經(jīng)300Ω電阻限流后接在+5V電源與P1端口之間。圖示電路中18、19腳所接晶振和電容與單片機內(nèi)部電路組成振蕩器,為單片機提供工作時鐘。9腳所接RC電路構(gòu)成單片機上電復位電路,單片機只有經(jīng)過復位才能開始執(zhí)行程序。

  圖3.1 AT89S51單片機P1口外接8只LED發(fā)光二極管

  工作原理

  當P1。0~P1。7中的某端口為低電平時,對應的發(fā)光二極管亮,為高電平滅。我們只要控制P1口各位的電平狀態(tài),就可以控制8只LED的亮與滅。例如使(P1)=01010101B=55H, D7、D5、D3、D14只LED亮,D6、D4、D2、D04只LED滅,從效果上看亮與滅是相間隔的;反之,使(P1)=10101010B=AAH,則另外4只LED亮,若反復以一定時間間隔不斷從P1口輪流輸出55H和AAH,則P1口上8只LED會呈現(xiàn)流水彩燈的效果。

  3.1.2 控制程序

  實現(xiàn)上述8只LED發(fā)光二極管控制的程序非常簡單,可以用不同的指令來編程。以下是幾種模式彩燈的控制程序。

  1. 將立即數(shù)送P1口的程序

  ORG 0000H ; 定義程序從程序存貯器0000H單元開始存放

  LOOP: MOV P1,#55H ; 立即數(shù)55H送P1口,4只LED亮

  SJMP LOOP ; 原地踏步

  END ; 程序結(jié)束

  第一條指令指明程序在程序存貯中的存貯位置,第二條指令將立即數(shù)55H傳送到P1口,對應的LED燈亮,第三條指令是一條無條件轉(zhuǎn)移指令,即單片機執(zhí)行完上一條指令后,會不斷反復指行這條指令,直到電源斷電,第四條是程序結(jié)束指令(本例程序演示效果參見隨書光盤)。

  2. 通過累加器A控制P1口的程序

  ORG 0000H

  LOOP: MOV A,#0AAH ;將立即數(shù)AAH送累加器A

  MOV P1, A ;累加器A中的數(shù)送P1端口

  SJMP LOOP ;轉(zhuǎn)移到LOOP

  END

  3. 流水式彩燈程序

  最簡單的流水式彩燈程序也是簡單的,程序流程圖如圖3.2所示,程序如下。

  圖3.2 最簡單的流水式彩燈程序流程圖

  ORG 0000H

  LOOP: MOV P1,#55H ;將立即數(shù)55H送P1端口

  LCALL TIME   ;調(diào)延時子程序TIME

  MOV P1,#0AAH ;將立即數(shù)AAH送P1端口

  LCALL TIME ;調(diào)延時子程序TIME

  SJMP LOOP ;轉(zhuǎn)移到LOOP

  TIME: MOV R6,#200 ;延時子程序TIME

  TIME1:MOV R7,#200

  TIME2:NOP

  NOP

  NOP

  DJNZ R7,TIME2

  DJNZ R6,TIME1

  RET

  END

  4. 開幕式與閉幕式彩燈程序

  ORG 0000H

  LJMP MAIN ;跳轉(zhuǎn)到主程序

  ORG 0030H

  MAIN: MOV R0,#8 ;R0送循環(huán)次數(shù)8

  MOV DPTR,#TAB  ;給數(shù)據(jù)指針賦值

  LOOP: MOV A,#00H ;

  MOVC A,@ A + DPTR

  MOV P1,A

  LCALL TIME

  INC DPL

  DJNZ R0,LOOP

  SJMP MAIN

  TIME: MOV R6,#200

  TIME1: MOV R7,#200

  TIME2: NOP

  NOP

  NOP

  DJNZ R7,TIME2

  DJNZ R6,TIME1

  RET

  TAB: DB 81H,0C3H,0E7H,0FFH,18H,3CH,7EH,0FFH

  END

  3.1.3 源程序的編輯、編譯、下載

  打開“偉福”模擬仿真軟件進行程序的編輯、編譯。

  打開“ISP下載軟件”將目標文件下載到ISP-4實驗開發(fā)板上的AT89S51單片機芯片,觀察程序運行結(jié)果。

?
合作市| 丹棱县| 铅山县| 新沂市| 娄底市| 楚雄市| 安庆市| 湖州市| 晋州市| 涪陵区| 桃源县| 慈溪市| 屏东县| 湖州市| 澜沧| 龙井市| 牡丹江市| 乌拉特前旗| 大丰市| 盐池县| 沈阳市| 阜城县| 怀宁县| 张家港市| 浦县| 平山县| 九龙坡区| 安龙县| 泊头市| 买车| 青海省| 西吉县| 丰原市| 三原县| 甘洛县| 儋州市| 临颍县| 梅河口市| 兴义市| 固始县| 修文县|