導航:首頁 > 操作系統 > 單片機程序結構

單片機程序結構

發布時間:2023-03-27 19:43:41

① 51單片機的內部結構有哪些

51單片機內部包含的功能組件及作用主要有:

1、cpu主晶元(內部通過匯流排連接擴展的設備)

2、時鍾電路(為單片機提供震盪脈沖)

3、電源電路(為單片機提供電源)

4、內部數據存儲器RAM(包括通用數據寄存器和專用寄存器SFR,主要是數據存儲區。)

5、程序存儲器ROM(主要是存儲程序,51系列有4K內部程序ROM,可以外擴64K。)

6、並行埠4*8位(P0,P1,P2,P3主要是數據交換介面。)

7、串列口(TXD,RXD用於串口通信。)

8、蠢州中斷系統(外中斷0,定時計數T0,外中斷1,定時計數T1,串口中斷。)

9、定時/計數器(16位用於外部的計數和定時功能。)

(1)單片機程序結構擴展閱讀

Proteus 自從有了單片機也就有了開發系統,隨著單片機的發展開發系統也在不斷發展。 keil是一種先進的單片機集成開發系統。它代表著匯編語言單片機開發系統的最新發展,首創多項便利技術,將開發的編程、模擬、調試、寫入、加密等所有過程一氣呵成,中間不須任何編譯或匯編。

功能特性

1、可以模擬63K程序空間,接近64K 的16位地址空間。

2、可以模擬64Kxdata 空間,全部64K 的16位地址空間。

3、可以真實模擬全部32 條IO腳。

4、完全兼容keilC51 UV2 調試環境,可以通過UV2 環境進行單步,斷點, 全速等操作。

5、可以使用C51語言或者ASM匯編語言進行調試。

6、可以非常方便地進行所有變數觀察,包括滑鼠取值觀察,即滑鼠放在某 變數上就會立即顯示出它此的值。

7、可選 使用用戶晶振,支持0-40MHZ晶振頻率。

8、片上帶有768位元組的xdata,您可以在模擬時選 使用他們,進行xdata 的模擬。

9、可以模擬雙DPTR 指針。

10、可以模擬去除ALE 信號輸出。

11、自適應300-38400bps 的所有波特率通訊。

12、體積非常細帶褲蔽小,非常方便插入到用戶板中.插入時緊貼用戶板,沒有連接電纜,這樣可以有效地減少運行中的干擾,避免模擬時出現莫名其妙的故障。

13、模擬插針採用優質鍍金插針,可純嘩以有效地防止日久生銹,選擇優質園腳IC插座,保護模擬插針,同時不會損壞目標板上的插座. 。

14、模擬時監控和用戶代碼分離,不可能產生不能模擬的軟故障。

15、RS-232介面不計成本採用MAX202集成電路,串列通訊穩定可靠,絕非一般三極體的簡易電路可比。

參考資料網路--51單片機

② 單片機基本結構

單片機,全稱單片微型計算機,又稱微控制器,是把中央處理器、存儲器、定時/計數器、各種輸入輸出介面等都集成在一塊集成電路晶元上的微型計算機。 單片機的使用領域已十分廣泛,如智能儀表、實時工控、通訊設備、導航系統、家用電器等。

基本結構
1.運算器

運算器由運算部件——算術邏輯單元(Arithmetic&Logical Unit,簡稱ALU)、累加器和寄存器等幾部分組成。ALU的作用是把傳來的數據進行算術或邏輯運算,輸入來源為兩個8位數據,分別來自累加器和數據寄存器。ALU能完成對這兩個數據進行加、減、與、或、比較大小等操作,最後將結果存入累加器。例如,兩個數6和7相加,在相加之前,操作數6放在累加器中,7放在數據寄存器中,當執行加法指令時,ALU即把兩個數相加並把結果13存入累加器,取代累加器原來的內容6。

運算器有兩個功能:

(1) 執行各種算術運算。

(2) 執行各種邏輯運算,並進行邏輯測試,如零值測試或兩個值的比較。

運算器所執行全部操作都是由控制器發出的控制信號來指揮的,並且,一個算術操作產生一個運算結果,一個邏輯操作產生一個判決。

2.控制器

控制器由程序計數器、指令寄存器、指令解碼器、時序發生器和操作控制器等組成,是發布命令的「決策機構」,即協調和指揮整個微機系統的操作。其主要功能有:

(1) 從內存中取出一條指令,並指出下一條指令在內存中的位置。

(2) 對指令進行解碼和測試,並產生相應的操作控制信號,以便於執行規定的動作。

(3) 指揮並控制CPU、內存和輸入輸出設備之間數據流動的方向。

微處理器內通過內部匯流排把ALU、計數器、寄存器和控制部分互聯,並通過外部匯流排與外部的存儲器、輸入輸出介面電路聯接。外部匯流排又稱為系統匯流排,分為數據匯流排DB、地址匯流排AB和控制匯流排CB。通過輸入輸出介面電路,實現與各種外圍設備連接。

3.主要寄存器

(1)累加器A

圖1-2 單片機組成框圖

累加器A是微處理器中使用最頻繁的寄存器。在算術和邏輯運算時它有雙功能:運算前,用於保存一個操作數;運算後,用於保存所得的和、差或邏輯運算結果。

(2)數據寄存器DR

數據寄存器通過數據匯流排向存儲器和輸入/輸出設備送(寫)或取(讀)數據的暫存單元。它可以保存一條正在解碼的指令,也可以保存正在送往存儲器中存儲的一個數據位元組等等。

(3)指令寄存器IR和指令解碼器ID

指令包括操作碼和操作數。

指令寄存器是用來保存當前正在執行的一條指令。當執行一條指令時,先把它從內存中取到數據寄存器中,然後再傳送到指令寄存器。當系統執行給定的指令時,必須對操作碼進行解碼,以確定所要求的操作,指令解碼器就是負責這項工作的。其中,指令寄存器中操作碼欄位的輸出就是指令解碼器的輸入。

(4)程序計數器PC

PC用於確定下一條指令的地址,以保證程序能夠連續地執行下去,因此通常又被稱為指令地址計數器。在程序開始執行前必須將程序的第一條指令的內存單元地址(即程序的首地址)送入PC,使它總是指向下一條要執行指令的地址。

(5)地址寄存器AR

地址寄存器用於保存當前CPU所要訪問的內存單元或I/O設備的地址。由於內存與CPU之間存在著速度上的差異,所以必須使用地址寄存器來保持地址信息,直到內存讀/寫操作完成為止。

顯然,當CPU向存儲器存數據、CPU從內存取數據和CPU從內存讀出指令時,都要用到地址寄存器和數據寄存器。同樣,如果把外圍設備的地址作為內存地址單元來看的話,那麼當CPU和外圍設備交換信息時,也需要用到地址寄存器和數據寄存器。

③ 單片機循環程序有哪幾種基本結構

如果是C語言的話,那麼單片機C51循環和普通C語言一樣。如果是匯編的話,那麼列舉如下:
1、DJNZ指令,常見延時程序。
DELAY:
MOV R2,#250
DJNZ R2,$
RET
2、CJNE指令,常見處理數據塊。
MOV DPTR,#1000H
MOV R0,#30H
LOOP:
CLR A
MOVX A,@DPTR
MOV @R0,A
INC DPTR
INC R0
CJNE R0,#50H,LOOP
RET
3、直接跳轉,用LJMP或SJMP,常見主循環
MAIN:
JB P1.0,MAIN1
CLR P0.0
SJMP MAIN
MAIN1:
JB P1.1,MAIN2
CLR P0.1
SJMP MAIN
MIAN2:
JB P1.2,MAIN
SETB P0.0
SETB P0.1
SJMP MAIN
END
還有其他表現形式,但類型都是脫離於這三種形態。

④ 簡述單片機的基本結構與功能

單片機的基本結構:運算器、控制器、主要寄存器。運算器功能:執行各種算術運算;執行各種邏輯運算,並進行邏輯測試,如零值測試或兩個值的比較。主要寄存器功能:用於保存當前CPU所要訪問的內存單元或I/O設備的地址。

控制器功能:從內存中取出一條指令,並指出下一條指令在內存中的位置;對指令進行解碼和測試,並產生相應的操作控制信號,以便於執行規定的動作;指揮並控制CPU、內存和輸入輸出設備之間數據流動的方向。

(4)單片機程序結構擴展閱讀

應用范圍:單片機滲透到我們生活的各個領域。導彈的導航裝置,飛機上各種儀表的控制,計算機的網路通訊與數據傳輸,工業自動化過程的實時控制和數據處理,廣泛使用的各種智能IC卡,民用豪華轎車的安全保障系統,錄像機、攝像機、全自動洗衣機的控制等等。

還有自動控制領域的機器人、智能儀表、醫療器械以及各種智能機械。因此,單片機的學習、開發與應用將造就一批計算機應用與智能化控制的科學家、工程師。

⑤ 單片機程序有哪幾部分組成頭文件的作用是什麼

頭文件,變數聲明,函數聲明,子函數,主函數這幾部分組成,頭文件其實就是一種聲明,將單片機中的一些常用的符號變數進行定義聲明,對一些特殊功能寄存器進行聲明,對一些關健字進行定義,比如我們常用的P0口,在寫程序的時候你就不用在去定義這個符號,不用把它的位元組地址給這個符號了,直接用就可以

⑥ 單片機的內部組成結構

單片機的內部組成結構如下:

運算器:用於實現算術和邏輯運算。計算機的運算和處理都在這里進行。

控制器:是計算機的控制指揮部件,使計算機各部份能自動協調的工作。

存儲器:用於存放程序和數據;(又分為內存儲器和外存儲器,內存儲器就如我們電腦的硬碟,外存儲器就如我們的U盤)。

輸入設備:用於將程序和數據輸入到計算機(例如我們電腦的鍵盤、掃描儀)。

輸出設備:輸出設備用於把計算機數據計算或加工的結果以用戶需要的形式顯示或保存(例如我們的列印機)。

單片機硬體特徵

(1)單片機的體積比較小, 內部晶元作為計算機系統,其結構簡單,但是功能完善,使用起來十分方便,可以模塊化應用。

(2)單片機有著較高的集成度,可靠性比較強,即使單片機處於長時間的工作也不會存在故障問題。

(3) 單片機在應用時低電壓、低能耗,是人們在日常生活中的首要選擇, 為生產與研發提供便利。

(4)單片機對數據的處理能力和運算能力較強,可以在各種環境中應用,且有著較強的控制能力。

⑦ 單片機匯編語言程序的三種基本結構

匯編語言程序有順序程序、分支程序、循環程序三種。分支結構的執行是依據一定的條件選擇執行路徑,而不是嚴格按照語句出現的物理順序。

分支結構的程序設計方法的關鍵在於構造合適的分支條件和分析程序流程,根據不同的程序流程選擇適當的分支語句。



(7)單片機程序結構擴展閱讀:

注意事項:

匯編指令不區分大小寫,目的操作數是存結果的,原操作數是被操作的。

二進制數後跟b,十六進制數後跟h,十進制數不需特殊標記。

匯編源程序中,數據不能以字母開頭,需要在前面加上0,如0a000h。

⑧ 單片機編寫程序時常用的有哪幾種基本的程序結構

前後台;模擬時間片輪調度;模擬優先順序調度;
嵌入式操作系統;

⑨ 一個完整的單片機c語言程序包含哪幾個部分

個人覺得,一個完整C程序至少應該包含頭文件、初始化、主程序四個部分,頭文件是程序編譯預處理的重要組成部分,缺了它就無法生成目標代碼;初始化部分包含變數初始化和埠初始化;主程序是一個C程序的核心代碼,由此執行或調用一些具有特定功能的函數模塊以完成程序的預設功能。

⑩ 51單片機的結構組成

上圖就是我們要研究學習的對象,51單片機摧部結構圖了。大家看看上圖,中間的一條雙橫線就是51單片機的內部匯流排了。其它的部件都是通過內部的匯流排與CPU相聯接的,在第一節課時我們已跟大家講述過,8051單片機是匯流排結構的。下面我們就51單片機內部的單個部件與大家進行講解。
中央處理器(CPU):
剛跟大家講過,需要提醒的是MCS-51的CPU能處理8位二進制數或代碼。CPU是單片機的主要核心部件,在CPU裡麵包含了運算器、控制器以及若干寄存器等部件給成。
內部數據存儲器(RAM):
MCS-51單片機晶元共有256個RAM單元,其中後128單元被專用寄存器佔用(稍後我們詳解),能作為寄存器供用戶使用的只是前128單元,用於存放可讀寫的數據。因此通常所說的內部數據存儲器就是指前128單元,簡稱內部RAM。地址范圍為00H~FFH(256B)。是一個多用多功能數據存儲器,有數據存儲、通用工作寄存器、堆棧、位地址等空間。
內部程序存儲器(ROM):
在前面也已講過,MCS-51內部有4KB/8KB位元組的ROM(51系列為4KB,51系列為8KB),用於存放程序、原始數據或表格。因此稱之為程序存儲器,簡稱內部RAM。地址范圍為0000H~FFFFH(64KB)。
定時器/計數器
51系列共有2個16位的定時器/計數器(52系列共有3個16位的定時器/計數器),以實現定時或計數功能,並以其定時或計數結果對計算機進行控制。定時時靠內部分頻時鍾頻率計數實現,做計數器時,對P3.4(T0)或P3.5(T1)埠的低電平脈沖計數。
並行I/O口
MCS-51共有4個8位的I/O口(P0、P1、P2、P3)以實現數據的輸入輸出。具體功能在後面章節中將會詳細論述。
串列口
MCS-51有一個可編程的全雙工的串列口,以實現單片機和其它設備之間的串列數據傳送。該串列口功能較強,既可作為全雙工非同步通信收發器使用,也可作為移位器使用。RXD( P3.0)腳為接收埠,TXD(P3.1)腳為發送埠。
中斷控制系統
MCS-51單片機的中斷功能較強,以滿足不同控制應用的需要。51系列有5個中斷源(52系列有6個中斷源),即外中斷2個,定時中斷2個,串列中斷1個,全部中斷分為高級和低級共二個優先順序別,優先順序別的設置我們也將在後面進行詳細的講解。
定時與控制部件
MCS-51單片機內部有一個高增益的反相放大器,基輸入端為XTAL1輸出端為XTAL2。MCS-51晶元的內部有時鍾電路,但石英晶體和微調電容需外接。時鍾電路為單片機產生時鍾脈沖序列。

閱讀全文

與單片機程序結構相關的資料

熱點內容
質數的後代python 瀏覽:148
如何做好美逛App 瀏覽:590
租伺服器租用後怎麼使用 瀏覽:284
木勺解壓助眠視頻 瀏覽:370
酒吧陪女電影 瀏覽:657
雙胞胎兄弟的韓國愛情電影 瀏覽:425
女人遇到網球教練韓國電影 瀏覽:43
一線影院和二線影院 瀏覽:379
韓國電影食物鏈裡面的女主角叫什麼名字? 瀏覽:461
程序員做開發256G夠用嗎 瀏覽:186
c程序編譯的秘密 瀏覽:178
安卓頁面廣告怎麼關閉 瀏覽:666
linux信號量命令 瀏覽:345
父親出門上班兒子和繼母的日本電影 瀏覽:954
安卓機怎麼摳鋼化膜 瀏覽:390
免費看影視網站7大入口 瀏覽:535
doctrinephp 瀏覽:752
dos命令ip 瀏覽:444
李彩譚的電影免費觀看 瀏覽:221
c語言編譯模擬登錄頁面 瀏覽:819