<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 跟我來(lái)編一個(gè)最簡(jiǎn)單的單片機程序

跟我來(lái)編一個(gè)最簡(jiǎn)單的單片機程序

作者: 時(shí)間:2016-10-07 來(lái)源:網(wǎng)絡(luò ) 收藏

  在中,讓某個(gè)端口輸出高電平或低電平都有專(zhuān)用的語(yǔ)句,以P1.0端口為例:

本文引用地址:http://dyxdggzs.com/article/201610/310905.htm

  讓該端口輸出高電平的語(yǔ)句是:

  SETB P1.0

  讓該端口輸出低電平的語(yǔ)句是:

  CLR P1.0

  好了,現在我們將小燈接在的P1.0端口上,如下圖所示:

  

 

  由上圖可知,當端口P1.0輸出高電平時(shí),小燈D不亮,因為小燈中不會(huì )有電流通過(guò);當端口P1.0輸出低電平時(shí),小燈就亮,因為此時(shí)小燈中有電流通過(guò)。

  要讓小燈亮一會(huì )兒、滅一會(huì )兒,還必須要有一個(gè)延時(shí)的程序,下面就是讓小燈亮一會(huì )兒、滅一會(huì )兒,交替閃爍的程序:

  MAIN:;程序開(kāi)始

  SETB P1.0;讓P1.0輸出高電平

  LCALL DELAY;這一行是調用延時(shí)子程序

  ;目的是讓P1.0保持高電平

  ;多停留一段時(shí)間

  CLR P1.0;讓P1.0輸出低電平

  LCALL DELAY;這一行也是調用延時(shí)子程序

  ;和剛才一樣,讓P1.0保持低

  ;電平停留一段時(shí)間,其實(shí)就

  ;是讓它多亮一會(huì )兒再熄滅

  LJMP MAIN;跳轉到MAIN處執行(循環(huán))

  ;以下是延時(shí)子程序,有關(guān)該延時(shí)程序的內容以后再學(xué)

  DELAY: MOV R7,#250

  D1: MOV R6,#250

  D2: DJNZ R6,D2

  DJNZ R7,D1

  RET

  END

  在以上匯編程序中,延時(shí)子程序每一行的具體含義先不管他,以后慢慢學(xué)到,上面的程序需要在一個(gè)名為“Keil uVision2”的軟件中匯編完成,匯編后得到一個(gè)*.hex文件,這就是目標文件,然后用編程器將該文件“寫(xiě)”到89s51中,這樣該89s51就具有自動(dòng)控制小燈閃爍的功能了。

  在實(shí)驗的時(shí)候,通常用發(fā)光二極管LED代替小燈,由于LED工作電壓小,由此LED要串接一個(gè)小電阻,用220歐姆——1k之間的都行,我用的是510歐姆的。

  

 

  這樣還不夠,工作還需要兩個(gè)條件,一是需要加上一定的工作電壓,AT89S51工作電壓為5V,第20腳接負極,第40腳接正極;另外還要給單片機安裝一個(gè)心臟起搏器,就是振蕩器,通常叫做時(shí)鐘,只要在18腳和19腳之間接一個(gè)石英晶體就行了,我用的是12MHz的,另外為了保證振蕩器穩定工作,還要在18腳、19腳分別接一個(gè)27PF的小電容到地(就是接到負極),此外,89s51的第9腳為復位端,要接一個(gè)10uF電容到正極,再接一個(gè)10K電阻到負極,最后,第31腳也要和電源的正極接起來(lái),關(guān)于31腳,以后再說(shuō),這樣一臺由單片機控制的會(huì )自動(dòng)閃爍的小燈就做好了。下面是完整的電路圖:

  

 

  沒(méi)有使用的管腳空著(zhù)就行了,什么也不用接。一通上電,小燈就開(kāi)始不停的閃爍了。大約1秒鐘閃爍3——4次。



關(guān)鍵詞: 單片機 匯編語(yǔ)言

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>