在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 單片機一些基礎問題

            單片機一些基礎問題

            作者: 時間:2013-05-16 來源:網絡 收藏

            一般說1T 4T 6T 12T的是指的什么?

            標準51是12T的,就是說12個時鐘周期(晶振周期,例如12M的,周期是1/12M,單位秒),機器做一個指令周期,剛好就是1/12M*12=1uS,常見指令例如nop就是一個周期,剛好1uS,其他的大多多于一個周期,乘除法更多。所以如果計算指令時間可以這樣算。

            而現(xiàn)在很多51核的工藝質量上去后,頻率大大提高,增強型51有6T的,如果接12M的話,一個nop就只需要0.51uS,如果是STC的部分12T的話,那只需要1/12uS。

            單片機的晶振不是隨便選,要看技術手冊,看最高頻率,看支持類型等等。一般12M,接串口的話11.0592M。如果是PIC,很多4M,8M。

            不是越高越好,對很多不需要大量處理,只是控制的情況,為了增加可靠性,降低編程難度,降低功耗,往往可選用低頻的,例如實時時鐘的32768晶振。

            外接晶體引腳

            XTAL1 是片內振蕩器的反相放大器輸入端,XTAL2 則是輸出端,使用外部振蕩器

            時,外部振蕩信號應直接加到XTAL1,而XTAL2 懸空。內部方式時,時鐘發(fā)生器對振蕩脈沖二分頻,如晶振為12MHz,時鐘頻率就為6MHz。晶振的頻率可以在1MHz-24MHz內選擇。電容取30PF 左右。

            每個8051處理周期包括12 個振蕩周期每12 個振蕩周期用來完成一項操作如取指令和計算指令執(zhí)行時間可把時鐘頻率除以12 取倒數然后指令執(zhí)行所須的周期數。因此如果你的系統(tǒng)時鐘是11.059MHz 除以12 后就得到了每秒執(zhí)行的指令個數為921583條指令取倒數將得到每條指令所須的時間1.085ms。

            復位 RST

            在振蕩器運行時,有兩個機器周期(24 個振蕩周期)以上的高電平出現(xiàn)在此引腿時,將使單片機復位,只要這個腳保持高電平,51 芯片便循環(huán)復位。復位后P0-P3 口均置1 引腳表現(xiàn)為高電平,程序計數器和特殊功能寄存器SFR 全部清零。當復位腳由

            高電平變?yōu)榈碗娖綍r,芯片為ROM 的00H 處開始運行程序,復位操作不會對內部 RAM 有所影響。

            輸入輸出引腳

            (1) P0 端口[P0.0-P0.7] P0 是一個8 位漏極開路型雙向I/O 端口,端口置1(對端口寫1)時作高阻抗輸入端。作為輸出口時能驅動8 個TTL。對內部Flash 程序存儲器編程時,接收指令字節(jié);校驗程序時輸出指令字節(jié),要求外接上拉電阻。在訪問外部程序和外部數據存儲器時,P0 口是分時轉換的地址(低8 位)/數據

            總線,訪問期間內部的上拉電阻起作用。

            (2) P1 端口[P1.0-P1.7] P1 是一個帶有內部上拉電阻的8 位雙向I/0 端口。輸出時可驅動4 個TTL。端口置1 時,內部上拉電阻將端口拉到高電平,作輸入用。對內部 Flash 程序存儲器編程時,接收低8 位地址信息。

            (3) P2 端口[P2.0-P2.7] P2 是一個帶有內部上拉電阻的8 位雙向I/0 端口。輸出時可驅動4 個TTL。端口置1 時,內部上拉電阻將端口拉到高電平,作輸入用。對內部Flash 程序存儲器編程時,接收高8 位地址和控制信息。在訪問外部程序和16 位外部數據存儲器時,P2 口送出高8 位地址。而在訪問8

            位地址的外部數據存儲器時其引腳上的內容在此期間不會改變。

            (4) P3 端口[P3.0-P3.7] P2 是一個帶有內部上拉電阻的8 位雙向I/0 端口。輸出時可驅動4 個TTL。端口置1 時,內部上拉電阻將端口拉到高電平,作輸入用。對內部Flash 程序存儲器編程時,接控制信息。除此之外P3 端口還用于一些專門功能,具體請看

            P3 引腳兼用功能

            P3.0 串行通訊輸入(RXD)

            P3.1 串行通訊輸出(TXD)

            P3.2 外部中斷0( INT0)

            P3.3 外部中斷1(INT1)

            P3.4 定時器0 輸入(T0)

            P3.5 定時器1 輸入(T1)

            P3.6 外部數據存儲器寫選通WR

            P3.7 外部數據存儲器寫選通RD

            波特率與比特率:

            波特率是指數據信號對載波的調制速率,它用單位時間內載波調制狀態(tài)改變的次數來表示,其單位是波特(Baud)。比特率:每秒鐘傳送的二進制位數,用 b / s 表示(b表示bit)波特率與比特率的關系是比特率=波特率X單個調制狀態(tài)對應的二進制位數。

            兩相調制(單個調制狀態(tài)對應1個二進制位)的比特率等于波特率;四相調制(單個調制狀態(tài)對應2個二進制位)的比特率為波特率的兩倍;八相調制(單個調制狀態(tài)對應3個二進制位)的比特率為波特率的三倍;依次類推。

            晶振可以根據自己的情況使用,一般實驗板上是用11.0592MHz 或12MHz,使用前者的好外是可以產生標準的串口波特率,后者則一個機器周期為1 微秒,便于做精確定時。在自己做實驗里,注意的是VCC 是+5V 的,不能高于此值,否則將損壞單片機,太低則不能正常工作。在31 腳要接高電平,這樣我們才能執(zhí)行片內的程序,如接低電平則使用片外的程序存儲器。

            KEIL uVision2 C51 編譯器所支持的數據類型

            數據類型長度值域

            Unsigned char單字節(jié)0~255

            Signed char單字節(jié)-128~+127

            Unsigned int雙字節(jié)0~65535

            Signed int雙字節(jié)-32768~+32767

            Unsigned long四字節(jié)0~4294967295

            Signed long四字節(jié)-2147483648~+2147483647

            float四字節(jié)±1.175494E-38~±3.402823E+38

            bit1位0或1

            sfr單字節(jié)0~255

            sfr16雙字節(jié)0~65535

            Sbit1位0或1

            變量的定義可以使用所有C51 編譯器支持的數據類型,而常量的數據類型只有整型、浮點型、字符型、字符串型和位標量

            長整型就在數字后面加字母L,如104L,034L,0xF340 等。浮點型常量可分為十進制和指數表示形式(12e5表示12*10^5)

            8051 結構提供給用戶3 個不同的存儲空間

            第一個存儲空間是代碼段(CODE)用來存放可執(zhí)行代碼被16 位尋址空間可達64K;除了可執(zhí)行代碼還可在代碼段中存儲查尋表為達此目的8051 提供了通過數據指針DPTR 或程序計數器加上由累加器提供的偏移量進行尋址的指令這樣就可以把表頭地址裝入DPTR 中把表中要尋址的元素的偏移量裝入累加器中8051 在執(zhí)行指令時的過程中把這兩者相加由此可節(jié)省不少指令周期。

            第二個存儲區(qū)是8051 內128 字節(jié)的內部RAM 或8052 的前128 字節(jié)內部RAM 這部分主要是作為數據段稱為DATA 區(qū)指令用一個或兩個周期來訪問數據段訪問DATA 區(qū)比訪問XDATA 區(qū)要快因為它采用直接尋址方式而訪問XDATA 須采用間接尋址必須先初始化DPTR 通常我們把使用比較頻繁的變量或局部變量存儲在DATA 段中但是必須節(jié)省使用DATA 段因為它的空間畢竟有限。在數據段中也可通過R0 和R1 采用間接尋址R0 和R1 被作為數據區(qū)的指針將要恢復或改變字節(jié)的地址放入R0 或R1 中根據源操作數和目的操作數的不同執(zhí)行指令需要一個或兩個周期。數據段中有兩個小段第一個子段包含四組寄存器組每組寄存器組包含八個寄存器共32 個寄存器可在任何時候通過修改PSW 寄存器的RS1 和RS0 這兩位來選擇四組寄存器的任意一組作為工作寄存器組8051 也可默認任意一組作為工作寄存器組工作寄存器組的快速切換不僅使參數傳遞更為方便而且可在8051 中進行快速任務轉換另外一個子段叫做位尋址段BDATA 包括16 個字節(jié)共128 位每一位都可單獨尋址8051 有好幾條位操作指令這使得程序控制非常方便并且可幫助軟件代替外部組合邏輯這樣就減少了系統(tǒng)中的模塊數位尋址段的這16 個字節(jié)也可像數據段中其它字節(jié)一樣進行字節(jié)尋址。


            上一頁 1 2 3 4 5 下一頁

            評論


            相關推薦

            技術專區(qū)

            關閉