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





創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評論