STC89C52单片机 点亮LED灯
生活随笔
收集整理的這篇文章主要介紹了
STC89C52单片机 点亮LED灯
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
點亮LED燈
一、什么是LED
LED全稱為半導體發光二極管,采用半導體材料制成的,以直接將電能轉化為光能,電號轉換成光信號的發光器件;其特點是功耗低、高亮度、色彩艷麗、坑振動、壽命長(正常發光8-10萬小時)、冷光源等優點,是真正的“綠色照明”。
二、LED工作參數
LED(發光二極管)在電路圖中的符號為:
它具有二極管的基本特性正向導通,反向截止。要想點亮LED那么需要從正向流過工作電流。
- 普通發光二極管工作壓降為:1.6~2.1V。
- 工作電流為:1~20mA。
有圖中LED的通過電流我們可以根據歐姆定律I(電流) = U(電壓) /R(電阻)
可以算出為3mA。
三、原理圖分析
四、C語言知識
關鍵字: sbit
功能:位定義
一般格式: sbit 標識符 = 地址值;
例如: sbit LED1 = P1^0;
注意:地址值中P1的“P” 必須為大寫的P
五、編寫代碼
1.使 LED1 燈亮
#include <reg52.h> // 引用51頭文件sbit LED1 = P1^0; // P必須為大寫 控制紅色燈void main(){ // 程序編譯后main函數自身會循環LED1 = 0; // 當設置為0時輸入一個 低電平 單片機第一個燈會亮 // LED1 = 1; // 當設置為1時輸入一個高電平 單片機第一個燈會熄滅 }效果圖:
2.使 LED1、3、5、7 燈亮,使 LED2、4、6、8 燈滅;
#include <reg52.h> void main(){ // main 函數自身會循環while(1){ // 一般在執行程序的時候需要 寫出一個while的循環體來執行代碼P1 = 0XAA; // 1010 1010 // 使 LED1、3、5、7 燈亮} }效果圖:
總結
以上是生活随笔為你收集整理的STC89C52单片机 点亮LED灯的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C++函数指针和函数重载
- 下一篇: C++ 容易犯错误的模型