1. 程式人生 > >(學習筆記)手把手教你學51微控制器:點亮你的LED

(學習筆記)手把手教你學51微控制器:點亮你的LED

 2.1 微控制器內部資源

三大資源:

Flash:程式儲存空間

RAM:資料儲存空間

SFR:特殊功能暫存器

2.2微控制器最小系統

三要素:電源、晶振、復位電路

2.3LED小燈

限流:5~20mA(限流電阻阻值計算) 自身壓降2V

2.4程式程式碼編寫

2.4.1特殊功能暫存器和位定義

eg:sfr P0=0x80;  //sfr 關鍵字,定義一個微控制器特殊功能暫存器

       sbit LED=P0^0;//為P0^0口賦名LED

注意:寫sfr必須根據手冊中的暫存器的地址(Add)寫,寫sbit的時候可以直接將一個其中某一位(eg:P0^0、P0^1…)取出來寫。

2.4.2 新建工程

2.4.3編寫點亮小燈的程式

/*總LED燈閃爍*/ #include<reg52.h>

sbit LED=P0^0; sbit ADDR0=P1^0; sbit ADDR1=P1^1; sbit ADDR2=P1^2; sbit ADDR3=P1^3; sbit ENLED=P1^4;

void main() {     /*以下宣告部分*/     unsigned int i=0;          //以下為執行部分     ENLED=0;  //U3 U4 兩片74HC138總使能     ADDR3=1;  //使能U3使之正常輸出

    ADDR2=1;  //經U3的Y6輸出開開啟三極體Q16     ADDR1=1;     ADDR0=0;

    while(1)     {         LED=0;             //點亮小燈         for(i=0;i<3000;i++);//延時一段時間         LED=1;               //熄滅小燈         for(i=0;i<3000;i++);//延時一段時間     } }

/*總LED燈閃爍*/ #include<reg52.h>

sbit LED=P0^0; sbit ADDR0=P1^0; sbit ADDR1=P1^1; sbit ADDR2=P1^2; sbit ADDR3=P1^3; sbit ENLED=P1^4;

void main() {     /*以下宣告部分*/     unsigned int i=0;          //以下為執行部分     ENLED=0;  //U3 U4 兩片74HC138總使能     ADDR3=1;  //使能U3使之正常輸出

    ADDR2=1;  //經U3的Y6輸出開開啟三極體Q16     ADDR1=1;     ADDR0=0;

    while(1)     {         LED=0;             //點亮小燈         for(i=0;i<3000;i++);//延時一段時間         LED=1;               //熄滅小燈         for(i=0;i<3000;i++);//延時一段時間     } }

2.5程式下載

選擇微控制器型、建程式、選com口(預設波特率)冷啟動(先關電源 點選下載 上電)