單片機存儲器的主要功能是存儲
A. 單片機數據存儲器的使用
程序存儲器的裡面存放的是單片機的靈魂,它就是工作程序。小的可能只有1KB(最多隻能裝1024條8位數據,因為實際指令還有許多2位元組、3位元組指令,所以它還裝不下1024條指令)大的也有128KB的。這些8位數據要麼在工廠里做摸子光刻進去,要麼一次性的燒寫進去,要麼……用編程器這個特殊工具把調試成功的機器碼裝載進去,或者像AVR單片機那樣自己花幾塊錢做一條下載線,把電腦里這些東西灌進去(或許是AVR最吸引人之處),它一旦進駐電腦的程序存儲器中,除了藉助上述裝置便不能自由改寫,在單片機運行時,只是從其中讀出指令或固定的數據,所以給程序存儲器一個"只讀存儲器"的別名,簡寫為ROM,包括用編程器寫紫外線擦除內容的EPROM。用電擦除的EEPROM和現在新興的FLASH ROM;一次性寫入的ROM僅用於電路和程序固定的批量產品中,實際工作起來,都是一樣的。
在實際的使用中,單片機運行時為了定位ROM中的數據,其實每個8位存儲單元都有一個固定的「地址」,通常用16進數表示:例如對於一個所謂4K的ROM,地址從0000H到0FFFH,(即是從0000,0001...4095),單片機運行時從哪個地址取數據,完全由程序本身決定,並不要我們干預。記住,給單片機一通電,它經過一個短暫的復位過程,立即轉向ROM的最低地址0000H,在這裡面放置的往往是一條「跳轉」指令,它從這里一步跳到另一個地址:程序的真正起始地址,例如51機的0080H。難道ROM中就只有指令不能來點別的?ROM是程序存儲器,除了指令外還包括運行程序必須的某些固定數據。假如,我們要求在單片機的某口上輸出00H到FFH(255)按正弦半波變化的數值,每秒10000次,那如果硬要它按照公式一個個計算,對於它來說未免力不從心,可是我們可以把預先計算好的數值存入ROM中,到時候直接取出。
提到數據存儲器,它其實是個可以隨時存取數據的一塊存儲器,也就是可以讀(取)也可以寫(存)的存儲器,簡稱RAM。現在的單片機裡面使用的RAM屬於靜態RAM或SRAM,這個和電腦用的內存條有所不同,只要你把數據寫入SRAM後,只要不斷電,或者不清除掉,這個數據就一直保存在那裡,電腦是用的動態RAM,要不斷給它加刷新脈沖才能保存數據。因為單片機處理的信息量比電腦小很多,所以它帶的RAM也比較少:從完全不帶、帶128、256、……1K、2K到4K,比ROM少多了。因為實際上RAM只是作為數據臨時存放的地方,除非進行圖像處理需要存放大量的數據外,一般對於執行較簡單任務的單片機,有這么多也夠用,如果實在不夠用也只能採取外加SRAM如6116、6264等等來擴展。為了對RAM單元存取8位二進數,當然也的和ROM一樣用「地址」來標示它的具體位置假如某單片機有1K(1024)RAM,它的地址也是從0000到1024,或16進數的0000H到03FFH可見和ROM的地址是一樣的,不會混淆不清?不會,因為讀ROM是由單片機的程序指針或轉移指令或查表指令進行,而這些指令是不會進入RAM區的,讀寫RAM是另外的數據傳送指令,也不會進入ROM區,這點也是和電腦不同之處,後者程序和數據都在內存條裡面,地址不同,如果竄位了就會造成不可預見後果。單片機的這種存儲器結構也稱為哈佛結構。
在這里本文中要說到的RAM,其在單片機里的用途主要是存放臨時數據,例如用單片機測溫,每秒測1次,顯示1分鍾的平均值(1分鍾更新一次);我們先通過感測器,放大電路,A/D轉換,把溫度這個模擬量轉變為成比例的二進數,然後每秒鍾1次把數字量通過輸入口順序存入到單片機的RAM中,然後對他們進行兩兩求和再平均的計算(題外話:要單片機進行「除法「運算比較麻煩,例外的是除以2,4,8……卻非常簡單。運用「右移」指令1、2、3次便可)最後的數值顯示出來,然後把這60個存儲單元統統寫0清除舊數據,下次又如此這般地循環進行。另外在單片機裡面還有若干寄存器,數量不多但是作用很大,除了暫存數據,還可以交換、加工、傳遞等等,以及隨時紀錄單片機當前處於什麼狀態,輸入輸出口,也是作為特殊功能的寄存器存在,具體各有不同,就不是隨便說說可以搞清楚的,要看有關書籍了。
參考資料來源:吳鑒鷹吧
貢獻文檔:網路文庫《吳鑒鷹單片機項目實戰精講》
單片機開發板學習參考:吳鑒鷹單片機開發板
B. 單片機存儲器主要是存儲什麼
存儲器是單片機的一個重要組成部分,有程序存儲器和數據存儲器,不同型號的單片機有不同的存儲器配置,經常包括的有RAM EEPROM FLASH,這些都是在晶元內部的,用戶是看不到的
C. 半導體存儲器是組成單片機主要部件之一,其功能是什麼
一是存儲固定不變的數據,如程序和表格,掉電不丟失。二是存儲運算的中間結果,叫RAM,掉電會丟失。
D. 單片機存儲器主要由哪幾個部分組成,如何使用
存儲器由存儲體、地址解碼器和控制電路組成。
1)存儲體是存儲數據信息的載體。由一系列存儲單元組成,每個存儲單元都有確定的地址。存儲單元通常按位元組編址,一個存儲單元為一個位元組,每個位元組能存放一個8位二進制數。就像一個大倉庫,分成許多房間,大倉庫相當於存儲體,房間相當於位元組,房間都有編號,編號就是地址。
2)地址解碼器將CPU發出的地址信號轉換為對存儲體中某一存儲單元的選通信號。相當於CPU給出地址,地址解碼器找出相應地址房間的鑰匙。通常地址是8位或1 6位,輸入到地址解碼器,產生相應的選通線,8位地址能產生28=256根選通線,即能選通256位元組。16位地址能產生216=65536=64K根選通線,即能選通64K位元組。當然要產生65536根選通線是很難想像的,實際上它是分成256根行線和256根列線,256 X 256=65536,合起來能選通65536個存儲單元。
3)存儲器控制電路包括片選控制、讀/寫控制和帶三態門的輸入/輸出緩沖電路。
①片選控制確定存儲器晶元是否工作。
②讀/寫控制確定數據傳輸方向;若是讀指令,則將已被選通的存儲單元中的內容傳送到數據匯流排上;若是寫指令,則將數據匯流排上的數據傳送到已被選通的存儲單元中。
③帶三態門的輸入/輸出緩沖電路用於數據緩沖和防止匯流排上數據競爭。數據匯流排相當於一條車流頻繁的大馬路,必須在綠燈條件下,車輛才能進入這條大馬路,否則要撞車發生交通事故。同理,存儲器的輸出端是連接在數據匯流排上的,存儲器中的數據是不能隨意傳送到數據匯流排上的。例如,若數據匯流排上的數據是「1」(高電平5V),存儲器中的數據是「0」(低電平OV),兩種數據若碰到一起就會發生短路而損壞單片機。因此,存儲器輸出埠不僅能呈現「1」和「O」兩種狀態,還應具有第三種狀態「高阻"態。呈「高阻"態時,它們的輸出埠相當於斷開,對數據匯流排不起作用,此時數據匯流排可被其他器件佔用。當其他器件呈「高阻"態時,存儲器在片選允許和輸出允許的條件下,才能將自己的數據輸出到數據匯流排上。
E. 單片機存儲器分為哪幾類各有哪些特點和用途
大的方面分為兩個:RAM和ROM。RAM用於存儲一些變數相當於草稿紙,ROM用於存儲程序。
RAM分為:內部RAM和外部擴展RAM
內部RAM又包括:
R0~R7工作寄存器(共4個工作區)地址00~1FH
位寄存器,地址20~2FH
用戶寄存器30~7FH(有的是30~FFH)
特殊功能寄存器80~FFH
F. 單片機片內存儲器和片外存儲器的作用和概念
單片機片內存儲器包括片內ROM和片內RAM,片內ROM用於存儲程序代碼,片內RAM包括寄存器和片內擴展RAM,比如STC的很多型號都有片內擴展EEPROM。
片外存儲器包括片外ROM和片外RAM,片外ROM用戶存儲程序代碼,片外RAM用於存儲用戶的可改寫數據。
G. 單片機ram存儲器功能
8051單片機的內部RAM共有256個單元,通常把這256個單元按其功能劃分為兩部分:低128單元(單元地址00H~7FH)和高128單元(單元地址80H~FFH)。
參考資料:http://wenku..com/link?url=5vg4janoxKHQ3pPo75-wGiKP1e-_C31PpMf-_iLmKrx62l-5a
H. 單片機存儲器分為哪幾類,各有哪些特點和用
單片機存儲器分為:程序存儲器和數據存儲器。
數據存儲器又分為:內部數據存儲器和外部數據存儲器。
內部數據存儲器又分為:
1、工作寄存器,共4組,地址范圍00H~1FH
2、位址空間,地址范圍20H~2FH
3、用戶寄存器,地址范圍30H~7FH(FFH)
4、特殊功能寄存器,地址范圍80H~FFH