新聞中心

        EEPW首頁 > 光電顯示 > 設(shè)計(jì)應(yīng)用 > 多路端口可編程霓虹燈及彩燈控制器

        多路端口可編程霓虹燈及彩燈控制器

        作者: 時(shí)間:2006-07-20 來源:網(wǎng)絡(luò) 收藏
        現(xiàn)有的以及多是使用專用集成電路,其中固化多種閃爍方式,一般只提供4~16路輸出。由于在大型中使用的路數(shù)相當(dāng)多,一般只能定做,代價(jià)高而且靈活性較差。本設(shè)計(jì)由于采用了力源公司的新一代BASIC單片機(jī)PS1016及高性價(jià)比的8位LED控制驅(qū)動(dòng)器PS7219,從而可實(shí)現(xiàn)多,并且能夠?qū)θ我欢丝谶M(jìn)行控制,可廣泛用于大型、塑料霓虹燈以及控制,既可在產(chǎn)品上直接編程,又可在計(jì)算機(jī)上調(diào)試好直接傳輸。具有設(shè)計(jì)簡(jiǎn)單、使用方便等特點(diǎn)。

        1主要器件介紹
        1.1 PS1016單片機(jī)

        PS1016單片機(jī)引腳排列如圖1所示,其特點(diǎn)如下:

        1.固化在芯片內(nèi)部的PICBASIC解釋程序,提供32條語句;

        2.20MHz的系統(tǒng)時(shí)鐘,16位雙向的位可獨(dú)立編程為輸入/輸出(I/O)口,支持多種I/O操作;

        3.PICBASIC源程序存放在外擴(kuò)的24LC16BE2PROM中。E2PROM的容量為2K字節(jié),約可存放600~800條語句。

        XJ.1.gif (3717 字節(jié))

        1.2 8位LED控制驅(qū)動(dòng)器PS7219

        PS7219引腳排列如圖2所示。PS7219是一種高性能,低價(jià)格的多位LED顯示驅(qū)動(dòng)器。它在性能上完全兼容MAX7219,并增添了位閃等功能。其接口采用流行的同步串行外設(shè)接口(SPI),可與任何一種單片機(jī)方便接口,并可同時(shí)提供64路輸出或驅(qū)動(dòng)64只獨(dú)立LED。PS7219內(nèi)部具有158RAM功能控制寄存器,可方便尋址,對(duì)每位數(shù)字可單獨(dú)控制、刷新,不需重寫整個(gè)顯示器。顯示的亮度可數(shù)字控制,每位都具有閃爍使能控制位,引腳CON置高電平,可禁止所有顯示,達(dá)到降低功耗的效果,并不影響對(duì)控制寄存器的修改。PS7219還有一個(gè)掉電模式,一個(gè)允許用戶從1位數(shù)顯示到8位數(shù)顯示選擇的掃描界限寄存器和一個(gè)強(qiáng)迫所有LED接通的測(cè)試模式。N個(gè)PS7219級(jí)聯(lián),可實(shí)現(xiàn)N8位LED的顯示。

        2 硬件設(shè)計(jì)

        硬件組成框圖如圖3所示。

        XJ.2.gif (2874 字節(jié))
        圖3多霓虹燈及框圖

        鍵盤輸入由于對(duì)按鍵的要求不是太高,故使用了PS1016獨(dú)有的POT語句來識(shí)別所按的鍵;數(shù)碼顯示為4個(gè)8段數(shù)碼管,可由帶I2C接口的LED驅(qū)動(dòng)器SAA1064驅(qū)動(dòng);與微機(jī)的接口使用了MAX232接口電路。

        整個(gè)系統(tǒng)以單片機(jī)PS1016為核心,它控制整個(gè)系統(tǒng)的輸入輸出。其控制可分為編程和運(yùn)行兩個(gè)狀態(tài),在編程狀態(tài)PS1016接受小鍵盤的輸入并把數(shù)據(jù)處理后存儲(chǔ)到1M位CMOS串行E2PROM24LC256中。運(yùn)行時(shí)從24LC256中順序取出數(shù)據(jù)并按編程設(shè)計(jì)要求發(fā)送到各個(gè)PS7219中,點(diǎn)亮端口,整個(gè)程序循環(huán)運(yùn)行。每增加一個(gè)分機(jī)便增加64路輸出。

        3 軟件設(shè)計(jì)

        整個(gè)程序也分為編程和運(yùn)行兩個(gè)部分,程序總框圖如圖4所示。
        XJ.3.gif (4063 字節(jié))
        圖4程序流程框圖

        本程序關(guān)鍵在于數(shù)據(jù)的輸入、讀取和寫入。對(duì)24LC256的讀寫及對(duì)PS7219的寫入格式程序的編寫可參考力源的有關(guān)手冊(cè)。存儲(chǔ)在24LC256中的數(shù)據(jù)結(jié)構(gòu)和標(biāo)志位可以根據(jù)需要自己決定,這樣可以方便將來用微機(jī)通過RS232口下傳控制代碼。PS1016單片機(jī)的程序在微機(jī)上編好后,通過開發(fā)器下傳至單片機(jī)。

        PS1016利用SDA和SCL兩根引腳形成一個(gè)I2C總線接口,數(shù)據(jù)傳送速率為60kHz,使PS1016能擴(kuò)展I2C器件。

        I2C數(shù)據(jù)傳送格式如圖5所示:

        其中S為啟動(dòng)信號(hào),A為應(yīng)答信號(hào),R/W為讀/寫位,P為停止信號(hào)。

        S

        器件

        類型

        器件

        選擇

        R/W

        A

        數(shù)據(jù)1

        A

        數(shù)據(jù)2

        A

        數(shù)據(jù)3

        A

        P

        圖5I2C數(shù)據(jù)傳送格式

        24LC256工作于單字節(jié)讀寫或頁讀寫模式,利用數(shù)據(jù)1,數(shù)據(jù)2來形成高低位地址。以下是PS1016讀寫24LC256程序,實(shí)現(xiàn)單字節(jié)數(shù)據(jù)寫入和讀出。

        '###寫24LC256###
        'W10鍵盤輸入的要點(diǎn)亮的端口號(hào)
        '高位為b21低位為b20
        'W1116位地址計(jì)數(shù)器高位為b23低位為b22
        IICOUT$0A,$02,b23,b22,b21'寫入高位數(shù)據(jù)
        W11=W11+1
        IICOUT$0A,$02,b23,b22,b20'寫入低位數(shù)據(jù)
        W11=W11+1
        goto KEYBOARD INPUT'到鍵盤輸入子程序

        '###讀24LC256###
        W11=0'地址計(jì)數(shù)器清零
        IICIN$0A,$02,b23,b22,b21'讀入高位數(shù)據(jù)

        W11=W11+1

        IICOUT$0A,$02,b23,b22,b20'讀入低位數(shù)據(jù)
        If w11=$FFFFthen START'結(jié)束標(biāo)志,重新開始
        W11=W11+1
        …'發(fā)送W10數(shù)據(jù)到PS7219子程序
        goto LOOP

        本設(shè)計(jì)已制作成功,在淮陰市商場(chǎng)的霓虹燈(共237路)廣告中使用,性能良好,使用靈活,價(jià)格低廉。受到用戶肯定。

        以上的程序設(shè)計(jì),如果略加修改,便可用于可控大型焰火的燃放等其它領(lǐng)域。

        參考文獻(xiàn)
        1PS1016BASIC單片機(jī)使用說明書.武漢:武漢力源電子股份有限公司,1997.5



        評(píng)論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 绥中县| 信丰县| 雷波县| 辽宁省| 辽源市| 越西县| 定兴县| 辽阳市| 广安市| 鸡泽县| 交城县| 武平县| 石首市| 东阿县| 海门市| 扬州市| 尚志市| 朔州市| 临沧市| 堆龙德庆县| 乌海市| 互助| 资源县| 钦州市| 平顺县| 盈江县| 常州市| 临夏市| 凤台县| 灵武市| 南平市| 邻水| 蛟河市| 当阳市| 改则县| 广灵县| 会昌县| 祁阳县| 佛山市| 昭通市| 广南县|