勇敢芯伴你玩轉(zhuǎn)xilinx fpga6_第1頁
勇敢芯伴你玩轉(zhuǎn)xilinx fpga6_第2頁
勇敢芯伴你玩轉(zhuǎn)xilinx fpga6_第3頁
勇敢芯伴你玩轉(zhuǎn)xilinx fpga6_第4頁
勇敢芯伴你玩轉(zhuǎn)xilinx fpga6_第5頁
已閱讀5頁,還剩19頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第六章基于板級(jí)調(diào)試的第二個(gè)工程實(shí)例《勇敢的芯伴你玩轉(zhuǎn)XilinxFPGA》6.1PWM蜂鳴器驅(qū)動(dòng)之功能概述6.2PWM蜂鳴器驅(qū)動(dòng)之引腳分配6.3PWM蜂鳴器驅(qū)動(dòng)之綜合、實(shí)現(xiàn)與配置文件產(chǎn)生6.4PWM蜂鳴器驅(qū)動(dòng)之FPGA在線下載配置6.5PWM蜂鳴器驅(qū)動(dòng)之FPGA配置芯片固化6.6PWM蜂鳴器驅(qū)動(dòng)之復(fù)位與FPGA重配置功能PWM信號(hào)蜂鳴器是一種最簡(jiǎn)單的發(fā)聲元器件,它的應(yīng)用也非常廣泛,大都是作為報(bào)警或發(fā)聲提醒裝置。PWM即脈沖寬度調(diào)制,PWM的輸出只有高電平1和低電平0。PWM不停的重復(fù)輸出周期為T,其中高電平1時(shí)間為t的脈沖,t/T是它的占空比,1/T是它的頻率。蜂鳴器電路蜂鳴器與PWM發(fā)聲映射BEEP網(wǎng)絡(luò)連接到FPGA的IO上,當(dāng)BEEP=1時(shí),三極管Q1的BE導(dǎo)通,則CE也導(dǎo)通,那么U4的2端直接接地,因此在它兩端有5V的電壓,那么蜂鳴器就發(fā)聲了。同理,BEEP=0時(shí),Q1截止,U4的2端相當(dāng)于開路,則蜂鳴器不會(huì)發(fā)出聲音?;诜澍Q器在FPGA的IO輸出1就發(fā)聲、0則不發(fā)聲的原理,我們給IO口一個(gè)占空比為50%的PWM的信號(hào),讓蜂鳴器間歇性的發(fā)聲鳴叫。如果它的頻率高則發(fā)聲就顯得相對(duì)尖銳急促一些,如果它的發(fā)聲頻率低則發(fā)聲就顯得低沉平緩一些。我們期望產(chǎn)生一個(gè)輸出頻率為25Hz(40ms)、占空比為50%的PWM信號(hào)去驅(qū)動(dòng)蜂鳴器的發(fā)聲。因此,我們使用系統(tǒng)時(shí)鐘25MHz(40ns)進(jìn)行計(jì)數(shù),每計(jì)數(shù)1,000,000次,這個(gè)計(jì)數(shù)器就清零重新計(jì)算。此外,為了得到輸出的PWM占空比為50%,那么我們只要判斷計(jì)數(shù)值小于最大計(jì)數(shù)值的一半即500000時(shí),輸出高電平1,反之輸出低電平0。復(fù)制sp6ex1整個(gè)文件夾,將其更名為sp6ex2。然后我們打開“…\sp6ex2\source_code”文件夾下的sp6.v源代碼文件。刪除sp6.v文件原有的代碼,將上一個(gè)lesson的源碼整個(gè)復(fù)制進(jìn)去。接著使用ISE打開剛剛移植好的sp6ex2文件夾下的工程。sp6ex2代碼工程移植這個(gè)例程的頂層源碼里有3個(gè)接口:這3個(gè)信號(hào)都是FPGA引腳上定義和外部設(shè)備連接的信號(hào),因此我們需要將這些信號(hào)和FPGA的引腳進(jìn)行映射。I/OPinPlanning菜單PlanAhead提示PlanAead引腳分配I/OPorts分配引腳原理圖映射除了使用PlanAead這種圖形界面方式分配引腳,也可以直接使用腳本語法分配引腳。下面先新建這個(gè)腳本文件,即ucf文件,我們前面在PlanAead界面分配的引腳信息也會(huì)存儲(chǔ)在這個(gè)ucf文件中。新建源文件新建ucf源文件名稱與路徑設(shè)置腳本直接引腳分配新建源文件Summary新建好的ucf文件腳本直接引腳分配ucf文件腳本“Processes”中出現(xiàn)了很多項(xiàng)目前面都是“?”,這是表示該工程代碼還未編譯過,這些步驟是從上到下依次進(jìn)行的,若我們雙擊某一步,它上面的步驟都會(huì)相應(yīng)的執(zhí)行。大體上來說,ISE中把FPGA的編譯分為3個(gè)步驟,即綜合(Synthesize)、實(shí)現(xiàn)(Implementation)和配置文件產(chǎn)生(GenerateProgrammingFile)。Design視窗綜合編譯綜合成功成功生成燒錄文件

iMPACT菜單警告窗口開啟iMPACTiMPACT界面啟動(dòng)BoundaryScan初始化下載線纜連接好XilinxPlatformUSBCable、同時(shí)給SF-SP6板子上電雙擊“iMPACTFlows”下面的“BoundaryScan”。InitializeChain菜單白色界面任意右擊

IdentifySucceeded初始化下載線纜接著,我們選擇sp6ex2工程文件夾下的sp6.bit文件。選擇bit文件PROM添加選擇選擇它配置文件選擇目標(biāo)FPGA器件Program菜單燒錄成功下載配置輸出波形我們?nèi)羰褂檬静ㄆ鳒y(cè)量FPGA輸出用于驅(qū)動(dòng)蜂鳴器的三極管的IO,那么波形是標(biāo)準(zhǔn)的25Hz方波。此時(shí),蜂鳴器也開始非常清脆的滴滴滴響起來了~CreatePROMFile菜單選擇存儲(chǔ)器類型PROM燒錄文件生成添加存儲(chǔ)器設(shè)置存儲(chǔ)器容量設(shè)置mcs文件生成路徑增加器件PROM燒錄文件生成選擇bit文件增加另一個(gè)器件器件器件完成生成mcs文件PROM燒錄文件生成成功生成mcs文件增加SPIFlash固化PROM選擇mcs文件設(shè)置SPIFlash型號(hào)FLASH圖標(biāo)固化PROMProgram菜單

器件燒錄屬性窗口燒錄成功我們需要給SF-SP6開發(fā)板斷電,然后再上電我們就能聽到清脆的滴滴滴的蜂鳴器響聲復(fù)位功能復(fù)位電路C23和R27組成的阻容復(fù)位電路保證FPGA上電后,RST_N信號(hào)從0到1上升有一些延時(shí),最終保持在穩(wěn)定的3.3V高電平。而S1按鍵若被按下,則RST_N信號(hào)的電平值就會(huì)被拉低,那么我們?cè)谠O(shè)計(jì)中就會(huì)讓系統(tǒng)再次進(jìn)入復(fù)位狀態(tài)。復(fù)位按鍵在線重配置功能FPGA重配置按鍵FPGA的在線燒錄金額FPGA配置PROM的固化兩種情況下,按下重配置按鍵后的效果是不同的。在線燒錄時(shí),若按下并松開CONFIG按鍵,則FPGA原有的代碼丟失;而PROM固化后,若按下并松開CONFIG按鍵,則FPGA仍然能夠正常運(yùn)行原有的代碼。F_PROG信號(hào)在正常情況下是高電平,當(dāng)按鍵按下后,則被拉低,F(xiàn)PGA就進(jìn)入沖配置狀態(tài),松開后,F(xiàn)PGA將重新配置。重配置按鍵電路配置狀態(tài)指示燈狀態(tài)指示燈D1在前面按

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論