本應(yīng)用筆記介紹了一個(gè)可免費(fèi)下載的PC程序,用于評(píng)估MAX6956和MAX6957 LED顯示驅(qū)動(dòng)器和GPIO(端口擴(kuò)展器)。
MAX6956和MAX6957為通用的28段LED顯示驅(qū)動(dòng)器,允許將任何輸出配置為通用輸入/輸出(GPIO)。通過(guò)高速SPI?(MAX6957)或I2C (MAX6956)串行接口進(jìn)行控制。
本應(yīng)用筆記描述了一個(gè)實(shí)用程序,允許通過(guò)PC控制MAX6957或MAX6956驅(qū)動(dòng)器。該實(shí)用程序可單獨(dú)使用,以幫助工程師熟悉驅(qū)動(dòng)程序的寄存器和功能。此外,在設(shè)計(jì)設(shè)備軟件之前,它可以通過(guò)直接控制MAX6957或MAX6956寄存器來(lái)“證明”應(yīng)用板原型。
要求
運(yùn)行 Windows? 95、98、98SE、ME、NT 或 2000 的電腦,其并行打印機(jī)端口配置為 LPT1 或 LPT2。
描述
該實(shí)用程序是一個(gè)名為MAX5的Visual Basic 6957程序.EXE它需要標(biāo)準(zhǔn)的Visual Basic運(yùn)行時(shí)庫(kù)MSVBVM50.DLL才能運(yùn)行。該程序使用 DriverLINX? 免費(fèi)軟件并行端口驅(qū)動(dòng)程序 DLPortIO.DLL它提供了 Win32 DLL 硬件 I/O 功能,這些功能在 Visual Basic 中不可用。Windows NT 和 2000 用戶還需要 DLPortIO.SYS 內(nèi)核模式驅(qū)動(dòng)程序。
安裝
要安裝到Windows 95、98、98SE、ME平臺(tái),請(qǐng)下載MAX6956-57.EXE文件。這是一個(gè) WinZIP 自解壓存檔,包含 ReadMe.txt、ReadMeSST.txt、MAX6957.EXE、DLPortIO.DLL 和 MSVBVM50.DLL。默認(rèn)下載目錄為 C:MAX6956。如果已在計(jì)算機(jī)上注冊(cè)庫(kù),則可能會(huì)刪除 MSVBVM50.DLL。
要安裝到Windows NT或2000平臺(tái),請(qǐng)下載MAX6956-NT.EXE文件。這是一個(gè) WinZIP 自解壓存檔,包含自述.txt、自述.txt、MAX6956.EXE、PORT95NT.EXE 和 MSVBVM50.DLL。默認(rèn)下載目錄為 C:MAX6956。PORT95NT.EXE 是 DriverLINX 驅(qū)動(dòng)程序的安裝程序,用于安裝和注冊(cè) DLPortIO.DLL 庫(kù)和 DLPortIO.SYS 驅(qū)動(dòng)程序。端口95NT.EXE可以在安裝后刪除。Windows 95,98,98SE,ME用戶也可以根據(jù)需要使用此安裝程序。
將MAX6956或MAX6957連接至并行端口
此實(shí)用程序使用 3 條并行端口打印機(jī)輸出線中的 8 條來(lái)模擬 SPI 串行接動(dòng),并使用另外 2 條輸出線來(lái)模擬 I2C 串行接動(dòng)。并行端口控制輸入線用于回讀SPI數(shù)據(jù)、I2C數(shù)據(jù)和中斷狀態(tài)。多個(gè)(最多16個(gè),菊花鏈)MAX6957和/或多個(gè)(最多16個(gè),配置不同的I2C地址)MAX6956可以同時(shí)工作??梢詮能浖羞x擇 LPT1 或 LPT2 端口。端口可以是標(biāo)準(zhǔn)、ECP 或 EPP 類型。端口連接如圖 1 所示。
圖1.MAX6956和MAX6957連接到并行端口。
該程序在啟動(dòng)時(shí)打開4個(gè)窗口。這些是主控制、強(qiáng)度控制、I/O 控制和段控制窗口。啟動(dòng)時(shí)的寄存器設(shè)置反映了MAX6956和MAX6957的寄存器上電條件。
主控件如下面的圖 2 所示?!膀?qū)動(dòng)器類型”單選按鈕選擇軟件是傳輸?shù)組AX6957(使用SPI連接)還是MAX6956(使用I2C連接)。
圖2.啟動(dòng)時(shí)顯示程序。
在SPI模式下,軟件控制多達(dá)16個(gè)MAX6957驅(qū)動(dòng)器。假定驅(qū)動(dòng)器是級(jí)聯(lián)的(即,第一個(gè)MAX6957的DOUT引腳連接到第二個(gè)MAX6957的DIN引腳,其DOUT引腳連接到第三個(gè)MAX6957的DIN引腳,依此類推)。MAX6957器件的總數(shù)由“驅(qū)動(dòng)器數(shù)量”滑塊設(shè)置。當(dāng)此值設(shè)置為 1 以上時(shí),“啟用全局驅(qū)動(dòng)程序?qū)懭搿焙汀皢⒂米詣?dòng)增量”復(fù)選框可用。當(dāng)“啟用全局驅(qū)動(dòng)器寫入”清除時(shí),當(dāng)選擇寫入命令時(shí),只有由“當(dāng)前驅(qū)動(dòng)器”滑塊選擇的MAX6957驅(qū)動(dòng)器被寫入 - 其他驅(qū)動(dòng)器接收無(wú)操作指令。當(dāng)選中“啟用全局驅(qū)動(dòng)器寫入”時(shí),所有MAX6957驅(qū)動(dòng)器都使用相同的數(shù)據(jù)寫入。選中“啟用自動(dòng)增量”時(shí),當(dāng)前驅(qū)動(dòng)程序編號(hào)會(huì)在每次寫入操作后自動(dòng)遞增。這允許用戶快速發(fā)送一系列MAX6957驅(qū)動(dòng)器的相同數(shù)據(jù)。
SPI接口與并行端口的連接可以使用“測(cè)試流”工具進(jìn)行測(cè)試,該工具可在“端口連接和幫助...”下找到。當(dāng)程序運(yùn)行時(shí)?!皽y(cè)試流”功能將無(wú)操作指令連續(xù)發(fā)送到MAX6957(s)(由“驅(qū)動(dòng)器數(shù)量”滑塊設(shè)置),允許在不影響寄存器內(nèi)容的情況下驗(yàn)證接口連接。
在I2C模式下,軟件控制多達(dá)16個(gè)MAX6956驅(qū)動(dòng)器。假定第一個(gè)驅(qū)動(dòng)程序的地址設(shè)置為 1000000x,最后一個(gè)設(shè)備的后續(xù)設(shè)備的地址增加到 1001111x。例如,要訪問(wèn)地址為6956x的單個(gè)MAX1001111驅(qū)動(dòng)器,只需將“驅(qū)動(dòng)器數(shù)量”滑塊設(shè)置為16,然后將“當(dāng)前驅(qū)動(dòng)器”滑塊設(shè)置為16,地址為1001111x。I2C模式下的主形式如圖3所示。
圖3.I2C程序顯示。
I2C接口與并行端口的連接可以使用“測(cè)試流”工具進(jìn)行測(cè)試,該工具可在“端口連接和幫助...”下找到。當(dāng)程序運(yùn)行時(shí)?!皽y(cè)試流”功能將無(wú)操作指令連續(xù)發(fā)送到所有MAX6956(由“驅(qū)動(dòng)器數(shù)量”滑塊設(shè)置),允許在不影響寄存器內(nèi)容的情況下驗(yàn)證接口連接。
“快速串行接口”復(fù)選框設(shè)置SPI和I2C接口類型的串行接口速度。選中后,串行接口以取決于機(jī)器的全速運(yùn)行,最高可達(dá) 1 Mb/秒;如果未選中,速度限制為最大 500 位/秒。通過(guò)很長(zhǎng)的電纜連接時(shí),速度慢可能很有用。
該程序通常僅在按下“寫入”或“讀取”按鈕時(shí)與目標(biāo)驅(qū)動(dòng)程序(或多個(gè)驅(qū)動(dòng)程序)通信。然而,程序試圖監(jiān)視假定連接到并行端口引腳13的中斷輸出引腳。這將顯示在主窗口中,并將狀態(tài)顯示為高或低。
選中“自動(dòng)更新控制”按鈕后,程序會(huì)持續(xù)輪詢所有 28 個(gè)端口輸入寄存器和中斷寄存器位。讀取速率取決于“快速串行接口”復(fù)選框的設(shè)置,并且是每秒多次(快速)或每隔許多秒(慢速)。注意:慢模式很慢!“讀取驅(qū)動(dòng)程序x”滑塊允許用戶將自動(dòng)讀取的設(shè)備設(shè)置為通過(guò)“當(dāng)前驅(qū)動(dòng)程序”控件訪問(wèn)的驅(qū)動(dòng)程序。
主窗口是退出程序的路由。退出按鈕或按主窗口上的 Esc 鍵將關(guān)閉所有 4 個(gè)窗口。在其他 3 個(gè)窗口之一中按 Esc 鍵會(huì)將用戶帶到主窗口;因此,按兩次 Esc 鍵將快速關(guān)閉程序。在關(guān)閉之前,程序?qū)⑵骷渲玫淖詈笤O(shè)置存儲(chǔ)在名為MAX6956的文件中.ini該文件與執(zhí)行程序的目錄相同。沒(méi)有任何東西寫入Windows注冊(cè)表。這些設(shè)置包括 4 個(gè)窗口的位置以及主窗口上的界面設(shè)置。如果MAX6956.ini不存在,則創(chuàng)建它;否則將被覆蓋。要恢復(fù)程序默認(rèn)設(shè)置,或者如果MAX6956.ini損壞,只需刪除MAX6956.ini文件即可。
圖 4、5 和 6 顯示了其他三個(gè)窗口的快照。
圖4.強(qiáng)度配置窗口。
圖5.I/O 配置窗口。
圖6.段寄存器窗口。
審核編輯:郭婷
-
驅(qū)動(dòng)器
+關(guān)注
關(guān)注
52文章
8226瀏覽量
146251 -
寄存器
+關(guān)注
關(guān)注
31文章
5336瀏覽量
120230
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論