日韩欧美视频第二区,秋霞成人午夜鲁丝一区二区三区,美女日批视频在线观看,av在线不卡免费

電子開(kāi)發(fā)網(wǎng)

電子開(kāi)發(fā)網(wǎng)電子設(shè)計(jì) | 電子開(kāi)發(fā)網(wǎng)Rss 2.0 會(huì)員中心 會(huì)員注冊(cè)
搜索: 您現(xiàn)在的位置: 電子開(kāi)發(fā)網(wǎng) >> 基礎(chǔ)入門(mén) >> Arduino開(kāi)發(fā)學(xué)習(xí) >> 正文

Arduino控制RGB三色LED燈實(shí)驗(yàn)、程序代碼、連線(xiàn)圖、仿真_程序控制三基色燈變色

作者:佚名    文章來(lái)源:網(wǎng)友    點(diǎn)擊數(shù):    更新時(shí)間:2023/8/26

RGB三色燈簡(jiǎn)介

RGB色彩模式包含紅綠藍(lán)三種,通過(guò)控制紅(R)、綠(B)、藍(lán)(G)三種顏色的變化使其相互疊加產(chǎn)生花式顏色。而其顏色值的輸出是通過(guò)PWM來(lái)控制的。RGB三基色按照不同的比例相加合成混色稱(chēng)為相加混色,除相加混色法之外還有相減混色法。

PWM控制

PWM,即脈沖寬度調(diào)制,是英文“Pulse Width ModulaTIon”的縮寫(xiě)。根據(jù)相應(yīng)載荷的變化來(lái)調(diào)制晶體管基極或MOS管柵極的偏置,來(lái)實(shí)現(xiàn)晶體管或MOS管導(dǎo)通時(shí)間的改變,從而實(shí)現(xiàn)開(kāi)關(guān)穩(wěn)壓電源輸出的改變。這種方式能使電源的輸出電壓在工作條件變化時(shí)保持恒定,是利用微處理器的數(shù)字信號(hào)對(duì)模擬電路進(jìn)行控制的一種非常有效的技術(shù)。

PWM功能簡(jiǎn)介

PWM主要通過(guò)analogWrite () 進(jìn)行控制,針對(duì)Arudino UNO板子中帶有"~"的3、5、6、9、10、11數(shù)字端口寫(xiě)入一個(gè)模擬值,通知高電平與低電平持續(xù)時(shí)間的比值控制LED的亮度變化或者電機(jī)的轉(zhuǎn)速。

例如:欲使得內(nèi)置的Arudino UNO 中的led亮度變?yōu)樵瓉?lái)的一般,編寫(xiě)analogWrite (13,127)就可以了。一個(gè)電路讓一個(gè)端口循環(huán)輸出2.5V、3V、5V電壓,僅僅用硬件電路就困難了,這時(shí)候就是PWM大顯身手的時(shí)候了。

占空比:高電平與低電平持續(xù)時(shí)間之比。

 

硬件電路連接

Arduino引腳 RGB LED(共陰極)
D11 R
D10 B
D9 G
GND GND

所需器件

名稱(chēng) 數(shù)量
電阻 3
RGB LED燈 1
Arduino UNO開(kāi)發(fā)板 1

 

控制代碼

控制RGB代碼如下

/*運(yùn)行環(huán)境:Arduino 1.8.19*/
#define GREEN 9
#define BLUE 10
#define RED 11
int redValue;
int greenValue;
int blueValue;
void setup(){
  pinMode(GREEN, OUTPUT);
  pinMode(BLUE, OUTPUT);
  digitalWrite(RED, HIGH);
  digitalWrite(GREEN, LOW);
  digitalWrite(BLUE, LOW);
}
void loop(){   
  #define delayTime 1
  redValue = 255; 
  greenValue = 0;
  blueValue = 0;
  for(int i = 0; i < 255; i += 1){
    redValue -= 1;
    greenValue += 1;
    analogWrite(RED, redValue);
    analogWrite(GREEN, greenValue);
    delay(delayTime);
  }
  redValue = 0;
  greenValue = 255;
  blueValue = 0;   
  for(int i = 0; i < 255; i += 1){
    greenValue -= 1;
    blueValue += 1;
    analogWrite(GREEN, greenValue);
    analogWrite(BLUE, blueValue);
    delay(delayTime);
  }
  redValue = 0;
  greenValue = 0;
  blueValue = 255;
  for(int i = 0; i < 255; i += 1){
    blueValue -= 1;
    redValue += 1;
    analogWrite(BLUE, blueValue);
    analogWrite(RED, redValue);
    delay(delayTime);
  }
}

Arduino控制RGB三色LED燈實(shí)驗(yàn) 

Tags:Arduino,三色LED燈,程序  
責(zé)任編輯:admin
請(qǐng)文明參與討論,禁止漫罵攻擊,不要惡意評(píng)論、違禁詞語(yǔ)。 昵稱(chēng):
1分 2分 3分 4分 5分

還可以輸入 200 個(gè)字
[ 查看全部 ] 網(wǎng)友評(píng)論
關(guān)于我們 - 聯(lián)系我們 - 廣告服務(wù) - 友情鏈接 - 網(wǎng)站地圖 - 版權(quán)聲明 - 在線(xiàn)幫助 - 文章列表
返回頂部
刷新頁(yè)面
下到頁(yè)底
晶體管查詢(xún)
主站蜘蛛池模板: 晴隆县| 大同市| 金湖县| 东乌珠穆沁旗| 上虞市| 长白| 司法| 昔阳县| 多伦县| 博客| 新津县| 雅江县| 永城市| 漳浦县| 策勒县| 广汉市| 平邑县| 深水埗区| 盐池县| 金华市| 五莲县| 南郑县| 玉环县| 荥经县| 文水县| 莱芜市| 定南县| 晴隆县| 古蔺县| 耒阳市| 西畴县| 青铜峡市| 房产| 成安县| 平泉县| 尖扎县| 酒泉市| 田林县| 新建县| 黑山县| 棋牌|