新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 跟我來編一個(gè)最簡(jiǎn)單的單片機(jī)程序

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

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

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

        本文引用地址:http://www.104case.com/article/201610/310905.htm

          讓該端口輸出高電平的語句是:

          SETB P1.0

          讓該端口輸出低電平的語句是:

          CLR P1.0

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

          

         

          由上圖可知,當(dāng)端口P1.0輸出高電平時(shí),小燈D不亮,因?yàn)樾糁胁粫?huì)有電流通過;當(dāng)端口P1.0輸出低電平時(shí),小燈就亮,因?yàn)榇藭r(shí)小燈中有電流通過。

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

          MAIN:;程序開始

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

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

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

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

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

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

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

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

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

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

          ;以下是延時(shí)子程序,有關(guān)該延時(shí)程序的內(nèi)容以后再學(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文件,這就是目標(biāo)文件,然后用編程器將該文件“寫”到89s51中,這樣該89s51就具有自動(dòng)控制小燈閃爍的功能了。

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

          

         

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

          

         

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



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

        評(píng)論


        相關(guān)推薦

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

        關(guān)閉
        主站蜘蛛池模板: 龙山县| 枣强县| 民权县| 东乡族自治县| 雷波县| 三穗县| 仙居县| 句容市| 垫江县| 固原市| 益阳市| 雅安市| 岳阳市| 保定市| 霍林郭勒市| 许昌县| 湘阴县| 当涂县| 崇左市| 淮阳县| 郴州市| 阿拉尔市| 高平市| 台中市| 金阳县| 洛阳市| 金门县| 宁城县| 峨眉山市| 福鼎市| 女性| 芦溪县| 共和县| 辰溪县| 本溪| 资溪县| 汨罗市| 永宁县| 南投市| 白山市| 北海市|