国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品
電子工程網
標題:
初學51單片機幾個不易掌握的概念
[打印本頁]
作者:
educn88
時間:
2013-4-24 21:28
標題:
初學51單片機幾個不易掌握的概念
初學51單片機幾個不易掌握的概念
隨著電子技術的迅速發展,計算機已深入地滲透到我們的生活中,許多電子愛好者開始學習單片機知識,但單片機的內容比較抽象,相對電子愛好者已熟悉的模擬電路、數字電路,單片機中有一些新的概念,這些概念非常基本以至于一般作者不屑去談,教材自然也不會很深入地講解這些概念,但這些內容又是學習中必須要理解的,下面就結合本人的學習、教學經驗,對這些最基本概念作一說明,希望對自學者有所幫助。
一、總線:我們知道,一個電路總是由元器件通過電線連接而成的,在模擬電路中,連線并不成為一個問題,因為各器件間一般是串行關系,各器件之間的連線并不很多,但計算機電路卻不一樣,它是以微處理器為核心,各器件都要與微處理器相連,各器件之間的工作必須相互協調,所以就需要的連線就很多了,如果仍如同模擬電路一樣,在各微處理器和各器件間單獨連線,則線的數量將多得驚人,所以在微處理機中引入了總線的概念,各個器件共同享用連線,所有器件的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仿真。可能的情況下,當然以CPU仿真好。
學習單片機看到的一篇文章供大家初學者分享。
★這里是【深圳信盈達嵌入式實訓學院】,單片機培訓、嵌入式ARM培訓、linux培訓、PCB培訓、FPGA培訓,匯編C語言培訓、Android培訓、數電模電培訓、cortex-m3培訓!
技術咨詢:李老師13500505486 QQ982288214
南山實訓基地:深圳市南山區南新路與桃園路交匯處蘇豪名廈705室,
龍華實訓基地:深圳市寶安區民治大道東邊商務大樓1188
沙井實訓基地:深圳寶安區沙井街道創新路沙井廣場1號樓1506室,
布吉實訓基地: 深圳布吉街道深惠路與百鴿路交匯百合銀都國際D棟19G(百合酒店D棟
龍崗實訓基地:深圳市龍崗區南聯路10號佰好大廈406,地鐵南聯地鐵站C2出口
羅湖實訓基地:深圳羅湖區銀湖路軒閣花園A棟1樓
鄭州實訓基地:金水區文化路82號數碼銀座B座401 創新大廈對面
作者:
music0083
時間:
2013-4-30 15:36
雖然想去培訓,但是不知道能學到什么程度呢
作者:
eastsnow001
時間:
2013-6-19 00:05
歡迎光臨 電子工程網 (http://m.qingdxww.cn/)
Powered by Discuz! X3.4
主站蜘蛛池模板:
免费自拍偷拍
|
92手机看片福利永久国产
|
免费网站无遮挡
|
free性欧美hd另类精品
|
中文在线免费不卡视频
|
91av爱爱
|
欧美视频免费在线播放
|
韩国资源视频一区二区三区
|
69性影院在线观看国产精品87
|
插综合网
|
国产一级特黄aa大片高清
|
国产香蕉在线精彩视频
|
色欧美综合
|
wwwxx免费
|
日韩毛片久久91
|
亚洲国产日韩在线人成蜜芽
|
四虎最新影院
|
奇米影视7777久久精品
|
a一级特黄日本大片 s色
|
亚洲欧洲日产国码二区在线
|
青青青亚洲精品国产
|
四虎影视久久
|
韩国精品在线观看
|
www.五月天婷婷
|
男人天堂网在线播放
|
国产精品.com
|
69香蕉视频
|
狠狠操社区
|
亚洲人体一区
|
青草成人
|
亚洲一区二区三区精品视频
|
japan在线观看
|
日韩免费一级毛片
|
黄色视屏在线免费观看
|
成年黄网站在线观看免费
|
国产999视频
|
精品欧美一区二区三区在线观看
|
亚洲最新在线观看
|
成人免费网站视频ww
|
久久天天躁夜夜躁狠狠躁2020
|
国产在线小视频
|