1. 程式人生 > >Day-1:初識開發板與基礎知識

Day-1:初識開發板與基礎知識

總線 系列 控制系統 mage 只讀 上拉 相同 ont 頻率

  買的這款51,ARM,AVR三合一的單片機,也不知道後面具體使用會不會有問題,先玩玩看吧。

------------------------------------------------------------------------------------------

  單片機是將CUP、存儲器和I/O接口集成都一片集成電路芯片上。

  MCS-89C51系列:集成8位CPU4K字節ROM(只讀存儲器,儲存程序,斷電不丟失),128字節RAM(隨機儲存器,儲存變量,掉電丟失)、4個8位並口(P0,P1,P2,P3),1個全雙工串行口,2個16位定時/計數器。尋址範圍64K,並有控制功能較強的布爾處理器。

  封裝形式:貼片、插片。

  • 預備知識

  電平特性:

    數字電路兩種電平:高電平和低電平。高電平電壓取決於單片機電源,5V或者3.3V;低電平為0V。

    RS232電平:也是計算機串口的電平,高電平為-12V,低電平為+12V。

  所以,電腦與單片機通訊得將電平轉換(MAX232)。

  

  進制:

    二進制:只有0(低)和1(高),逢二進一為計算機直接識別的進制;

    十六進制:逢十六進一,一般是由於二進制表達的位數太多使用16進制會方便點。

  兩者的轉換:二進制轉換成十六進制,4位並一位,十六進制轉換成二進制,1位分4位。

  

  二進制邏輯運算:

    與:有0得0;或:有1得1;非:取反;異或:相同位零,不同為1.

  80C51系列是以8051為基核開發的一系列單片機。

技術分享

  引腳封裝:

P3.0:RXD串行輸入

P3.1:TXD串行輸出

P3.2:INT0外部中斷0輸入

P3.3:INT1外部中斷1輸入

P3.4:T0定時器0外部輸入

P3.5:T!定時器1外部輸入

P3.6:WR外部寫輸入

P3.7:RD外部讀輸入

內部結構:

技術分享

  總線是計算機中各部件之間傳送信息的公共通道。微機中有內部總線和外部總線。內部總線是CUP內部之間的連線。外部總線是指CUP與其他部件之間的連線。外部總線有三種:數據總線DB(Data Bus),地址總線AB(Address Bus)和控制總線CB(Control Bus)。

  CUP:負責運算與控制,還包括中斷系統和部分外部特殊功能寄存器;

  RAM:隨機存儲器,斷電丟失,存放可以讀寫的數據:中間結果、最終結果以及欲顯示的數據;

  ROM:只讀儲存器,斷電不丟失,用於存放程序,以及一些原始數據和表格;

  I/O口:四個8位並行I/O口,既可用作輸入,也可用作輸出;

  T/C:兩個定時/計數器,既可工作在定時模式,也可工作在技術模式。

  

  五個中斷源的中斷控制系統

  一個全雙工UART(通用異步接收發送器)的串行I/O口,用於實現單片機之間或單片機與微機之間的串行通信;

  片內振蕩器與時鐘產生電路,石英晶體和微調電容需要外接。最高振蕩頻率取決於單片機型號及性能。

  基本時序:

    直接由晶振為單片機提供的脈沖信號的振蕩源的周期,稱為振蕩周期,也叫時鐘周期,開發板上是12MHz;之後振蕩周期經二分頻,變為狀態周期,即狀態周期是它的2倍;而一個機器周期定義為6個狀態周期,也就是12個時鐘周期,在一個機器周期內CUP可以完成獨立的操作;最後,CUP下達一條指令,要完成這條指令所需的全部時間成為指令周期,每條指令周期由一個或者多個機器周期組成。

  

  單片機IO口有三種解構:

技術分享

  準雙向IO、開漏輸出和強推挽輸出,51單片機為前兩種。

  開漏輸出必須外加加上拉電阻才能輸出高電平。

  上下拉電阻:

  上拉電阻就是將不確定的信號通過一個電阻拉到高電平,同時此電阻起到一個限流的作用,下拉就是下拉到一個低電平。

  好處:

  1. OC門要輸出高電平,外部必須加上拉電阻;
  2. 加大普通IO口的驅動能力(很多地方都這樣用過,所以,通電後某些引腳就是直接上電的);
  3. 起到限流的作用;
  4. 由於拉上高電平,所以可以抵抗電磁幹擾。

  上下拉電阻的選取原則:

  1. 從功耗方面考慮應該足夠大,因為電阻越大,電流越小;
  2. 從確保足夠的引腳驅動能力考慮應該足夠小,電阻越小,電流才能越大;
  3. 開漏輸出時,過大的上拉電阻會導致上升沿變緩。

技術分享

------------------------------------------------------------------------

  關於C語言:

  單片機對於C語言要求不高,只要簡單的了解就ok。

------------------------------------------------------------------------

  單片機最小系統:

  1. 電源電路
  2. 復位電路
  3. 時鐘電路
  4. 下載電路(外加的) 

  C語言知識: bit和sbit都是C51擴展的變量類型。

  sbit用法:

    sbit 變量名 = 地址值; //給某個引腳取名

  另外每次編程時,都包含了reg52.h的頭文件,它是c51系列單片機的擴展庫,裏面集成了基本的引腳指向。

Day-1:初識開發板與基礎知識