用P89C664實(shí)現(xiàn)I2C總線大批量數(shù)據(jù)的自動(dòng)存儲(chǔ)_第1頁(yè)
用P89C664實(shí)現(xiàn)I2C總線大批量數(shù)據(jù)的自動(dòng)存儲(chǔ)_第2頁(yè)
用P89C664實(shí)現(xiàn)I2C總線大批量數(shù)據(jù)的自動(dòng)存儲(chǔ)_第3頁(yè)
用P89C664實(shí)現(xiàn)I2C總線大批量數(shù)據(jù)的自動(dòng)存儲(chǔ)_第4頁(yè)
用P89C664實(shí)現(xiàn)I2C總線大批量數(shù)據(jù)的自動(dòng)存儲(chǔ)_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、用P89C664實(shí)現(xiàn)I2C總線大批量數(shù)據(jù)的自動(dòng)存儲(chǔ)             摘要:結(jié)合Flash Magic軟件對(duì)PhilipsP89C664單片機(jī)ISP功能進(jìn)行詳細(xì)介紹,同時(shí)詳細(xì)敘述利用P89C664硬件I2C接口接收數(shù)據(jù)并轉(zhuǎn)發(fā)到電腦,實(shí)現(xiàn)I2C總線大批量數(shù)據(jù)的自動(dòng)保存技術(shù),并附有完事的源泉程序清單及必要的注釋。     關(guān)鍵詞:Flash Magic ISP I2C P89C664引言在實(shí)際工作中,有些情況下可能需要對(duì)一些I2C接口發(fā)出的數(shù)據(jù)

2、進(jìn)行分析,如果數(shù)據(jù)較少則比較容易解決。比如可以直接把數(shù)據(jù)保存到單片機(jī)的RAM中,然后通過(guò)LED顯示出來(lái),但如果數(shù)據(jù)量很大,這種方法就很河取了。在這種情況下,想辦法把大量的數(shù)據(jù)保存到電腦里是一個(gè)比較好的方法這樣不但可以解決大批量數(shù)據(jù)的存儲(chǔ)問題,同時(shí)也易于編輯、分析和打印。但是,電腦的外設(shè)接口中是沒有I2C接口的,因此需要對(duì)I2C部遲疑不決的數(shù)據(jù)進(jìn)行轉(zhuǎn)換,使之能發(fā)往電腦,實(shí)現(xiàn)數(shù)據(jù)的文件存儲(chǔ)。綜合各種因素考慮,采用UART串口的方式比較方便,因?yàn)榇诩夹g(shù)簡(jiǎn)單、應(yīng)用廣泛、各種應(yīng)用軟件也較為豐富。本文不僅介紹了如何實(shí)現(xiàn)I2C數(shù)據(jù)的轉(zhuǎn)發(fā)和自動(dòng)存儲(chǔ),同時(shí)也介紹了P89C664的ISP功能,并給出了詳細(xì)配合相

3、關(guān)軟件,完全可以省去一臺(tái)價(jià)格不菲的編程器,實(shí)用性強(qiáng)。這非常適合業(yè)余自學(xué)單片機(jī)技術(shù)或者在家吵建立一個(gè)簡(jiǎn)單實(shí)用的開發(fā)系統(tǒng)。1 P89C664單片機(jī)及ISP、IAP簡(jiǎn)介P89C664是Plilips公司一款優(yōu)秀的51內(nèi)核單片機(jī)芯片、帶64KB的Flash程序夏令、1792B的數(shù)據(jù)存儲(chǔ)器、I2C硬件全工作方式接口、6 clocks/12 clocks可選、8個(gè)中斷源/4級(jí)中斷優(yōu)先級(jí)、雙DPTR寄存器、PCA以及IAP、ISP功能等,具體內(nèi)容請(qǐng)參考相關(guān)資源。在Philips的網(wǎng)站上可以下載到詳細(xì)的技術(shù)資料及各種應(yīng)用文檔:    下面科簡(jiǎn)單的介紹一下ISP、IAP的概念。IS

4、P(In System Programming),即在系統(tǒng)編程。它允許MCU還在產(chǎn)品電路板上時(shí),對(duì)其下載新的程序。這種技術(shù)的一個(gè)明優(yōu)點(diǎn)是,不需要把MCU芯片從你的電路板上拆下來(lái),再裝到傳統(tǒng)的編程器上來(lái)寫入新的程序。你盡可以把具有ISP功能的MCU芯片焊接在電路板上,應(yīng)用更加可靠、方便。當(dāng)然,你得把MCU的UART串口留出,并設(shè)計(jì)好簡(jiǎn)單的外圍電路;同時(shí)還配有一個(gè)專用的ISP軟件以實(shí)現(xiàn)用戶程序的直下載。這種專用的ISP下載軟件可以在各公司的網(wǎng)部上免費(fèi)下載到。P89C664的ISP軟件可在Philips公司的網(wǎng)站上下載。當(dāng)然,如果你有興趣也可以自己設(shè)計(jì)一個(gè)個(gè)性化的ISP下載軟件,因?yàn)镻hilips公

5、司對(duì)ISP的各種編程指令是開放的。    IAP(In Application Programming),即在應(yīng)用中程序。就是說(shuō),MCU自己可以獲取新的代碼并對(duì)自己重新編程。這是一個(gè)極為有用的技術(shù),比如可以通過(guò)Internet、程控電話網(wǎng)等給你的產(chǎn)品遠(yuǎn)程升級(jí),就像常見的殺毒軟件可以自動(dòng)升級(jí)一樣。有了這項(xiàng)技術(shù),你就可以利用現(xiàn)在的程控電話網(wǎng)、互聯(lián)網(wǎng)等實(shí)現(xiàn)你的嵌入式系統(tǒng)遠(yuǎn)程自動(dòng)升級(jí),而無(wú)須傳統(tǒng)的那種給客戶郵寄芯片而帶來(lái)的不便。需要指出的是:ISP和IAP的核心技術(shù)是相同的,都是調(diào)用內(nèi)部的標(biāo)準(zhǔn)程序?qū)lash存儲(chǔ)器進(jìn)行擦除和重新編程。區(qū)別在于:ISP由片內(nèi)固化的一個(gè)默認(rèn)的

6、串行加載程序(Boot Loader)來(lái)完成這一動(dòng)作;而IAP則由用戶在自己的程序中完成這一調(diào)用,這就為產(chǎn)品的遠(yuǎn)程升級(jí)提供了可能,甚至可以說(shuō)是MCU應(yīng)用技術(shù)的一個(gè)里程碑。2 ISP技術(shù)的應(yīng)用對(duì)于Philips的MCU,其ISP電路很簡(jiǎn)單,就是一個(gè)與計(jì)算機(jī)串口通信的電路(注:根據(jù)ISP控制軟件的不同電路會(huì)略有不同),電路如圖1所示。國(guó)外的嵌入式系統(tǒng)學(xué)會(huì)(Embedded Systems Academy)提供了一個(gè)ISP軟件Flash Magic,可以在該組織的網(wǎng)站上下載到,網(wǎng)址為 Magic。Flash Magic的安裝過(guò)程與標(biāo)準(zhǔn)的Windows軟件類似,在此不再詳述。安裝完成后,啟動(dòng)Flash

7、 Magic后,有圖2所示畫面。緊接著Flash Magic軟件將用默認(rèn)的設(shè)置嘗試連接ISP芯片,如圖3所示。請(qǐng)注意狀態(tài)欄中的顯示“Attempting to connect.”,說(shuō)明Flash Magic正在嘗試著連接ISP裝置。如果你已經(jīng)用Flash Magic下載過(guò)程序并且沒有更改ISP裝置的話,則很快就可連接上。如果你是第一次使用,則需要進(jìn)行一些必要的針對(duì)性設(shè)置,以便Flash Magic能正常連接帶ISP的MCU。如果連接不上,F(xiàn)lash Magic將彈出圖4所示的提示框。請(qǐng)點(diǎn)擊“取消”!然后在軟件的主界面中選擇菜單Options/Advanced Options.,如圖5所示。此時(shí)

8、彈出設(shè)置框,請(qǐng)切換到Hardware Config選項(xiàng)卡,如圖6所示。使“Use DTR and RTS to control RST and PSEN”、“Keep RTS asserted while COM Port open”選項(xiàng)有效即可,其它都不用更改,直接點(diǎn)“OK”確定。Flash Magic的主界面上有清晰的1、2、3、4、5數(shù)字指示。這15的數(shù)字不令表示5個(gè)不同的區(qū)域,同時(shí)也不是下載程序的5個(gè)步驟。當(dāng)然如果你已經(jīng)設(shè)置好了,每次下載后就可直接點(diǎn)"start"按鈕即可。在區(qū)域1中,我們需要設(shè)置這里的每一個(gè)選項(xiàng),在這里我們是以P89C664為例的,如圖7所示。CO

9、M Port:Flash Magic支持COM1、COM2、COM3和COM4共4個(gè)串口,在過(guò)大多數(shù)電腦只有COM1和COM2口,主選擇正確的COM口,該COM就是連接用戶板的那個(gè)串口。    Baud Rate:這里設(shè)置程序的下載速率,根據(jù)情況選擇合適的值,不易太大,否則會(huì)因?yàn)楦蓴_而無(wú)法連接,通常情況下用19200bps就比較合適了。Device:選擇ISP器件型號(hào),在Flash Magic的1.81版中,共支持35種ISP器件,這里選擇P89C664。Oscillator Frea.(MHz):在這里請(qǐng)?zhí)钊肽阌脩舭迳螹CU用兵晶振頻率值。其它部分類似,可以自己

10、下載下一個(gè)Flash Magic,新自操作一下就會(huì)很清楚了。除了下載用戶程序外,F(xiàn)lash Magic還提供了其它的一些功能,都集中在“ISP”菜單中??梢杂H自去試一下,以后你會(huì)發(fā)現(xiàn)Flash Magic真的很好用。有了它一定能讓你的開發(fā)工作事半功倍,而且可以省去一臺(tái)昂貴的編程器,對(duì)單片機(jī)的初學(xué)者尤為適用。3 I2C接收數(shù)據(jù)并轉(zhuǎn)發(fā)到電腦由于P89C664帶有硬件I2C接口,因此我們用它作為從器件接收I2C總線上的數(shù)據(jù),Philips公司在相關(guān)的技術(shù)資料中給出了標(biāo)準(zhǔn)的I2C接口控制程序包。其實(shí)也可根據(jù)P89C664的資料自己來(lái)編寫I2C接口的控制程序,不過(guò)Philips公司提供的參考程序很值得我

11、們學(xué)習(xí)、研究。下面程序中用的就是Phlips公司推出的I2C接口控制程序,為了更適用于接收大批量的I2C總線數(shù)據(jù),我們對(duì)其中的一部分代碼作了必要的更改,如果需要標(biāo)準(zhǔn)的控制程序請(qǐng)自己從Philips的網(wǎng)站上下載。程序的流程是首先設(shè)置好I2C接口的地址以及各SFR的值,然后啟動(dòng)I2C接口,并把接收到的數(shù)據(jù)通過(guò)串口發(fā)往電腦,在電腦上啟動(dòng)另一串口調(diào)試軟件并做好相關(guān)的設(shè)置,即可將I2C總線的數(shù)據(jù)接收并保存下來(lái)。在這里,我們的用戶板作用相當(dāng)于一個(gè)協(xié)議轉(zhuǎn)換裝置,即把I2C總線的數(shù)據(jù)流轉(zhuǎn)換為UART的數(shù)據(jù)流并發(fā)往電腦。請(qǐng)注意:一般我們的ISP下載、串口調(diào)試是公用同一部分電路和同一個(gè)串口的。因此,F(xiàn)lash M

12、agic和串口調(diào)試軟件不能同時(shí)啟動(dòng),否則將出錯(cuò),請(qǐng)?jiān)谙螺d完程序后關(guān)閉Flash Magic軟件再啟動(dòng)串口調(diào)試軟件。由于串口一直以來(lái)都是各種計(jì)算機(jī)系統(tǒng)所提供的一個(gè)標(biāo)準(zhǔn)接口,因此串口中的調(diào)試軟件在網(wǎng)上隨處可見,當(dāng)然你若有興趣也可自己設(shè)計(jì)一款串口調(diào)試軟件。在這里我們采用的是一個(gè)名為串口調(diào)試器,英文名COMPort Debuger的軟件,比較好用,并且具有大批量數(shù)據(jù)的自動(dòng)保存功能,這個(gè)功能很重要。該軟件啟動(dòng)后的界面如圖8所示。    在發(fā)送區(qū)和接收區(qū)中顯示有軟件作者的網(wǎng)站,大家可以去那里下載最新版。在用戶板程序運(yùn)行并對(duì)串口調(diào)試設(shè)置好后即可點(diǎn)“打開串口”,此時(shí)在接收區(qū)將顯示通過(guò)串口發(fā)來(lái)的各

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論