女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

在Arduino下如何直接以LED組建點陣屏

奈因PCB電路板設計 ? 來源:嵌入式ARM ? 作者:jinglixixi ? 2021-07-26 17:03 ? 次閱讀

FireBeetle 24×8 LED點陣屏是螢火蟲系列的配件產品,與常規點陣屏不同的是它直接用LED發光二極管來構建顯示陣列,而非用點陣模塊來構建。

為了節省I/O口,該點陣屏是采用高性能的LED驅動芯片HT1632C來進行控制。對每個LED都有獨立的寄存器,故可分別驅動每個LED燈。它內置了256KHz的RC時鐘,在低功耗模式下,可關閉RC時鐘,使功耗僅為5uA。

點陣屏的外觀如圖1和圖2所示,盡管顯示屏的引腳較多,但在使用時所涉及的引腳并不很多。

點陣屏的性能如下:

· 工作電壓:3.3V· 顯示顏色:白色· HT1632C驅動芯片· 內置256KHzRC時鐘· 低功耗:5uA· 工作電流:6mA~100mA· 串行數據通信· 支持Arduino庫· 支持滾屏顯示· 接口方式:FireBeetle系列兼容· 工作溫度:-40℃~+85℃· 模塊尺寸:24 ×58(mm)/0.94 x 2.28(inches)· 安裝孔尺寸:內徑3.1mm/外徑6mm

要驅動該點陣屏有2種方式,一種是以常規的Arduino開發板來驅動,另一種則是以ESP32-E Arduino開發板來驅動。

對于常規的Arduino開發板驅動,在使用前安裝對應的FireBeetleLEDMatrix-master庫,安裝后即可見到對應庫以供使用。

若以ESP32-EArduino開發板來驅動,則無法直接進行編譯和上傳,為此只好以I/O口驅來編程實現。

按點陣屏的原理圖可知,為了便于使用片選信號CS是可供選擇的,選擇的對象可以是CS1~CS4中的任意一個,選取時只需將S1對應的開關接通即可。而CS1~CS4所對應的引腳則是D2~D5,編程時是以A4來控制串行。

6b49ede0-e06d-11eb-9e57-12bb97331649.jpg

圖8 點陣屏片選控制

6b89133a-e06d-11eb-9e57-12bb97331649.jpg

圖9 片選開關

為此,點陣屏與開發板的連接關系定義為:

#define cs1 A4#define rd D3#define wr D7#define dat D2

實現HT1632C初始化的函數為:

void HT1632C_Init(void){ digitalWrite(cs1, HIGH); #define SYS_DIS 0x00 //關閉系統震蕩 #define SYS_EN 0x01 //打開系統震蕩 #define LED_OFF 0x02 //關閉LED顯示 #define LED_ON 0x03 //打開LED顯示 #define BLINK_OFF 0x08 //關閉閃爍 #define BLINK_ON 0x09 //打開閃爍 #define SLAVE_MODE 0x10 //從模式 #define RC_MASTER_MODE 0x18 //內部RC時鐘 #define COM_OPTION 0x24 //24:16COM,NMOS。C:COM,PMOS。 #define PWM_DUTY 0xAE //PWM亮度控制 digitalWrite(wr, HIGH); digitalWrite(dat, HIGH); HT1632C_Write_CMD(SYS_DIS); //關閉HT1632C內部RC時鐘 HT1632C_Write_CMD(COM_OPTION); //選擇HT1632C工作模式,COM,NMOS模式 HT1632C_Write_CMD(RC_MASTER_MODE); //選擇內部RC時鐘 HT1632C_Write_CMD(SYS_EN); //打開HT1632C內部RC時鐘 HT1632C_Write_CMD(PWM_DUTY); //PWM亮度設置 HT1632C_Write_CMD(BLINK_OFF); //關閉閃爍 HT1632C_Write_CMD(LED_ON); //打開LED顯示}

實現清屏處理的函數為:

void HT1632C_clr(void){ unsigned char i; digitalWrite(cs1, LOW); HT1632C_Write(0xa0,3); HT1632C_Write(0x00,7); for(i=0;i《48;i++) HT1632C_Write(0,8); digitalWrite(cs1, HIGH);}

向HT1632C發送數據的函數為:

voidHT1632C_Write(unsigned char Data,unsigned char cnt){ unsigned char i; for(i=0;i《cnt;i++) { digitalWrite(wr, LOW); if(Data & 0x80) digitalWrite(dat, HIGH); else digitalWrite(dat, LOW); Data《《=1; digitalWrite(wr, HIGH); }}

向HT1632 C寫入命令的函數為:

void HT1632C_Write_CMD(unsignedchar cmd){digitalWrite(cs1, LOW);HT1632C_Write(0x80,3);HT1632C_Write(cmd,9);digitalWrite(cs1, HIGH);}

向HT1632 C寫入數據的函數為:

void HT1632C_Write_DATA(unsignedchar Addr,unsigned char p,unsigned char cnt){ unsigned char i; digitalWrite(cs1, LOW); HT1632C_Write(0xa0,3); HT1632C_Write(Addr《《1,7); for(i=0;i《cnt;i++) { HT1632C_Write(p,8); } digitalWrite(cs1, HIGH);}

實現顯示效果的配置程序為:

void setup() { unsigned char temp=0xAA; pinMode(LED_BUILTIN, OUTPUT); pinMode(cs1, OUTPUT); pinMode(rd, OUTPUT); pinMode(wr, OUTPUT); pinMode(dat,OUTPUT); HT1632C_Init(); HT1632C_clr(); HT1632C_Write_DATA(0x00,temp,48);}

經程序的編譯與上傳,其界面如圖11所示。

6bc60ef2-e06d-11eb-9e57-12bb97331649.jpg

圖11 完成程序上傳

實現圖12所示三角形繪制的程序如下:

{ unsigned char i,b; digitalWrite(cs1, LOW); HT1632C_Write(0xa0,3); HT1632C_Write(0x00,7); b=1; for(i=0;i《24;i++) { if(i%8==0) b=1; else b=(b《《1)+1; HT1632C_Write(b,8); HT1632C_Write(b,8); } digitalWrite(cs1, HIGH);}

6bf5778c-e06d-11eb-9e57-12bb97331649.jpg

圖12繪制三角形

實現圖13所示數值顯示的程序如下:

voidsetup() { unsigned char temp=0xFF; pinMode(LED_BUILTIN, OUTPUT); pinMode(cs1, OUTPUT); pinMode(rd, OUTPUT); pinMode(wr, OUTPUT); pinMode(dat,OUTPUT); HT1632C_Init(); HT1632C_clr(); HT1632C_Write_C(58,8); HT1632C_Write_C(26,6); HT1632C_Write_C(26,4);}

對于的字符顯示函數為:

voidHT1632C_Write_C(unsigned char Addr,unsigned char p){ unsigned char i; digitalWrite(cs1, LOW); HT1632C_Write(0xa0,3); //ID:101 HT1632C_Write(Addr《《1,7); for(i=0;i《8;i++) { HT1632C_Write(dot[p*8-i],8); HT1632C_Write(dot[p*8-i],8); } digitalWrite(cs1, HIGH);}

6c0ae324-e06d-11eb-9e57-12bb97331649.jpg

圖13 數值顯示

所使用的字模由工具軟件PCtoLCD2002來提取,其提取的格式定義如圖15所示。

6c28132c-e06d-11eb-9e57-12bb97331649.jpg

圖14字模提取

6c3e031c-e06d-11eb-9e57-12bb97331649.jpg

圖15字模格式定義

相應的字庫格式為:

unsignedchar dot[]= {0x00,0x38,0x44,0x44,0x44,0x44,0x38,0x00,/*“0”,0*/0x00,0x48,0x48,0x7C,0x40,0x40,0x00,0x00,/*“1”,1*/0x00,0x48,0x64,0x64,0x64,0x54,0x6C,0x00,/*“2”,2*/0x00,0x28,0x44,0x4C,0x4C,0x54,0x34,0x00,/*“3”,3*/0x00,0x10,0x28,0x24,0x64,0x7E,0x00,0x00,/*“4”,4*/0x00,0x3C,0x54,0x54,0x54,0x54,0x24,0x00,/*“5”,5*/0x00,0x38,0x54,0x54,0x54,0x54,0x20,0x00,/*“6”,6*/0x00,0x0C,0x04,0x74,0x14,0x0C,0x04,0x00,/*“7”,7*/0x00,0x2C,0x54,0x54,0x54,0x54,0x2C,0x00,/*“8”,8*/0x00,0x08,0x54,0x54,0x54,0x74,0x38,0x00,/*“9”,9*/};

這樣我們要驅動FireBeetle 24×8 LED點陣屏的顯示,就有了2種方法。

本文系21ic論壇藍V作者jinglixixi原創撰寫

編輯:jq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • led
    led
    +關注

    關注

    242

    文章

    23701

    瀏覽量

    670905

原文標題:直接以LED組建點陣屏不多見吧?驅動就一種方法?看看在Arduino下怎樣實現

文章出處:【微信號:pcbgood,微信公眾號:奈因PCB電路板設計】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    LED燈桿與常規LED顯示的區別

    LED燈桿與常規LED顯示的區別
    的頭像 發表于 03-21 08:45 ?284次閱讀
    <b class='flag-5'>LED</b>燈桿<b class='flag-5'>屏</b>與常規<b class='flag-5'>LED</b>顯示<b class='flag-5'>屏</b>的區別

    2.0寸顯示,輕薄低功耗12864點陣COG顯示

    2.0寸單色LCD液晶顯示12864圖形點陣,輕薄低功耗128*64點陣COG顯示
    的頭像 發表于 02-19 12:02 ?423次閱讀
    2.0寸顯示<b class='flag-5'>屏</b>,輕薄低功耗12864<b class='flag-5'>點陣</b>COG顯示<b class='flag-5'>屏</b>

    點陣數碼管LED驅動/數顯LED驅動IC-VK1638 SOP28最大支持8×3按鍵矩陣/10×8點陣

    產品品牌:永嘉微電VINKA 產品型號:VK1638 封裝形式:SOP28 VK1638是一種帶鍵盤掃描接口的數碼管或點陣LED驅動控制專用芯片,內部集成有3線 串行接口、數據鎖存器、LED 驅動
    的頭像 發表于 11-08 16:24 ?598次閱讀
    <b class='flag-5'>點陣</b>數碼管<b class='flag-5'>LED</b>驅動/數顯<b class='flag-5'>LED</b>驅動IC-VK1638 SOP28最大支持8×3按鍵矩陣/10×8<b class='flag-5'>點陣</b>

    科普一什么是小間距LED顯示及小間距LED顯示的優勢

    之間的距離小,LED顯示行業普遍采用根據這個距離的大小,定義產品規格的方法,如我們常見的P12,P10,P8(點間距分別為12mm,10mm和8mm),而隨著工藝的進步,點間距正在變得越來越小。 根據行業共識,點間距2.5m
    的頭像 發表于 11-04 09:43 ?1050次閱讀

    LED報價方案參考對比

    需要采購LED顯示的朋友,會找LED顯示廠家進行詢LED報價方案參考對比,預算方面是否超支
    的頭像 發表于 10-28 14:12 ?776次閱讀

    LED透明市場爆火 今天帶大家了解LED透明

    LED透明,其實是從傳統顯示的基礎上創新而來的,都是由LED電源提供動力、控制系統負責傳達指令、驅動IC提供顯示程序,以及LED燈珠負責
    的頭像 發表于 10-28 14:11 ?500次閱讀

    小封裝段碼驅動點陣式液晶顯示IC-VKL092Q段碼LCD驅動

    LED驅動IC、點陣LED顯示驅動、LED驅動IC、數顯驅動芯片、數碼管芯片、數碼管驅動、數顯
    發表于 10-08 16:37

    物聯網系統中低功耗長壽命顯示方案_點陣液晶詳解

    物聯網系統中為什么要使用點陣液晶 物聯網系統中使用點陣液晶的原因主要可以歸納為以下幾點: 顯示內容豐富多樣 高靈活性:點陣液晶
    的頭像 發表于 09-24 12:08 ?799次閱讀
    物聯網系統中低功耗長壽命顯示<b class='flag-5'>屏</b>方案_<b class='flag-5'>點陣</b>液晶<b class='flag-5'>屏</b>詳解

    LED透明顯示生產 原理 技術 應用

    LED透明顯示常指的是硬燈條透明,具有輕薄、通透、播放影像通透絢麗的特點。是對LED顯示
    的頭像 發表于 08-29 15:01 ?907次閱讀

    詳解LED顯示的基本結構和控制方式

    體結構 LED顯示體是顯示信息的核心部分,主要由顯示點陣、行列驅動電路和其他輔助電路組成。顯示
    的頭像 發表于 07-19 08:49 ?2222次閱讀

    LED全息LED晶膜:誰才是LED透明顯示的王者?

    LED全息LED晶膜各有其獨特的優勢和應用場景。LED全息以其夢幻般的3D顯示效果和高透
    的頭像 發表于 07-08 11:42 ?2112次閱讀
    <b class='flag-5'>LED</b>全息<b class='flag-5'>屏</b>與<b class='flag-5'>LED</b>晶膜<b class='flag-5'>屏</b>:誰才是<b class='flag-5'>LED</b>透明顯示的王者?

    vr顯示用電視還是led

    VR顯示的選擇上,電視顯示LED顯示各有優缺點,要根據實際的應用場景和需求來決定。
    的頭像 發表于 07-08 10:36 ?1085次閱讀

    通過視頻幀提取及批量取模轉換實現基于STC32的點陣LED動畫播放

    通過視頻幀提取及批量取模轉換實現基于STC32的點陣LED動畫播放
    的頭像 發表于 06-27 02:16 ?631次閱讀
    通過視頻幀提取及批量取模轉換實現基于STC32的<b class='flag-5'>點陣</b><b class='flag-5'>LED</b>動畫播放

    ESP32驅動3264點陣有噪點的原因?

    ESP32 驅動3264點陣顯示時間,采用ARDUINO編寫。 不打開WIFI,顯示會一切正常,打開WIFI,顯示會有噪點閃動,無規律,就是發光的二極管會不時地更亮一
    發表于 06-13 06:56

    解析LED燈管的價格由哪些因素決定?

    LED燈珠數量就越多,因此成本也會相應增加。同時,大尺寸的LED燈管通常需要更強大的散熱系統,確保設備長時間運行過程中保持穩定,這也
    的頭像 發表于 06-12 11:05 ?537次閱讀