亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 新建 文本文檔.txt

?? 本程序是一個簡單的流水燈程序,對初學者來說是很容易掌握的,特別是對C51的初學者!
?? TXT
?? 第 1 頁 / 共 2 頁
字號:
第二節

 

 

單片機自學教材之用單片機做流水燈(二)

第二節

  上一節的實驗最后沒有得到“流水”效果,主要是單片機執行每條指令的時間很短,我們肉眼無法看到LED的熄滅與點亮;

   單片機內部能按部就班的自動工作,正是在系統時鐘的作用下,內部各邏輯硬件產生各種所需脈沖信號而實現的。這個時鐘信號(既晶體振蕩信號)的周期稱“振蕩周期”。我們這個實驗中晶體使用的是12MHZ.

   在單片機中,要處理最短周期的一條指令需要由12個振蕩周期(既晶振振蕩周期)組成的,這個叫“機器周期”。

   8051核的單片機,大多數指令只用一個機器周期(既單周期),也有雙周期和四周期的指令。本實驗中用到的SETB P.x和CLR P.x均屬于單周期指令,也就是說,執行一句 SETB P.x 用時僅1uS(微秒),CLR P.x 也是1uS;難怪我們前面的程序不能看到流水效果。

   現在,將程序改動一下,在每點亮一個LED后,讓程序干點別的事,也就是讓它等一會再將該LED熄滅,繼續執行下面的程序:

star:             ;程序開始 
    clr p1.0     ;LED1亮
    acall delay  ;調用延時子程序
    setb p1.0    ;LED1滅
    clr p1.1     ;換燈,同上
    acall delay
    setb p1.1
    clr p1.2
    acall delay
    setb p1.2
    clr p1.3
    acall delay
    setb p1.3
    clr p1.4
    acall delay
    setb p1.4
    clr p1.5
    acall delay
    setb p1.5
    clr p1.6
    acall delay
    setb p1.6
    clr p1.7
    acall delay
    setb p1.7
    ljmp star    ;返回到開始循環
delay:            ;延時子程序
    mov r1,#50
del0:
    mov r2,#100
del1:
    mov r3,#100
    djnz r3,$
    djnz r2,del1
    djnz r1,del0
   ret            ;延時子程序結束,返回到調用處的下一句
end

    請將上面的程序保存為 Test.asm,進行編譯,并燒寫到AT89C2051中,之后將2051安裝到實驗板中實驗,這回肯定“流水”啦!

  回過頭,讓我們看看延時子程序是怎樣工作的:

  單片機內部有不少寄存器,這些寄存器在單片機通電時,你可以給他寫入數據(是單片機按你程序要求寫的數據,而不是編程器寫的),當第二次給他寫入新數據時,前次的數據就被新數據覆蓋;當然也可以從寄存器中讀取數據。當單片機沒有電源供給時,寄存器內部的數據也隨即消失;這些寄存器人們叫他RAM,而用編程器將我們編寫的程序燒寫到單片機中的存儲器叫ROM;現在,我們應該清楚:RAM是讓程序去使用的,ROM是我們編寫的程序存放的地方!

  前面說過,單片機內部有不少RAM,本實驗用的AT89C2051有多少寄存器?我們現在不必關心,現在只須知道單片機內部有名叫R0~R7 的這8個寄存器。這8個寄存器每個都由8個單獨的位寄存器組成,最大存放數據為二進制的 1111 1111,十六進制 = FF,十進制 = 255。在使用時注意不要大于其有效范圍。

  上面延時程序中,先用到 mov r1,#50 ,mov是移動的意思,該句是將50這個十進制數放到r1中;50是立即數,按匯編語言要求前面要加“#”號,匯編語言還規定,十六進制數后面要加“ H”,十六進制數的高位是字母時在字母前面還要加“0”,例如:#0F8H;二進制數后面加“B”,例如:#11110000B。十進制不加,例如:#100   。延時程序的第二、三句為 mve r2,#100 ;mov r3,#100 ;這兩句意思同前。

  第四句中 djnz r3,$ 的意思是將 r3 里面的數減 1 后如果 r3 不等于 0 則跳到后面指定的程序位置,這里的“$”既要跳轉的程序位置,“$”代表當前語句處,也就是說,r3不等于 0,程序返回再次執行本句。如果r3 減 1 后等于 0,程序結束本句,繼續執行下面的語句。

  延時程序的最后一句是 ret ,意思是退出本子程序,返回到調用本子程序處的下一句。

  根據上面的解釋,一進入延時子程序首先為 r1, r2, r3 寄存器裝入我們需要的數據,然后先對 r3 進行減數,每次減 1 ,r3 減完后減 r2 ,減 r2 時就費事啦,因為 r2 每減 1 后不為 0 需要跳轉到 del1 標號處執行下面的語句,此時 r3 再次裝入數據100,并且還要再次對 r3 進行減數......,r2 減完后減 r1,減 r1的過程你研究研究看看。

  每執行 djnz rn,rel (rn 指 r0~r7,rel 指轉移地址)指令一次,需要2個機器周期,單片機需耗時2uS(指本實驗),若忽略裝數等語句,延時子程序從開始到結束,單片機共耗時100*100*50*2nS,既1000000uS=1秒!若加上裝數等語句的耗時,延時時間大于1秒。

  到此,我們做的流水燈已成功,原理大致也明白啦,若你自認為這一課你完全明白了,那請你將“流水燈”的流向改變一下,也可以改為兩邊向內流,內部向外流......,我想你一定能用前面學到的方法實現這些功能。可能有些高手說,前面的編程方法是最最笨的!,不錯!但玩單片機初期不必講究語言的簡練,只要能完成預先要求就好,這是初學者要知道的。那么還有更好的編程思路嗎:有!請繼續學習


單片機自學教材之用單片機做流水燈(三)

第三節

   在上節課中讓 LED 流水是去逐個控制P1端口的每個位來實現的,那么我們在程序一開始就給P1口送一個數,這個數本身就讓P1.0先低,其他位為高,然后讓這個數據向高位移動不就實現“流水”效果啦?的確如此!

  可惜,8051沒有讓P1數據移動的指令,但有對累加器ACC中數據左移或右移的指令,ACC是8051單片機內部算術邏輯單元中的一個“寄存器”(這里叫他寄存器是不正確的,但你可以先這樣理解,ACC在指令中常寫為A),他在數據傳輸和數據處理過程中作用十分重要,ACC為8位。他可與片內所有單字節寄存器交換數據,實際上P1和其他端口在單片機中也是一個寄存器。這樣我們可以將需移動的數據先放到ACC中,讓其移動,然后將ACC移動后的數據再轉送到P1口,這樣同樣可以實現“流水”效果。

程序如下:

star:             ;開始
  mov acc,#0feh  ;ACC中先裝入LED1熄滅的數據(即二進制的 1111 1110)
  mov p1,acc     ;將ACC的數據送P1口
  mov r0,#7      ;因上句送到 p1口的數據就熄滅了一位,
                 ;所以將數據再移動7次就完成一個8位流水過程     
loop:             ;數據移動循環
  rl a           ;將ACC中的數據左移一位
  mov p1,a       ;把ACC移動過的數據送p1口顯示
  acall delay                ;調用延時
  djnz r0,loop   ;沒有移動夠7次繼續移動
  ljmp star      ;移動完7次后跳到開始重來,以達到循環流動效果
delay:            ;延時子程序,就是上節課中的延時子程序
    mov r1,#50
del0:
    mov r2,#100
del1:
    mov r3,#100
    djnz r3,$
    djnz r2,del1
    djnz r1,del0
   ret             ;延時子程序結束,返回到調用處的下一句
end                ;本匯編程序到此結束

  接下來,將上述程序編譯,并燒寫到前面我們的實驗芯片中,流水效果與第二節課的一樣。

  其實8051單片機有111條指令,這111條指令好比以前我們使用數字傳呼機時的“短語代碼”一樣,可以用幾個“短語代碼”去表示一句完整、通順的語句段落。有的指令常用,有的指令不常用,只要遵守語法規則,你可以用這些指令“組合”成你想象到的任何程序。當然,有時一條指令可以替代很多條指令,這樣會使程序簡捷,費碼減少,在編寫較大程序時可以讓程序存儲器放得下你需要的代碼。這也是單片機高手所追求的。當然,在程序存儲器空間不成問題時,你不這樣做但也可以達到預期的功能,這也不算錯。

  單片機內部還有很多“部件”我們只是用到什么說什么,很不系統。但是我也不想系統的介紹這些,因系統介紹單片機結構和指令的書很多,何況寫的遠比我好,因此,希望你在看本講座的過程中,還要結合正規的教材學習其更多的指令和“部件”。

 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品亚洲aⅴ乱码一区二区三区| www.欧美.com| 欧美视频在线不卡| 91在线国内视频| 成人久久视频在线观看| 成人精品gif动图一区| 成人福利视频在线| 94-欧美-setu| 91原创在线视频| 91国偷自产一区二区使用方法| 色噜噜狠狠一区二区三区果冻| 色综合天天综合网天天狠天天| 欧美精品在线视频| 色综合 综合色| 欧美三级日韩在线| 日韩午夜在线观看| 久久天堂av综合合色蜜桃网| 国产欧美综合在线| 欧美一区二区女人| 麻豆精品一区二区综合av| 亚洲成a人片综合在线| 免费国产亚洲视频| 国产不卡视频在线观看| 91亚洲精品一区二区乱码| 色香蕉久久蜜桃| 欧美一区二区网站| 欧美高清在线视频| 亚洲一区av在线| 激情综合网av| 99re视频精品| 欧美一级国产精品| 国产精品久线在线观看| 亚洲成a人v欧美综合天堂下载| 日韩电影免费一区| 成人免费黄色在线| 欧美日韩午夜在线| 中文字幕欧美日韩一区| 亚洲一区二区美女| 国产精品一卡二卡在线观看| 日本久久电影网| 精品成人a区在线观看| 亚洲精品日日夜夜| 国产美女精品在线| 欧美日韩一区三区| 日本一区二区不卡视频| 婷婷国产v国产偷v亚洲高清| 成人黄色免费短视频| 欧美一级日韩一级| 一区二区三区在线免费观看| 国产一区二区三区精品欧美日韩一区二区三区 | 一本一道久久a久久精品 | 成人午夜av电影| 欧美三级日本三级少妇99| 国产欧美日韩在线| 美女脱光内衣内裤视频久久网站| 91片黄在线观看| 久久精品免费在线观看| 秋霞av亚洲一区二区三| 在线区一区二视频| 综合激情成人伊人| 国产人成一区二区三区影院| 欧美成人精品高清在线播放| 日韩av一区二区在线影视| 欧美一级片在线观看| 成人av午夜影院| 欧美精品久久一区二区三区| 日韩一区在线免费观看| 粉嫩蜜臀av国产精品网站| 精品少妇一区二区三区免费观看| 亚洲国产aⅴ成人精品无吗| 日本韩国一区二区三区| 亚洲欧洲日韩在线| 99精品国产一区二区三区不卡 | 亚洲人成网站色在线观看| 国产精品1区2区3区在线观看| 日韩视频一区在线观看| 日本不卡高清视频| 日韩欧美电影一区| 午夜精品成人在线视频| 美女一区二区视频| 麻豆精品新av中文字幕| 制服丝袜中文字幕亚洲| 日本亚洲视频在线| 欧美精品乱人伦久久久久久| 亚洲第一激情av| 欧美人与禽zozo性伦| 婷婷六月综合网| 日韩欧美一区二区久久婷婷| 精品一区二区三区的国产在线播放| 日韩小视频在线观看专区| 久久91精品国产91久久小草| 久久亚洲精品小早川怜子| 国产一区二区按摩在线观看| 国产精品久久久久影院| 91啪亚洲精品| 亚洲人成网站影音先锋播放| 91国产丝袜在线播放| 日日嗨av一区二区三区四区| 欧美一级日韩一级| 丁香亚洲综合激情啪啪综合| 亚洲欧美电影一区二区| 欧美亚洲国产一区二区三区 | 国产精品99精品久久免费| 国产午夜精品福利| 91亚洲精品久久久蜜桃| 亚洲视频小说图片| 欧美久久久久久蜜桃| 国产一区日韩二区欧美三区| 亚洲欧洲国产专区| 制服丝袜日韩国产| 成人精品电影在线观看| 美女一区二区三区| 中文一区一区三区高中清不卡| 99久久免费精品| 天天影视网天天综合色在线播放| 日韩一区二区三区电影| 成人高清免费观看| 五月婷婷另类国产| 国产精品视频第一区| 欧美一区三区四区| 91亚洲精品乱码久久久久久蜜桃| 婷婷成人综合网| 亚洲欧洲精品天堂一级| 欧美xxxx老人做受| 在线观看欧美日本| 成人小视频在线| 久久精品国产77777蜜臀| 亚洲精品美国一| 国产精品视频你懂的| 欧美一级夜夜爽| 91国产免费观看| 99国产精品视频免费观看| 久久99精品国产麻豆婷婷洗澡| 依依成人综合视频| 国产视频不卡一区| 精品久久久久一区| 91麻豆精品国产91久久久久久 | 一本大道综合伊人精品热热| 国产一区二区成人久久免费影院| 日韩国产一二三区| 中文字幕一区二区三区在线观看| 26uuu国产电影一区二区| 欧美狂野另类xxxxoooo| 成人动漫一区二区三区| 亚洲chinese男男1069| 久久综合久久综合亚洲| 日韩一区二区三区av| 欧美理论片在线| 国产午夜精品一区二区三区嫩草 | 色妞www精品视频| 成人动漫在线一区| 成人免费看片app下载| 国产黄色精品视频| 国产裸体歌舞团一区二区| 久久精品国产精品亚洲精品| 奇米在线7777在线精品| 麻豆久久久久久久| 国产真实乱对白精彩久久| 毛片不卡一区二区| 黄色小说综合网站| 国产风韵犹存在线视精品| 国产一区不卡精品| 国产一区二区伦理| 国产成人午夜精品5599 | 中文字幕精品一区二区精品绿巨人| 精品国产99国产精品| 亚洲精品一区二区三区香蕉| 337p亚洲精品色噜噜| 亚洲美腿欧美偷拍| 国产精品美女久久福利网站 | 欧美精品一级二级三级| 亚洲精品综合在线| 亚洲激情自拍偷拍| 综合激情成人伊人| 亚洲电影中文字幕在线观看| 视频在线观看一区| 美国一区二区三区在线播放| 国产精品一区二区不卡| av影院午夜一区| 欧美日韩中文一区| 26uuu另类欧美亚洲曰本| 国产精品久久久久久久浪潮网站| 伊人一区二区三区| 麻豆精品蜜桃视频网站| 成人综合婷婷国产精品久久| 91国偷自产一区二区三区观看| 在线播放91灌醉迷j高跟美女 | 精品日韩一区二区三区免费视频| 欧美不卡视频一区| 天天亚洲美女在线视频| 欧美成人bangbros| 中文字幕五月欧美| 婷婷中文字幕一区三区| 国产一区二区电影| 欧美午夜精品久久久| 久久精品欧美一区二区三区麻豆| 亚洲美女免费视频| 国产在线播放一区| 欧美色图一区二区三区| 欧美极品另类videosde|