將數據存入單片機存儲器中
㈠ 如何把採集到的數據存入到單片機內的存儲空間里
如果你想儲存的數據能夠掉電後不消失,那麼需要有待EEPROM的單片機;一般如果直接處理,存在定義的一個數組裡面就可以了。
㈡ 51單片機怎麼實現數據的存儲,通過51單片機可以把數據存到哪,沒學過usb協議
一般可以存在,單片機的flash里,flash本來是用來存放程序的,但是如果程序沒那麼大,可以存在flash的末尾。
具體代碼怎麼實現,可以查閱一下資料,我就不詳細描述了。
存flash 的時候要注意的地方有幾點:
1,flash的擦寫次數有限制,所以不要頻繁儲存
2,擦除flash的時候不要把代碼擦除了!
還有一種方法是存在外置的eeprom裡面,這種晶元保存數據比較安全可靠,容量也大,但是價格比較貴,一般是用SPI通訊來實現的!
純手打,望採納!
樓主還有什麼不明白的可以追問。
㈢ 單片機有沒有把數據寫入程序存儲器的功能
S52沒有,但是AT89C51RB2是有的,其它很多容量超過20K的單片機也有這個功能
㈣ 單片機里,平方數超過255,怎麼將數放到片內數據存儲器中
往往,心中最愛的那個人,最後卻離自己最遠。 蕭亞軒
㈤ 單片機應用程序一般存放在哪一個存儲器中
ROM。只讀存儲器(Read-Only Memory,ROM)以非破壞性讀出方式工作,只能讀出無法寫入信息。信息一旦寫入後就固定下來,即使切斷電源,信息也不會丟失,所以又稱為固定存儲器。
ROM所存數據通常是裝入整機前寫入的,整機工作過程中只能讀出,不像隨機存儲器能快速方便地改寫存儲內容。ROM所存數據穩定 ,斷電後所存數據也不會改變,並且結構較簡單,使用方便,因而常用於存儲各種固定程序和數據。
(5)將數據存入單片機存儲器中擴展閱讀
單片機的數據存儲器由讀寫存儲器RAM組成。其最大容量可擴展到64k,用於存儲實時輸入的數據。8051內部有256個單元的內部數據存儲器,其中00H~7FH為內部隨機存儲器RAM,80H~FFH為專用寄存器區。
實際使用時應首先充分利用內部存儲器,從使用角度講,搞清內部數據存儲器的結構和地址分配是十分重要的。因為將來在學習指令系統和程序設計時會經常用到它們。
8051內部數據存儲器地址由00H至FFH共有256個位元組的地址空間,該空間被分為兩部分,其中內部數據RAM的地址為00H~7FH(即0~127)。
而用做特殊功能寄存器的地址為80H~FFH。在此256個位元組中,還開辟有一個所謂「位地址」區,該區域內不但可按位元組定址,還可按「位(bit)」定址。對於那些需要進行位操作的數據,可以存放到這個區域。從00H到1FH安排了四組工作寄存器,每組佔用8個RAM位元組,記為R0~R7。
㈥ 你好 STC單片機的數據如何存儲
FLASH程序存儲器存程序,單片機上電後會自動從這里讀代碼開始運行。而EEPROM是掉電也不丟數據的存儲器,一般都用來存設置的。你可以一位元組一位元組的把每位元組的8位1任意編寫成0。但這片一般是按扇區為單位,一擦除就是全成1。一般來說應該是存放在FLASH里的吧,如果CODE區域用完了才會去找EEPROM寫代碼。ISP功能實現系統代碼升級維護只能用STC自己的編程器
STC有的片FLASH也能在跑程序的時候由程序控制擦寫。
㈦ 單片機裡面CPU讀寫存儲器的步驟過程
1)存儲器的讀操作。例如,若要將存儲器40H中的內容50H讀出,其過程如下:
①CPU將地址碼40H送到地址匯流排上,經存儲器地址解碼器選通地址為40H的存儲單元:
②CPU發出「瀆」信號,存儲器讀/寫控制開關將數據傳輸方向撥向「讀」;
③存儲器將地址為40H的存儲單元中的內容50H送到數據匯流排上;
④CPU將數據匯流排上的數據50H讀人指定的某一寄存器。
對存儲單元的讀操作,不會破壞其原來的內容。相當於復制。
2)存儲器的寫操作。例如,若要將數據ABH寫入存儲器地址為CDH的存儲單元中,其過程如下: 內容來自單片機之家www.dpj100.com
①CPU將地址碼CDH送到地址匯流排上,經存儲器地址解碼器選通地址為CDH的存儲單元;
②CPU將數據ABH送到數據匯流排上;
③CPU發出「寫」信號,存儲器讀/寫控制開關將數據傳送方向撥向「寫」;
④存儲器將數據匯流排上的數據ABH送人已被選中的地址為CDH的存儲單元中。
㈧ 各位大俠:誰知道怎樣將數據文件存在單片機的存儲器里嗎
24C1024?這是128KB的ROM啊,你可以設計一個程序專用來給24C1024燒寫數據,寫完之後插到要使用的板子上。
㈨ 單片機數據存儲器的使用
程序存儲器的裡面存放的是單片機的靈魂,它就是工作程序。小的可能只有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清除舊數據,下次又如此這般地循環進行。另外在單片機裡面還有若干寄存器,數量不多但是作用很大,除了暫存數據,還可以交換、加工、傳遞等等,以及隨時紀錄單片機當前處於什麼狀態,輸入輸出口,也是作為特殊功能的寄存器存在,具體各有不同,就不是隨便說說可以搞清楚的,要看有關書籍了。
參考資料來源:吳鑒鷹吧
貢獻文檔:網路文庫《吳鑒鷹單片機項目實戰精講》
單片機開發板學習參考:吳鑒鷹單片機開發板
㈩ 想存儲一組16位數據到八位的51單片機數據存儲器,怎麼實現
在八位的51單片機中,一組16位數據,是從那兒來的?
這16位的數據,是怎麼進入單片機的?
按照這個方法,把它存放到八位的51單片機數據存儲器,也不難。