国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

zzxydedu118的個人空間 http://m.qingdxww.cn/space-uid-83159.html [收藏] [復制] [RSS]

博客

新手必看,初學51單片機幾個不易掌握的概念!

已有 1676 次閱讀2014-5-24 17:35

隨著電子技術的迅速發展,計算機已深入地滲透到我們的生活中,許多電子

愛好者開始學習單片機知識,但單片機的內容比較抽象,相對電子愛好者已熟悉

的模擬電路、數字電路,單片機中有一些新的概念,這些概念非;疽灾劣谝

般作者不屑去談,教材自然也不會很深入地講解這些概念,但這些內容又是學習

中必須要理解的,下面就結合本人的學習、教學經驗,對這些最基本概念作一說

明,希望對自學者有所幫助。 
  一、總線:我們知道,一個電路總是由元器件通過電線連接而成的,在模擬

電路中,連線并不成為一個問題,因為各器件間一般是串行關系,各器件之間的

連線并不很多,但計算機電路卻不一樣,它是以微處理器為核心,各器件都要與

微處理器相連,各器件之間的工作必須相互協調,所以就需要的連線就很多了,

如果仍如同模擬電路一樣,在各微處理器和各器件間單獨連線,則線的數量將多

得驚人,所以在微處理機中引入了總線的概念,各個器件共同享用連線,所有器

件的8根數據線全部接到8根公用的線上,即相當于各個器件并聯起來,但僅這樣

還不行,如果有兩個器件同時送出數據,一個為0,一個為1,那么,接收方接收

到的究竟是什么呢?這種情況是不允許的,所以要通過控制線進行控制,使器件

分時工作,任何時候只能有一個器件發送數據(可以有多個器件同時接收)。器

件的數據線也就被稱為數據總線,器件所有的控制線被稱為控制總線。在單片機

內部或者外部存儲器及其它器件中有存儲單元,這些存儲單元要被分配地址,才

能使用,分配地址當然也是以電信號的形式給出的,由于存儲單元比較多,所以

,用于地址分配的線也較多,這些線被稱為地址總線。

  二、數據、地址、指令:之所以將這三者放在一起,是因為這三者的本質都

是一樣的──數字,或者說都是一串‘0’和‘1’ 組成的序列。換言之,地址

、指令也都是數據。指令:由單片機芯片的設計者規定的一種數字,它與我們常

用的指令助記符有著嚴格的一一對應關系,不可以由單片機的開發者更改。地址

:是尋找單片機內部、外部的存儲單元、輸入輸出口的依據,內部單元的地址值

已由芯片設計者規定好,不可更改,外部的單元可以由單片機開發者自行決定,

但有一些地址單元是一定要有的(詳見程序的執行過程)。數據:這是由微處理

機處理的對象,在各種不同的應用電路中各不相同,一般而言,被處理的數據可

能有這么幾種情況:

1·地址(如MOV DPTR,#1000H),即地址1000H送入DPTR。

2·方式字或控制字(如MOV TMOD,#3),3即是控制字。

3·常數(如MOV TH0,#10H)10H即定時常數。

4·實際輸出值(如P1口接彩燈,要燈全亮,則執行指令:MOV P1,#0FFH,要燈

全暗,則執行指令:MOV P1,#00H)這里0FFH和00H都是實際輸出值。又如用于

LED的字形碼,也是實際輸出的值。

理解了地址、指令的本質,就不難理解程序運行過程中為什么會跑飛,會把數據

當成指令來執行了。

  三、P0口、P2口和P3的第二功能用法初學時往往對P0口、P2口和P3口的第二

功能用法迷惑不解,認為第二功能和原功能之間要有一個切換的過程,或者說要

有一條指令,事實上,各端口的第二功能完全是自動的,不需要用指令來轉換。

如P3.6、P3.7分別是WR、RD信號,當微片理機外接RAM或有外部I/O口時,它們被

用作第二功能,不能作為通用I/O口使用,只要一微處理機一執行到MOVX指令,

就會有相應的信號從P3.6或P3.7送出,不需要事先用指令說明。事實上‘不能作

為通用I/O口使用’也并不是‘不能’而是(使用者)‘不會’將其作為通用I/O

口使用。你完全可以在指令中按排一條SETB P3.7的指令,并且當單片機執行到

這條指令時,也會使P3.7變為高電平,但使用者不會這么去做,因為這通常這會

導致系統的崩潰(即死機)。

  四、程序的執行過程單片機在通電復位后8051內的程序計數器(PC)中的值

為‘0000’,所以程序總是從‘0000’單元開始執行,也就是說:在系統的ROM

中一定要存在‘0000’這個單元,并且在‘0000’單元中存放的一定是一條指令

。

  五、堆棧堆棧是一個區域,是用來存放數據的,這個區域本身沒有任何特殊

之處,就是內部RAM的一部份,特殊的是它存放和取用數據的方式,即所謂的‘

先進后出,后進先出’,并且堆棧有特殊的數據傳輸指令,即‘PUSH’和‘POP

’,有一個特殊的專為其服務的單元,即堆棧指針SP,每當執一次PUSH指令時,

SP就(在原來值的基礎上)自動加1,每當執行一次POP指令,SP就(在原來值的

基礎上)自動減1。由于SP中的值可以用指令加以改變,所以只要在程序開始階

段更改了SP的值,就可以把堆棧設置在規定的內存單元中,如在程序開始時,用

一條MOV SP,#5FH指令,就時把堆棧設置在從內存單元60H開始的單元中。一般

程序的開頭總有這么一條設置堆棧指針的指令,因為開機時,SP的初始值為07H

,這樣就使堆棧從08H單元開始往后,而08H到1FH這個區域正是8031的第二、三

、四工作寄存器區,經常要被使用,這會造成數據的渾亂。不同作者編寫程序時

,初始化堆棧指令也不完全相同,這是作者的習慣問題。當設置好堆棧區后,并

不意味著該區域成為一種專用內存,它還是可以象普通內存區域一樣使用,只是

一般情況下編程者不會把它當成普通內存用了。

  六、單片機的開發過程這里所說的開發過程并不是一般書中所說的從任務分

析開始,我們假設已設計并制作好硬件,下面就是編寫軟件的工作。在編寫軟件

之前,首先要確定一些常數、地址,事實上這些常數、地址在設計階段已被直接

或間接地確定下來了。如當某器件的連線設計好后,其地址也就被確定了,當器

件的功能被確定下來后,其控制字也就被確定了。然后用文本編緝器(如EDIT、

CCED等)編寫軟件,編寫好后,用編譯器對源程序文件編譯,查錯,直到沒有語

法錯誤,除了極簡單的程序外,一般應用仿真機對軟件進行調試,直到程序運行

正確為止。運行正確后,就可以寫片(將程序固化在EPROM中)。在源程序被編

譯后,生成了擴展名為HEX的目標文件,一般編程器能夠識別這種格式的文件,

只要將此文件調入即可寫片。在此,為使大家對整個過程有個認識,舉一例說明


ORG 0000H

LJMP START

ORG 040H

START:

MOV SP,#5FH ;設堆棧

LOOP:

NOP

LJMP LOOP ;循環

END ;結束

表1

:03000000020040BB

:0700400075815F000200431F

表2

02 00 40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 

FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 

FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 75 81 5F 00 02 

00 43

表3

表1為源程序,表2是匯編后得到的HEX文件,表3是由HEX文件轉換成的目標文件

,也就是最終寫入EPROM的文件,它由編程器轉換得到,也可以由HEXBIN一類的

程序轉換得到。學過手工匯編者應當不難找出表3與表1的一一對應關系,值得注

意的是從02 00 40后開始的一長串‘FF’,直到75 81,這是由于偽指令:ORG 

040H造成的結果。

  七、仿真、仿真機仿真是單片機開發過程中非常重要的一個環節,除了一些

極簡單的任務,一般產品開發過程中都要進行仿真,仿真的主要目的是進行軟件

調試,當然借助仿真機,也能進行一些硬件排錯。一塊單片機應用電路板包括單

片機部份及為達到使用目的而設計的應用電路,仿真就是利用仿真機來代替應用

電路板(稱目標機)的單片機部份,對應用電路部份進行測試、調試。仿真有

CPU仿真和ROM仿真兩種,所謂CPU仿真是指用仿真機代替目標機的CPU,由仿真機

向目標機的應用電路部份提供各種信號、數據,進行調試的方法。這種仿真可以

通過單步運行、連續運行等多種方法來運行程序,并能觀察到單片機內部的變化

,便于改正程序中的錯誤。所謂ROM仿真,就是用仿真機代替目標機的ROM,目標

機的CPU工作時,從仿真機中讀取程序,并執行。這種仿真其實就是將仿真機當

成一片EPROM,只是省去了擦片、寫片的麻煩,并沒有多少調試手段可言。通常

這是二種不同類型的仿真機,也就是說,一臺仿真機不能既做CPU仿真,又做ROM

仿真?赡艿那闆r下,當然以CPU仿真好。

學習單片機看到的一篇文章,供大家學習參考。

更多內容歡迎交流:宋老師 15238336542 QQ2905283896
歡迎大家進入中原地區的單片機嵌入式學習群:184441417。共同交流、學習。

路過

雞蛋

鮮花

握手

雷人

評論 (0 個評論)

facelist

您需要登錄后才可以評論 登錄 | 立即注冊

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
返回頂部
主站蜘蛛池模板: 国产精品九九免费视频 | 精品中文字幕一区在线 | 一级做α爰片久久毛片 | 成人在线亚洲 | 欧洲色网站 | 国产短视频精品区第一页 | 黄色免费观看视频网站 | 四虎精品影院永久在线播放 | 中文字幕avv| 欧美成人免费全部观看天天性色 | 婷婷综合五月天 | 亚洲国产精品91 | 国模啪啪一区二区三区 | 国外成人免费视频 | 国产在线一区观看 | 亚洲一卡二卡三卡四卡无卡麻豆 | 高清毛片一区二区三区 | 天天视频免费观看高清影视 | 456成人网| 男女免费视频网站 | 国产精品久久久久久久久久一区 | 国产成人永久在线播放 | 日韩成人在线视频 | 四虎www成人影院观看 | 国产精品永久免费10000 | 亚洲国产天堂久久综合图区 | 亚洲不卡视频在线观看 | 日本高清色本在线www游戏 | 精品国产欧美一区二区三区成人 | 亚洲一级理论片 | 国产精品免费观看视频播放 | 2022国产男人亚洲欧美天堂 | 九九久久精品国产 | 亚洲视频免费一区 | 国产美女视频国产视视频 | 成人免费视频网站 | 国产真实乱人视频在线看 | 男女羞羞视频在线观看 | 亚洲在成人网在线看 | 女人一级毛片 | 高清毛片在线看高清 |