一、MDK uVision開發(fā)環(huán)境界面介紹
二、什么是宏定義
- 宏定義就是用我們?nèi)吮容^好理解的字符串來代替某個數(shù)或字符串。宏定義是由#define空格+新字符串+空格+被代替的數(shù)或字符串。如下面的例子:
- #define TRUE 1 //用TRUE來代替1
- #define FALSE 0 //用FALSE來代替0
- #define Pin_LED P32 //用Pin_LED來代替P32
- #define PinLed_High() Pin_LED=1 //用Pin_LedHigh()來代替Pin_LED=1
三、#include 含義
在C語言中,經(jīng)常會用到其它已經(jīng)定義好的文件,這時我們不必重新寫一遍,只需要用#include <文件名>的格式,就可以把文件包含到我們的程序項目中。如:#include 就表示將已有的STC15.H文件加入到我們的項目當(dāng)中。<>表示這個文件的路徑是在MDK的安裝目錄中。
四、什么是函數(shù)
在C語言中,我們經(jīng)常會用到函數(shù)。如C語言程序的入口函數(shù)main。一個函數(shù)通常用來表示一個程序功能塊。這個功能塊有輸入?yún)?shù)和輸出參數(shù)。就像一個水箱有一個進(jìn)水口和一個出水口。如下面的函數(shù):
五、什么是函數(shù)原型
- 在C語言中,所謂函數(shù)原型,就是指我們只定義了一個函數(shù)的名字和輸入、輸出參數(shù),但并沒有在函數(shù)中實現(xiàn)功能。如下面的例子:
- void PinLED_DirOut(void);
- 表示這是個LED燈的管腳輸出控制函數(shù)定義。
- 輸入?yún)?shù)為無效參數(shù),輸出參數(shù)也為無效參數(shù)。
六、單片機(jī)輸出口設(shè)置和輸出
為了讓單片機(jī)能點亮/熄滅指示燈,我們必須控制與LED指示燈相連接的引腳。在這里,P32表示是單片機(jī)的輸出品P3的第2個腳。從原理圖上可以看出,如果要點亮LED指示燈,則必須將P32這個引腳輸出低電平。下面是與P32引腳有關(guān)的宏定義:
#define Pin_LED P32
#define Pin_LED_M1 P3M1
#define Pin_LED_M0 P3M0
#define Pin_LED_BIT BIT2
#define PinLed_High() Pin_LED=1
#define PinLed_Low() Pin_LED=0
我們要讓單片機(jī)P32引腳控制LED指示燈,就必須將P32引腳設(shè)置為輸出模式,下面這個函數(shù)就是設(shè)置P32為輸出的代碼:
//Pin_LED_M1實際上就是P3M1
//Pin_LED_M0實際上就是P3M0
//P3M1和P3M0兩個寄存器單元,是用來配置P3口各引腳的輸入/輸出模//式
void PinLED_DirOut(void)
{
Pin_LED_M1 &=~Pin_LED_BIT;
Pin_LED_M0 |=Pin_LED_BIT;
}
七、點亮LED指示燈的完整源程序
* #include < STC15.h >
*
* #define BIT0 0x01
* #define BIT1 0x02
* #define BIT2 0x04
* #define BIT3 0x08
* #define BIT4 0x10
* #define BIT5 0x20
* #define BIT6 0x40
* #define BIT7 0x80
* #define TRUE 1
* #define FALSE 0
* #define BEEP_ON 1
* #define BEEP_OFF 0
* #define Pin_LED P32
* #define Pin_LED_M1 P3M1
* #define Pin_LED_M0 P3M0
* #define Pin_LED_BIT BIT2
* #define PinLed_High()Pin_LED=1
* #define PinLed_Low()Pin_LED=0
*
* void PinLED_DirIn(void);
* void PinLED_DirOut(void);
*
* void main(void)
* {
* PinLED_DirOut();
* PinLed_Low();
* while(TRUE)
* {
*
* }
* }
八、單片機(jī)程序編譯
在uVision開發(fā)環(huán)境的菜單中,選擇[Project(項目)]->[Build Target(編譯目標(biāo))],然后開始編譯程序。
九、找到單片機(jī)燒寫文件
在項目文件夾下找到剛才編譯好的燒寫文件(HEX文件),在本項目中為STC15WPrj.hex文件。
十、下載燒寫文件到單片機(jī)中
(1)先在網(wǎng)上找到STC單片機(jī)下載程序STC-ISP(V6.89).exe,然后下載到本地。
(2)啟動STC-ISP(V6.89C)程序,然后點擊[打開程序文件],在文件夾中找到剛才編譯好的STC15WPrj.hex文件。
(3)斷開單片機(jī)電源,然后點擊[下載/編程],然后再將單片機(jī)電源接通,則接下來等待下載完成。
十一、單片機(jī)點亮LED指示燈輸出結(jié)果
至此,一個完整的單片機(jī)編寫、編譯、下載過程就講完了。
-
單片機(jī)
+關(guān)注
關(guān)注
6067文章
44982瀏覽量
650273 -
led燈
+關(guān)注
關(guān)注
22文章
1596瀏覽量
109723 -
C語言
+關(guān)注
關(guān)注
180文章
7632瀏覽量
141610 -
函數(shù)
+關(guān)注
關(guān)注
3文章
4379瀏覽量
64827 -
MDK
+關(guān)注
關(guān)注
4文章
211瀏覽量
32679
發(fā)布評論請先 登錄
如何實現(xiàn)一種基于STC單片機(jī)點亮一個LED燈的設(shè)計
使用51單片機(jī)點亮一個LED燈的資料和程序免費下載

使用單片機(jī)實現(xiàn)點亮一個LED燈的程序和仿真資料免費下載
STC單片機(jī)點亮一個LED燈

金沙灘51單片機(jī)點亮一個LED燈

評論