51微控制器學習記錄之2
RAM和ROM的區別
RAM(random access memory)即隨機儲存記憶體,這種儲存器在斷電時將丟失其儲存內容,故主要用於儲存短時間使用的程式。ROM(Read-Only Memory)即只讀記憶體,是一種只能讀出事先所存資料的固態半導體儲存器。手機中的RAM和ROM分別對應電腦的記憶體和硬碟,記憶體負責程式的執行以及資料交換,有了它,電腦中的軟體才能執行,並有了程序;而硬碟就是一塊儲存空間,您可以儲存各種各樣的檔案,包括視訊、照片、音樂、軟體等。
Code
你說的是在定義一組陣列時,可以作為資料表格時,就用code 語句,意思是這些資料放在程式儲存器中。
如下:
unsigned char code table []={0x3f,0x06,0x5b,0x4f,0x66,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
這就是典型的用法,這是定義一組資料,即為數碼管的段碼錶,因都是常數,就可以放在程式儲存區。
如果沒有code 就放在資料儲存區了,但是,因微控制器的內部RAM容量比較小,像這樣的常數就不必放在RAM資料區,以節省RAM資料區的使用。
相關推薦
51微控制器學習記錄之2
RAM和ROM的區別 RAM(random access memory)即隨機儲存記憶體,這種儲存器在斷電時將丟失其儲存內容,故主要用於儲存短時間使用的程式。ROM(Read-Only Memory)即只讀記憶體,是一種只能讀出事先所存資料的固態半導體儲存器。手機中的RAM和ROM分別對應電
51微控制器學習記錄之蜂鳴器
蜂鳴器發聲原理 是電流通過電磁線圈,使電磁線圈產生磁場來驅動振動膜發聲的,因此需要一定的電流才能驅動它,微控制器IO引腳輸出的電流較小,微控制器輸出的TTL電平基本上驅動不了蜂鳴器,因此需要增加一個電流放大的電路。三極體的作用為驅動,通過三極體放大驅動電流,從而可以讓蜂鳴器發出聲音。 有源蜂
51微控制器學習記錄之C語言基礎
C-51的資料型別擴充定義 sfr:特殊功能暫存器宣告 sfr 變數名=地址值; *特殊功能暫存器在reg51.H這個標頭檔案裡面都幫我們定義好了,所以平時我們就不要自己去定義暫存器的名字。 sbit:特殊功能位宣告 sbit 變數名=地址值; *在給某個引腳取名的時候經常會用到。 bi
51微控制器學習筆記之定時器程式設計
一、定時器/計數器概述 1.相關暫存器 (1)TMOD——方式控制暫存器 GATE C/T M1 M0(T1 T0) GATE=0,定時器/計數器的執行由內部TR0/TR1置1選通; GATE=1,定時器/計數器的執行由外部中斷(I引腳P3.2/P3.3)和內部TR0/TR1 置1共
51微控制器學習筆記之基礎部分
目錄 一、普中微控制器詳解 二、51微控制器介紹 三、C語言基礎 四、微控制器最小系統 五、開發軟體安裝與工程建立 從0開始,重新學微控制器,from 0 to 100. ----2019/1/14 一、普中微控制器詳解 電源介面(火牛介面):額定電壓5V ch
51微控制器學習之LED流水燈
點亮LED的原理很簡單,只要讓P20-P27接入低電平即可。 在此主要記錄此實驗過程中遇到的問題和注意事項: 1. #include “reg52.h” #include “intrins.h” typedef unsigned char u8; #define led P
python學習記錄之---------PYQT5做工具(2)下拉選項框的使用
工具/版本(1)安裝環境:Windows7 64bit(2)使用版本Python3.6(3)PYQT5(4)eric6-6.1.0基本的使用前文有介紹,直入正題初始形態選擇省份後,列出對應省份所有城市,都選擇後,點選開始,顯示在文字框中實現方法,首先將所有省份和對應城市放在對
SQL Server學習記錄之獲取每月每季度每年第一天和最後一天
第一天 ediff code spa -1 指定日期 ctc 算法 datetime DECLARE@dtdatetime SET@dt=GETDATE() DECLARE@numberint SET@number=3 --1.指定日期該年的第一天或最後
Python 第八階段 學習記錄之---算法
第一個元素 排序 小根堆 () 規律 空間復雜度 場景 復數 練習 算法(Algorithm): 一個計算過程, 解決問題的方法1、遞歸的兩個特點 - 調用自身 - 結束條件時間復雜度 - 時間復雜度是用來估計算法運行時間的一個式子(單位) - 一般
SpringBoot-Mybatis_Plus學習記錄之公共字段自動填充
ast 使用配置 後臺 pri emp port 更多 但是 pub 一.應用場景 平時在建對象表的時候都會有最後修改時間,最後修改人這兩個字段,對於這些大部分表都有的字段,每次在新增和修改的時候都要考慮到這幾個字段有沒有傳進去,很麻煩。mybatisPlus有一個很
ElasticSearch 學習記錄之 分散式文件儲存往ES中存資料和取資料的原理
分散式文件儲存 ES分散式特性 遮蔽了分散式系統的複雜性 叢集內的原理 垂直擴容和水平擴容 真正的擴容能力是來自於水平擴容–為叢集新增更多的節點,並且將負載壓力和穩定性分散到這些節點中 ES叢集特點 一個叢集擁有相同
51微控制器學習筆記()
一、關於標頭檔案 在輸入標頭檔案時,新手容易出錯 比如: #include "reg52.h" 由於不仔細以及對標頭檔案不夠了解,會出現錯誤,如: #include "reg.52“ #include "reg.52.h" 此情況下編譯會出錯,顯示打不開該檔案,如下圖
CAN匯流排學習記錄之二:系統結構與幀結構
CAN匯流排系統結構 CAN 控制器 接收控制單元中微處理器發出的資料,處理資料並傳給 CAN 收發器 CAN 收發器 將資料傳到匯流排 or 從匯流排接收資料給 CAN 控制器 CAN 資料傳遞終端 避免資料傳輸終了反射回來 CAN 資料匯流排 傳輸資料的資料線,兩根:CAN-hig
CAN匯流排學習記錄之三:匯流排中主動錯誤和被動錯誤的通俗解釋
首先建議把廣泛使用的“主動錯誤”和“被動錯誤”概念換成“主動報錯”和“被動報錯”。 1. 主動報錯站點 只要檢查到錯誤,它立即“主動地”發出錯標識。所謂“出錯標識“,它本身就是一個“錯誤的位序列”(連續的6個顯性位,不滿足 CAN 協議的“最多5個連續的同性位”要求),目的是“主動地”告訴大家:即使你們沒
CAN匯流排學習記錄之四:位定時與同步
一、位定時 1.1 位元率和波特率 1)位速率:又叫做位元率(bit rata)、資訊傳輸率,表示的是單位時間內,總線上傳輸的資訊量,即每秒能夠傳輸的二進位制位的數量,單位是bit per second。 2)波特率:又叫做傳位元速率、訊號傳輸率,表示的是單位時間內傳輸的碼元的數量,當兩相調製時,一個碼
彙編學習記錄之七
資料來源:組合語言第二版-王爽 1.[bx]和loop指令 [bx]表示一個記憶體單元,它的偏移地址在bx中 我們要完整地描述一個記憶體單元,需要兩種資訊:(1)記憶體單元的地址;(2)記憶體單元的長度(型別)。 loop指令的格式是:loop 標號 CPU執行loop指令的
彙編學習記錄之五
資料來源:組合語言第二版-王爽 1.段的綜述 我們可以將一段記憶體定義為一個段,用一個段地址指示段,用偏移地址訪問段內的單元,這完全是我們自己的安排。 我們可以用一個段來存放資料,將它定義為“資料段”,將它的段地址放在資料段暫存器ds中,用mov,add,sub等訪問記憶體單元的指令
彙編學習記錄之四
資料來源:組合語言第二版-王爽 1.mov,add,sub指令 mov指令有以下幾種形式: mov 暫存器,資料 &n
彙編學習記錄之三
資料來源:組合語言第二版-王爽 1.記憶體中字的儲存 在CPU中,用16位暫存器來儲存一個字。高8位存放高位位元組,低8位存放低位位元組。 記憶體單元:記憶體單元是位元組單元,一個單元存放一個位元組。 字單元:存放一個字型資料(16位)的記憶體單元,由兩個地址連續的記憶體單元組成
彙編學習記錄之二
資料來源:組合語言第二版-王爽 1.段暫存器: 8086CPU中有4個段暫存器:cs,ds,es,ss 2.cs和ip: cs和ip是8086CPU中兩個最關鍵的暫存器,它們指示了CPU當前讀取指令的地址。 cs為程式碼段暫存器,ip為指令指標暫存器。 在8086PC機中