資料介紹
前面已經介紹了模塊化設計的特點和巨大優勢。在我們的實驗板中,單片機是其中最核心的一個模塊;而對于單片機來說,又是由更多的子模塊組合而成。本文主要對單片機/計算機系統中最核心的幾個模塊進行簡要介紹。
為了便于進行說明,后面會將單片機/計算機簡單的統稱為微機系統。
信息與數據
何為信息?可以理解成我們周圍各種所能感知到的東西、還有人們所思所想等等,信息的概念不好解釋,但是大家都能理解,也不是我要討論的重點。
在微機系統中,能處理很多信息,例如我正在寫的內容,就是文字和圖像信息。處理信息的前提,就是對信息進行表示,例如文字就是一種形式。
何為數據?在微機系統中,其結構決定了各種能處理的信息都需要表示成二進制數字,這就被稱為數據。例如英文字符可以通過ASCII碼表示成一個個字節的數據等。
CPU
人的大腦每時每刻所做的最重要的事,就是對大量的信息進行處理。對內部已有信息和外界信息進行處理,產生新的信息保存在大腦中,或對外界作出反應。
CPU即中央處理器(CPU=Central Processing Unit),是一個微機系統最核心的部件,可以認為相當于人的大腦中的思維部分,負責數據的處理。
存儲器:RAM/ROM/外存儲器
存儲器用來保存數據,例如在硬盤上可以存放電影音樂,可以認為相當于大腦中的記憶部分。
RAM
即隨機存儲器(RAM=Random Access Memory),最重要的特點是可讀可寫。寫是指修改或者刪除數據。另外,RAM的速度相對比較快;斷電后數據會丟失;另外由于造價較高通常容量不大,但是夠用了。通常在電腦中相當于內存。
在學習C語言的時候,定義一個變量,例如int a,程序在執行的時候,這個變量就會保存在RAM中。
RAM根據結構和工作原理,又分為SRAM(=Static RAM,靜態RAM)和DRAM(=Dynamic RAM,動態RAM)兩種,有興趣可以自己查閱相關資料。
ROM
即只讀存儲器(ROM=Read Only Memory),主要特點是通常情況下存儲內容不能被修改;斷電后數據不會丟失。
最早的ROM是一次性寫入的,寫入完成后通過高電壓燒斷ROM內部的熔絲,之后就不能再修改,而這也是單片機“燒寫程序”一詞的由來。后來為了適應硬件發展,可用紫外線擦寫的ROM被發明出來,但是操作起來比較麻煩。再到后來電擦寫的ROM誕生了,也就是后面會用到的EEPROM(EEPROM=Electrically Erasable Programmable Read-Only Memory,帶電可擦可編程只讀存儲器)。
給單片機燒寫程序時,就是將代碼燒寫到了單片機的ROM中;運行程序的時候,指令就會從ROM中取出并被執行。
備注1:ROM常被誤認為是對應于計算機上的硬盤,實際上硬盤屬于外部存儲,而ROM對應于計算機主板上的BIOS存儲器等。
備注2:在計算機中,常用到的應用程序平時是保存在硬盤中的,執行的時候,會由操作系統裝載到內存的代碼區域而不是ROM,這和單片機中的程序的執行過程不一樣(與單片機程序執行過程一致的是BIOS程序等,而不是操作系統之上的應用程序)。
備注3:一些單片機具備IAP功能(IAP=In Application Programming,在應用編程),利用一段小程序更新單片機ROM中的程序,可以實現在不斷電的情況下自動更新單片機程序。
外存儲器
一般計算機系統中存儲器包括主存儲器和輔助存儲器,主存儲器又叫內存儲器(內存),輔助存儲器又叫外儲存器(外存)。常見的外存儲器有硬盤、軟盤、光盤、U盤等,斷電后仍然能保存數據。
中斷系統
中斷系統是計算機中非常重要的一個概念,但是這個詞看起來很難理解。何為中斷系統呢?我先講一個故事。
有一天班長收到通知要讓五位同學每人填一份表格,填完后盡快收集起來上交給老師。班長把表格分別發給了這五位同學,但是每個同學什么時候能填好表格是不確定的。這時他有幾種選擇。
方法一,每隔一段時間輪流去問這五位同學有沒有填完,如果填完了,確認無誤,就收集起來。
方法二,班長發表格時告訴這幾位同學,填完表后馬上交給他,然后自己就能繼續好好看書了。每當有同學交表格的時候,班長就會把書簽放到正在看的那一頁書中,然后檢查這個同學的表格填寫是否正確。確認了以后,班長又會從剛剛看的那一頁繼續看書。
顯然,方法一效率實在太低,浪費了很多時間;方法二效果不錯,效率提高了很多。
故事講完了,這里就要介紹中斷系統了。在基本的微機系統中,CPU負責主要數據的處理工作(不考慮計算機顯卡這類設備),通常任務繁重(相當于故事中的班長)。
有時外圍器件需要執行工作,執行結果要讓CPU及時處理,但又不能確定具體完成時間(故事中的同學填表格)。
原因有可能是因為外圍模塊速度遠不及CPU,例如從硬盤讀數據;也可能是執行不需CPU干預的費時操作(也可以理解成外圍模塊執行這個操作的速度慢);或者是接收來自外界的操作,例如按下鍵盤電腦需要很快進行響應,要不然就表現為很卡甚至死機了。
這時為了及時知道外圍器件處理的結果并進行處理,就有幾種工作流程了。
一是輪詢法(故事中的方法一)。以一定的間隔不斷查詢外圍器件工作狀態。好處是設計起來比較簡單;缺點是效率太低,特別是當外圍設備太多、速度差異很大時,CPU幾乎沒空干別的事。
二是中斷法(故事中的方法二)。外圍模塊處理好任務以后,主動給CPU發送中斷請求(填好表格交給班長)。然后CPU中斷當前任務,轉而處理中斷請求,對該模塊的執行結果進行處理(檢查表格填寫正確,并收集表格)。處理中斷請求之前,需要保護現場(放書簽),處理完中斷請求,再恢復現場,繼續之前任務(繼續看書)。
DMA
前面的故事其實還有方法三。班長由于最近事情太多,決定請副班長幫忙收集表格,讓同學們自己把表格交給副班長。副班長把表格都收集完了,再由他交給老師。這種方法需要征得副班長的同意,不過效果很好。
同樣對于微機系統來說,也有第三種方法,這種方法就叫做DMA(DMA=Direct Memory Access,直接內存訪問)。在CPU之外設置一個DMA控制器(副班長),根據CPU發送的指令,外圍設備處理完數據,通過DMA直接將數據保存到內存中的指定位置,然后才用中斷通知CPU處理。
在比較復雜的系統中,DMA能大大提高執行效率。51等單片機本身沒有DMA功能,可以在外部添加DMA控制器芯片實現(例如Intel 8237)。不過性能相對較低的單片機不能實現復雜系統,所以使用DMA的意義不大。
定時器/計數器
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 51單片機(1)單片機概述
- 51單片機原理以及接口技術(一)-單片機發展概述
- 小白學單片機(15) 單片機程序下載失敗總結資料下載
- 小白學單片機(16) 單片機/計算機系統概述:模塊化思想資料下載
- 小白學單片機(18) 單片機/計算機系統概述:通信接口與協議資料下載
- 小白學單片機(19) 單片機/計算機系統概述:擴展模塊資料下載
- 單片機小白學寄存器資料下載
- 單片機入門匯編之單片機接收計算機串口發送的數據程序免費下載 14次下載
- 單片機入門匯編之單片機通過串口向計算機發送數據程序免費下載 8次下載
- 如何選擇合適的單片機常用單片機介紹 7次下載
- 什么是AVR單片機AVR單片機的優勢,特點,應用等資料概述 2次下載
- 什么叫單片機?單片機原理及接口技術的詳細資料概述免費下載 42次下載
- 基于單片機的計算機箱智能監控系統 2次下載
- 基于單片機的計算機箱智能監控系統 0次下載
- 單片微型計算機概述
- 什么是單片機? 單片機由哪幾個主要部分組成? 9759次閱讀
- 單片機的特點及功能 3793次閱讀
- 計算機與單片機的串口通信的方案設計 5558次閱讀
- 什么是單片機_單片機的概念 3.6w次閱讀
- PIC單片機與PC機實現串行通信的設計 2954次閱讀
- PIC單片機虛擬串行通信設計 1421次閱讀
- 單片機各種復位電路大全 詳解單片機復位電路 4.7w次閱讀
- 教你如何玩轉STM8單片機! 1w次閱讀
- 新手學習單片機的首選:51單片機 8836次閱讀
- 單片機學習入門_學單片機需要什么基礎 3.9w次閱讀
- 單片機和電腦pc計算機的區別 1.7w次閱讀
- 單片機有什么用_單片機的應用領域介紹 1w次閱讀
- 我對單片機的理解 654次閱讀
- 關于計算機組成原理與單片機原理 3805次閱讀
- 單片機看門狗電路的作用,看門狗系統設計技巧及其抗干擾措施 4334次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關電源基礎知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統的設計與實現
- 0.61 MB | 2次下載 | 免費
- 6基于FPGA的C8051F單片機開發板設計
- 0.70 MB | 2次下載 | 免費
- 751單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 8基于51單片機的RGB調色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21548次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183278次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多