《電子技術應用》
您所在的位置:首頁 > 顯示光電 > 設計應用 > 4位RGB LED彩燈控制器PCA9633的應用
4位RGB LED彩燈控制器PCA9633的應用
2015年微型機與應用第7期
馮月芹
(南京工程學院,江蘇 南京 211167)
摘要: PCA9633是一款通過I2C總線控制的4路LED控制芯片,每一路LED輸出的狀態可以設置為沒有PWM(Pulse Width Modulation)控制的關或開,或者由其獨立的PWM控制器的值和組PWM控制器的值確定。LED驅動輸出的信號頻率為97 kHz,占空比在0%~99.6%可調。本文介紹PCA9633的I2C協議,重點介紹它與CPU的硬件電路圖以及通過C語言編程實現I2C時序,驅動LED燈發光,最后給出應用實例。
Abstract:
Key words :

  摘  要PCA9633是一款通過I2C總線控制的4路LED控制芯片,每一路LED輸出的狀態可以設置為沒有PWM(Pulse Width Modulation)控制的關或開,或者由其獨立的PWM控制器的值和組PWM控制器的值確定。LED驅動輸出的信號頻率為97 kHz,占空比在0%~99.6%可調。本文介紹PCA9633的I2C協議,重點介紹它與CPU的硬件電路圖以及通過C語言編程實現I2C時序,驅動LED燈發光,最后給出應用實例。

  關鍵詞: PCA9633;RGB LED;I2C時序

0 引言

  在酒店、舞臺、娛樂場、咖啡廳、商場、生日宴會、家庭影院、節慶日等室內外場所,為了展示情調裝飾,烘托氣氛,經??吹絉GB LED燈的大量使用。LED是一種性能優良的顯示器件,具有壽命長、節電、高亮度、多種發光顏色、響應速度快和驅動電壓低等優點,在節省能源的同時還可以通過PWM器件調節LED發光強度,依據RGB三原色混光原理調出多種顏色,再通過MCU智能控制實現多種顯示效果。本文主要是介紹飛利浦公司生產的一款RGB LED控制器PCA9633的應用。

1 PCA9633芯片的原理及特點

  1.1 PCA9633的特點[2-3]

  PCA9633是I2C總線控制的可編程PWM輸出的4位LED驅動器件,主要應用LED RGB紅光/藍光/綠光/琥珀色的混光,性能指標如下:

 ?。?)4路LED驅動,每路驅動可以通過軟件編程為四種狀態,分別是:開、關、可編程PWM閃爍控制輸出、可編程每路灰度級別,同時支持4路整體亮度調節的PWM混光輸出。

 ?。?)調光控制,PWM輸出頻率97 kHz,每路有256個灰度級別。

 ?。?)閃爍控制,PWM可編程頻率范圍0.093 Hz~24 Hz,占空比可編程范圍0%~99.6%。

 ?。?)可通過190 Hz的PWM輸出對四路PWM輸出整體亮度256級調節。

 ?。?)4位輸出可編程設置為推拉輸出(在5 V時,灌電流25 mA,拉電流10 mA)。

 ?。?)7個硬件地址設定引腳,同一I2C總線最多可接126片。

  (7)每片PCA9633有4個可編程軟件地址:一個全部響應地址和三個子地址。

 ?。?)內置25 MHz晶振和上電復位電路,也可通過I2C總線實現軟件復位。

  (9)SDA/SCL內置噪聲濾波器,支持1 MHz的I2C快速模式。

 ?。?0)支持熱插入,低待機電流,支持電壓范圍:2.3~5.5 V。

  其引腳圖如圖1所示。

001.jpg

  引腳描述:

 ?。?)A6~A0:7個地址輸入引腳;

  (2)LED3~LED0:4位LED輸出驅動引腳;

 ?。?)OE:輸出使能引腳,低電平有效;

 ?。?)Vss,VDD:分別是地和電源;

  (5)SDA:I2C總線的數據輸入/輸出引腳;

  (6)SCL:I2C總線的時鐘輸入引腳。

  1.2 PCA9633電路連接圖[1-3]

  單片機與PCA9633芯片的連接采用I2C總線的方式,I2C接口引腳描述:

  (1)串行數據輸入/輸出(SDA):單片機與PCA9633通信的數據輸入/輸出線。

  (2)串行時鐘輸入(SCL):單片機與PCA9633通信時的同步時鐘。

 ?。?)片選輸入(OE):輸出使能端,當OE有效時,PCA9633的LEDn輸出有效。

  PCA9633的每一路LED驅動輸出電流最大25 mA,當RGB燈的工作電流不大時,可以直接接輸出,如果RGB的電流大,可以在PCA9633的LED驅動輸出端加場效應管,例如AP2306,可以提高驅動能力,輸出的連接電路如圖2所示。根據需要,LED可以串接多個,多個LED串接時,要考慮LED的管壓降,所以要提高LED的電源電壓。為了增加I2C總線的通信距離,增加PCA9600驅動器。硬件電路連接圖見圖2。

002.jpg

  1.3 PCA9633芯片寄存器功能描述[2]

  PCA9633對RGB LED燈的控制(亮度,明暗、閃爍,燈的整體控制),是通過設置其相關的寄存器完成的,下面介紹其有關寄存器的功能與設置方法。

  1.3.1 器件地址

  PCA9633是4位I2C總線的LED驅動器,與主機通信遵循I2C協議的格式,主機先發出啟動信號,隨后發出從機(PCA9633)的地址,封裝為16腳的PCA9633,有7個地址引腳分別為A0~A6,從機地址最多有27,即128個,在這128個地址中,其中軟件復位地址(0x06)和LED呼叫地址(0x0C)這兩個地址不能作為從機地址。

 ?。?)正常的I2C-BUS地址

004.jpg

  封裝為16腳的PCA9633從機地址的組成如圖3所示,最高7位是地址線,最低位是讀寫控制位,如果是讀操作最低位為“1”,若是寫操作最低位為“0”。還有一些地址是保留的,最好不要設置為從機地址,例如:(0000 011,1111 1xx,0000 000,0000 1xx)。

 ?。?)LED ALL Call IIC-bus address全呼叫地址

  全呼叫寄存器的地址是0x0C,功能是當PCA9633芯片的控制寄存器中的某個寄存器設置為全呼叫時,那么I2C總線上所有PCA9633器件都可以在同一時刻被尋址。上電時,全呼叫寄存器是使能的,默認值是0xE0h或0xE1h,當主機發送E0h或E1h時,PCA9633會出一個應答信號,所以全呼叫地址的值0xE0h和0xE1h不能作為從機地址。全呼地址的值是可以通過I2C總線編程的。

 ?。?)LED Sub Call IIC-bus address子呼叫地址

  PCA9633有3個子呼叫地址寄存器,可以通過I2C總線設置呼叫總線上的任一PCA9633器件,3個子呼叫地址為0x09h,0x0ah,0x0bh。上電時,3個子地址寄存器為默認的值(寫操作是0xE2h,讀操作是0xE3h)、(寫操作是0xE4h,讀操作是0xE5h)、(寫操作是0xE8h,讀操作是0xE9h);初始狀態下子呼叫寄存器是禁止使能的,所以這6個值可以作為從機地址。

  (4)Software Reset IIC-bus address軟件復位地址

  當PCA9633需要主機軟件編程復位時,可以使用這個地址,它的地址為0x06h。

  1.3.2 PCA9633控制寄存器[2]

  PCA9633有13個控制寄存器,通過設置這些寄存器來改變4路LED輸出的狀態,可以實現獨立控制或整體控制4路LED亮度和閃爍。每個寄存器的數據位詳細說明可以參閱它的數據手冊。

 ?。?)MODE1-模式1寄存器(地址0x00h):主要用來設置子呼叫地址或全呼叫地址是否使能。

 ?。?)MODE2-模式2寄存器(地址0x01h):主要功能是設置燈的輸出邏輯是否反轉、配置4位LED是OD門還是推拉輸出結構輸出,以及輸出禁止時4位LED輸出是高電平、低電平還是高阻狀態。

 ?。?)PWMx(x可以取值0,1,2,3)-單個LED燈亮度控制寄存器(地址分別是0x02h,0x03h,0x04h,0x05h):4路LED輸出控制信號是頻率為97 kHz,占空比可調的矩形波,通過設置亮度控制寄存器的值,改變占空比,調節LED燈的亮度,占空比值越大,燈越亮。

 ?。?)組控占空比因數寄存器(Group duty cycle control,GRPPWM,地址0x06h):功能是同時設置4個LED燈亮的時間,通過設置GRPPWM的值來調整占空比從0%~99.6%變化,占空比值越大,燈亮的時間越長。

 ?。?)組頻率控制寄存器(Group frequency,GRPFREQ):其功能是同時設置4位LED輸出信號的頻率,即改變LED閃爍的頻率。

 ?。?)燈輸出狀態寄存器(LED driver outputstate,LEDOUT,地址為0x08h):其功能是設置LED驅動輸出的狀態,通過編程可以設置4位LED燈滅、亮、單個燈亮、4個LED燈閃爍。

2 C語言編程軟件設計[2、4、5]

  2.1 寫PCA9633一個控制寄存器

  PCA9633遵循I2C總線協議[3],寫一個控制寄存器的時序如圖4所示。

005.jpg

  主機與從機通信時,開始時主機先發起始信號,這個起始信號要滿足I2C協議的起始條件,然后是從機的寫地址,由圖2知從機的地址為0xa2h(寫)、0xa3h(讀),隨后是從機發送應答信號,從機應答后主機發送某一個控制寄存器的地址,從機再次應答后,主機在發送控制寄存器的數據,從機收到后發送主機應答信號,主機收到應答信號后發送停止條件,這樣就結束一個控制寄存器的寫操作。

  例如:寫某個寄存器操作定義函數名定義為write9633(),函數的功能描述如下:

  void write9633(unsigned char address1,unsigned char address2,unsigned char info)

  {

  start();//起始信號writebyte(address1);

  //從機地址

  clock();//應答信號

  writebyte(address2);//寫MODE1寄存器地址

  clock();

  writebyte(info);//寫MODE1寄存器數據

  clock();

  stop();//主機發停止信號

  delay1(5000);//延時

  }

  其中address1為從機地址,address2為控制寄存器地址,info為要寫入控制寄存器的數據。有關上述子函數的實現可以參考I2C協議的編程,由于篇幅所限,不再詳述。

  2.2 組控4位LED燈閃爍的主要程序

  PCA9633控制寄存器的宏定義:

  #define MODE1 0x00

  #define MODE2 0x01

  #define PWM0 0x02

  #define PWM1 0x03

  #define PWM2 0x04

  #define PWM3 0x05

  #define GRPPWM 0x06

  #define GRPPFREQ0x07

  #define LEDOUT  0x08

  #define SUBADR1 0x09

  #define SUBADR2 0x0A

  #define SUBADR3 0x0B

  #define ALLCALLADR 0x0C

  sbit cs=P2^5;

  write9633(0xa2,MODE1,0x00);

  //寫模式寄存器1,0xa2為從機地址

  write9633(0xa2,MODE2,0x22);

  //寫模式寄存器2,cs=1時,LEDn高阻抗,燈不亮

  write9633(oxa2,LEDOUT,0xff);

  write9633(0xa2,GRPPWM,0xa0);

  //改變占空因數,值越小,亮的時間越短

  write9633(0xa2,GRPPFREQ,0xa0);

  //控制4個燈的閃爍頻率,值越小,閃爍越快

  cs=0;//輸出使能

  write9633(0xa2,PWM0,100);

  //100數值是燈的亮度,根據要求可以改變

  write9633(0xa2,PWM1,100);

  write9633(0xa2,PWM2,100);

  write9633(0xa2,PWM3,100);

  程序里對MODE2寄存器的設置是基于LED輸出配置是OD門結構,輸出配置如果是推拉輸出結構,即輸出加FET驅動時,模式2(MODE2)寄存器設置0x26h。

  如果I2C總線上連接多個PCA9633,則可以使用LED呼叫地址,即上述程序里地址0xa2改為0xe0就可以了。這樣可以節約I2C總線操作指令。0xe0是系統上電默認的值,也可以通過寫LED呼叫地址改變,通過寫指令write9633(0xa2,0x0c,0xb2)即改為0xb2。

  2.3 實現呼吸燈的效果

  循環改變亮度控制寄存器的數值,可以實現呼吸燈的效果,以從機地址0xa22為例說明,主要代碼如下:

  for(i=0;i<255;i++)

  { write9633(0xa2,PWM0,i);

  write9633 (0xa2,PWM1,i);

  write9633(0xa2,PWM2,i);

  write9633(0xa2,PWM3,i);

  delay(500);

  }

3 結束語

  PCA9633在LED控制方面性能顯著,操作方便。特別是為紅/綠/藍/琥珀(RGBA)色的混合應用進行了優化。另外,它還有3個子呼地址可以實現特定的組響應I2C總線。例如,可以允許所有的紅色LED燈亮或滅或實現跑馬燈的效果,從而減少I2C指令。通過改變紅、黃、綠LED的輸出狀態,依據RGB混光原理來實現任意顏色的顯示。

  參考文獻

  [1] 倪曉軍,章韻.單片機原理與接口技術[M].北京:清華大學出版社,2009.

  [2] 恩智浦.PCA9633 data sheet[EB/OL].(2006)[2014-11-14].http://www.cn.nxp.com/documents/data_sheet/PCA9633.pdf.

  [3] 何立民.I2C總線應用系統設計[M].北京:北京航空航天大學出版社,1995.

  [4] 馬忠梅.單片機的C語言應用程序設計[M].北京:北京航空航天大學出版社,2003.

  [5] 徐愛鈞,彭秀華.單片機高級語言C51應用程序設計[M].北京:電子工業出版社,1998.


此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美有码视频| 欧美日韩成人综合在线一区二区 | 日韩午夜视频在线观看| 亚洲大胆女人| 亚洲电影激情视频网站| 樱桃国产成人精品视频| 在线成人中文字幕| 尤妮丝一区二区裸体视频| 精品成人一区二区三区| 黄色免费成人| 影音先锋亚洲视频| 亚洲大黄网站| 亚洲欧洲综合另类在线| 亚洲精品久久久蜜桃| 日韩视频免费在线| 一本色道综合亚洲| 一区二区三区国产盗摄| 亚洲无毛电影| 欧美一二区视频| 亚洲第一色中文字幕| 亚洲精品国产日韩| 一区二区三区日韩欧美精品| 在线视频欧美日韩精品| 亚洲一区二区三区影院| 亚洲欧美激情诱惑| 久久精品二区亚洲w码| 久久一区中文字幕| 欧美激情精品久久久久久久变态| 欧美激情综合五月色丁香小说| 欧美极品色图| 欧美午夜电影在线| 国产精品一级久久久| 国产三区精品| 一区二区三区自拍| 亚洲欧洲在线免费| 一本色道久久综合狠狠躁篇的优点 | 欧美在线91| 久久久久一区二区| 欧美福利视频在线观看| 欧美日韩大片| 国产日韩欧美在线观看| 尤物yw午夜国产精品视频| 亚洲精品乱码久久久久久蜜桃91| 亚洲小说欧美另类婷婷| 久久xxxx精品视频| 99re热这里只有精品免费视频| 亚洲欧美成人| 久久五月激情| 欧美三级电影精品| 国产一区深夜福利| 亚洲精品日韩在线观看| 午夜精品一区二区三区在线视| 亚洲欧洲日产国产综合网| 亚洲图片欧美一区| 久久嫩草精品久久久精品一| 欧美日韩另类字幕中文| 国产亚洲在线观看| 日韩一二三在线视频播| 欧美一区午夜视频在线观看| 99热这里只有精品8| 久久国产精品色婷婷| 欧美国产精品人人做人人爱| 国产精品一区一区三区| 亚洲人成精品久久久久| 翔田千里一区二区| 在线中文字幕一区| 久久婷婷久久| 国产精品欧美日韩一区| 91久久精品日日躁夜夜躁国产| 亚洲欧美另类国产| 亚洲精品一区二区三区蜜桃久| 性欧美video另类hd性玩具| 欧美不卡在线| 国产伦精品一区二区三区高清| 亚洲国产日韩在线一区模特| 亚洲一区二区三区中文字幕在线| 亚洲国产专区| 欧美中文在线观看| 欧美三级电影大全| 在线精品福利| 欧美一级视频精品观看| 一区二区三区黄色| 噜噜噜噜噜久久久久久91| 国产精品日韩精品欧美精品| 亚洲激情图片小说视频| 久久精品成人欧美大片古装| 亚洲欧洲99久久| 欧美黄色大片网站| 国内精品免费午夜毛片| 亚洲一区二区三区在线看| 99视频在线精品国自产拍免费观看| 久久精品国产免费| 国产精品嫩草影院一区二区| 亚洲国产高清高潮精品美女| 性色av一区二区三区在线观看| 亚洲一级黄色av| 欧美精品偷拍| 在线播放豆国产99亚洲| 性欧美1819性猛交| 亚洲综合色网站| 欧美日韩国产电影| 在线观看av一区| 亚洲二区在线观看| 久久精品亚洲一区| 国产精品一区二区在线观看网站| 日韩视频免费观看高清在线视频| 亚洲区一区二区三区| 久久综合网络一区二区| 国产一区清纯| 欧美一区二区成人6969| 一区二区欧美在线观看| 欧美福利视频在线观看| 在线观看日韩www视频免费| 欧美综合激情网| 久久精品道一区二区三区| 国产精品影片在线观看| 亚洲天堂免费在线观看视频| 国产精品99久久久久久www| 欧美日韩精品系列| 亚洲精品社区| 99精品99| 欧美日韩精品免费观看视频完整| 亚洲人成亚洲人成在线观看| 亚洲乱码一区二区| 欧美激情一区二区| 亚洲精品欧美日韩专区| 一区二区高清在线| 欧美日韩国产美| 99精品国产福利在线观看免费| 一本久道久久综合婷婷鲸鱼| 欧美日韩xxxxx| 亚洲精品国精品久久99热一| 亚洲精品欧美激情| 欧美日本韩国一区| 国产精品久久久久一区| 亚洲午夜av在线| 午夜精品理论片| 国产日韩在线播放| 久久成人资源| 免费成人黄色| 亚洲精品免费在线观看| 亚洲社区在线观看| 国产精品私房写真福利视频| 亚洲在线观看视频网站| 欧美一区二区三区免费视频| 国产欧美日韩91| 久久超碰97人人做人人爱| 开心色5月久久精品| 亚洲国产成人高清精品| 日韩视频在线一区二区| 欧美少妇一区二区| 亚洲综合精品四区| 久久精品网址| 亚洲国产精品视频一区| 在线中文字幕不卡| 国产精品影片在线观看| 久久精品首页| 欧美精品综合| 午夜国产精品影院在线观看| 麻豆91精品91久久久的内涵| 91久久久久久国产精品| 亚洲一区亚洲| 国产一区二区三区精品欧美日韩一区二区三区 | 亚洲综合999| 国产一区二区三区奇米久涩| 亚洲精品视频一区| 国产精品免费一区二区三区在线观看| 亚洲免费视频在线观看| 老司机凹凸av亚洲导航| 日韩视频不卡| 久久久精品动漫| 亚洲日本电影| 久久国产精品毛片| 99国产精品视频免费观看| 久久国产精品黑丝| 亚洲人成高清| 久久精品噜噜噜成人av农村| 亚洲国产精品ⅴa在线观看 | 欧美刺激性大交免费视频| 一区二区三区国产| 老司机成人在线视频| 一本久久综合| 麻豆视频一区二区| 亚洲无限乱码一二三四麻| 欧美xx视频| 午夜精品婷婷| 欧美日韩一区三区| 亚洲第一视频网站| 欧美丝袜第一区| 久久精品国产69国产精品亚洲| 欧美伦理a级免费电影| 性刺激综合网| 国产精品magnet| 亚洲欧洲在线看| 国产农村妇女精品一二区| 99riav久久精品riav| 国产综合视频| 午夜影视日本亚洲欧洲精品| 国产麻豆一精品一av一免费| 一区二区av|