




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、中國礦業(yè)大學(xué)徐海學(xué)院專業(yè)技能考核培訓(xùn)設(shè)計(jì)報(bào)告姓 名:學(xué) 號(hào):專 業(yè):電子科學(xué)與技術(shù)設(shè)計(jì)題目:遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)專 題:基于CPLD/FPGA的電壓數(shù)據(jù)采集指導(dǎo)教師:設(shè)計(jì)地點(diǎn): 時(shí) 間:201305062013年5月CPLD課程設(shè)計(jì)任務(wù)書專業(yè)年級(jí)_學(xué)號(hào)學(xué)生姓名任務(wù)下達(dá)日期:2013年5月6日設(shè)計(jì)日期: 2013年5月6日至2013年5月20日設(shè)計(jì)題目:基于PC MCI和CPLD/FPG的遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)設(shè)計(jì)專題題目: 基于CPLD/FPG的電壓數(shù)據(jù)采集設(shè)計(jì)主要內(nèi)容和要求:利用上位計(jì)算機(jī)、單片機(jī)、可編程邏輯器件和 ADCS件構(gòu)成一個(gè)遠(yuǎn)程數(shù) 據(jù)采集系統(tǒng),系統(tǒng)具備遠(yuǎn)程/就地兩種控制模式,具有 8
2、通道循環(huán)采集和指 定通道采集兩種數(shù)據(jù)采集方式。具體要求如下:1. CPLD/FPGA硬件電路和AHDL控制軟件設(shè)計(jì)電路具備控制ADC0809勺采集功能,具備6位數(shù)碼管動(dòng)態(tài)掃描功能,具 備8位按鍵輸入功能,具備和單片機(jī)信號(hào)交換功能。2. 單片機(jī)硬件電路和監(jiān)控軟件設(shè)計(jì)電路具備和CPLD/FPG交換信息,以及和上位機(jī)算計(jì)進(jìn)行 RS232的通訊 功能,能將上位機(jī)發(fā)出的控制指令下達(dá)到 CPLD/FPG中,并將采集的數(shù)據(jù)傳 送到上位計(jì)算機(jī)中。3單片機(jī)程序要求用C51編制。上位機(jī)算計(jì)軟件設(shè)計(jì)利用VB或VC程序編制上位計(jì)算機(jī)控制程序,實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)采集功能并 實(shí)時(shí)顯示采集的數(shù)據(jù)和通道號(hào)。指導(dǎo)教師簽字:摘要隨著科
3、學(xué)技術(shù)的迅猛發(fā)展,新技術(shù)革命將把人類由工業(yè)化社會(huì)推進(jìn)到信 息化社會(huì)為主要內(nèi)容的數(shù)據(jù)采集測(cè)試技術(shù),已形成了一門專門的技術(shù)科學(xué)。 數(shù)據(jù)采集系統(tǒng)是計(jì)算機(jī)、智能儀器與外界物理世界聯(lián)系的橋梁,是獲取信息 的重要途徑。數(shù)據(jù)采集技術(shù)是信息科學(xué)的重要分支,它不僅應(yīng)用在智能儀器 中,而且在現(xiàn)代工業(yè)生產(chǎn)、國防軍事及科學(xué)研究等方面都得到了廣泛應(yīng)用, 無論是過程控制、狀態(tài)檢測(cè),還是故障診斷、質(zhì)量檢測(cè),都離不開數(shù)據(jù)采集 系統(tǒng)。本文介紹一種基于 EP1K30TC144-3勺CPLD/FPG和89S52單片機(jī)的一種電壓測(cè)量電路,基本內(nèi)容包括單片機(jī)最小系統(tǒng)、AD轉(zhuǎn)換電路、鍵盤和 LED顯示電路,以及設(shè)計(jì)系統(tǒng)涉及的其他電路。系
4、統(tǒng)硬件電路由標(biāo)準(zhǔn)電路和自制 電路兩部分組成。標(biāo)準(zhǔn)電路包括單片機(jī)最小系統(tǒng)、6個(gè)LED數(shù)碼管電路和鍵盤電路以及CPLD/FPGA系統(tǒng),這部分電路已制成電路板,自制電路自行設(shè)計(jì) 焊接,包含標(biāo)準(zhǔn)電路不具備的其他電路。系統(tǒng)軟件根據(jù)設(shè)計(jì)任務(wù)自行設(shè)計(jì)獨(dú) 立編制并進(jìn)行調(diào)試,最終實(shí)現(xiàn)利用上位機(jī)遠(yuǎn)程控制系統(tǒng)進(jìn)行數(shù)據(jù)采集功能并 實(shí)時(shí)顯示采集的數(shù)據(jù)和通道號(hào)。關(guān)鍵詞:89S52單片機(jī)、EP1K30TC144-3芯片、CPLD/FPGA上位機(jī)、電壓采 集、AD轉(zhuǎn)換電路1緒論 11.1課程簡介11.1.1課程設(shè)計(jì)的性質(zhì)、目的和任務(wù) 11.2系統(tǒng)設(shè)計(jì)思路11.3方案論證及比較21.3.1單片機(jī)控制方案的選用 21.3.2 F
5、PGA控制方案的選用 21.4系統(tǒng)設(shè)計(jì)原理框圖32硬件電路設(shè)計(jì)42.1單片機(jī)電路 42.1.1單片機(jī)電路板 42.1.2單片機(jī)最小系統(tǒng) 52.1.3顯示譯碼電路 52.2 A/D 轉(zhuǎn)換72.2.1 ADC0809 內(nèi)部結(jié)構(gòu)72.2.2 ADC0809 轉(zhuǎn)換原理82.2.3 AD轉(zhuǎn)換電路92.2.4電路設(shè)計(jì)92.3硬件設(shè)計(jì)流程102.3.1硬件設(shè)計(jì)流程圖 102.3.2 CPLD系統(tǒng)流程框圖 112.3.3詳細(xì)管腳說明 113軟件設(shè)計(jì)133.1設(shè)計(jì)任務(wù) 1 33.1.1基本任務(wù)133.1.2擴(kuò)展任務(wù)133.2程序設(shè)計(jì)133.2.1軟件設(shè)計(jì)流程 133.2.2單片機(jī)設(shè)計(jì)流圖 143.2.3 BCD
6、碼轉(zhuǎn)換電路與顯示電路設(shè)計(jì)程序:143.2.4八位二進(jìn)制乘法器 173.2.5用上位機(jī)和撥碼開關(guān)控制8路通道選擇: 173.2.6單片機(jī)與 PC機(jī)通訊程序 194系統(tǒng)調(diào)試 214.1 硬件部分214.2 軟件部分215總結(jié)23參考文獻(xiàn): 24附錄二ADC0809與單片機(jī)連接圖 26附錄三元器件清單27附錄四程序代碼28徐海學(xué)院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第3頁1緒論1.1課程簡介1.1.1課程設(shè)計(jì)的性質(zhì)、目的和任務(wù)單片機(jī)系統(tǒng)設(shè)計(jì)是在學(xué)習(xí)單片機(jī)原理及應(yīng)用、CPLD等相關(guān)理 論課程之后,所設(shè)置的重要的綜合性實(shí)踐教學(xué)環(huán)節(jié)。此次技能考核的目的是通過課題的設(shè)計(jì)、安裝和調(diào)試,使我們?nèi)媪私?掌握電子技術(shù)應(yīng)用
7、設(shè)計(jì)的基本技能,鞏固已學(xué)的理論知識(shí)并綜合應(yīng)用,進(jìn)行 電子系統(tǒng)的設(shè)計(jì),從而培養(yǎng)工程實(shí)踐能力、創(chuàng)新能力,培養(yǎng)嚴(yán)肅認(rèn)真的工作 作風(fēng)和科學(xué)態(tài)度,具備簡單科技論文、技術(shù)綜述報(bào)告的寫作能力等。通過查閱資料、選定方案、設(shè)計(jì)電路、安裝調(diào)試、寫技術(shù)報(bào)告等過程, 得到一次科學(xué)研究工作的啟蒙訓(xùn)練, 也為以后利用單片機(jī)開發(fā)電子產(chǎn)品奠定 堅(jiān)實(shí)的基礎(chǔ)。在對(duì)遠(yuǎn)程數(shù)據(jù)采集裝置進(jìn)行設(shè)計(jì)時(shí),其設(shè)計(jì)分為硬件設(shè)計(jì)與軟件設(shè)計(jì)兩 部分,具體的設(shè)計(jì)流程如圖:圖1-1設(shè)計(jì)流程圖1.2系統(tǒng)設(shè)計(jì)思路本次實(shí)驗(yàn)要求設(shè)計(jì)基于單片機(jī)的電壓數(shù)據(jù)采集裝置,課程設(shè)計(jì)分設(shè)計(jì)、 制作和調(diào)試三個(gè)部分。設(shè)計(jì)選題以單片機(jī)、AD0809為核心,基本內(nèi)容應(yīng)包括 單片機(jī)最小
8、系統(tǒng)、CPLD系統(tǒng)、鍵盤(撥碼開關(guān))和LED顯示電路,以及設(shè)計(jì) 系統(tǒng)涉及的其他電路。系統(tǒng)硬件電路由單片機(jī)系統(tǒng)和 CPLD系統(tǒng)兩部分組成。其中單片機(jī)系統(tǒng) 包括單片機(jī)最小系統(tǒng)、8個(gè)LED數(shù)碼管電路和鍵盤電路,可根據(jù)設(shè)計(jì)需要進(jìn) 行配置選用。CPLDS統(tǒng)則需自行設(shè)計(jì)焊接,包含 EP1K30TC14芯片。設(shè)計(jì)中采用了模數(shù)轉(zhuǎn)換器,利用 ADC0809型8位MOS型A/D轉(zhuǎn)換器,可 實(shí)現(xiàn)8路模擬信號(hào)的分時(shí)采集,片內(nèi)有8路模擬選通開關(guān),以及相應(yīng)的通道 地址鎖存用譯碼電路,實(shí)現(xiàn)模擬信號(hào)到數(shù)字信號(hào)的轉(zhuǎn)換。顯示部分利用LED數(shù)碼管顯示模塊,來顯示采集到的電壓分量。1.3方案論證及比較1.3.1單片機(jī)控制方案的選用方
9、案一:采用8031為核心,由于其內(nèi)部沒有存儲(chǔ)器,所以利用 2764擴(kuò) 展8KB的外部存儲(chǔ)器,用8031的兩組I/O接口。方案二:采用AT89C52作為核心,對(duì)AD轉(zhuǎn)換的數(shù)據(jù)進(jìn)行采集并顯示。其內(nèi)置的8KB字節(jié)點(diǎn)擦除可編程EEPRO片內(nèi)程序存儲(chǔ)器和256字節(jié)RAM無 需外部擴(kuò)展。所以選用方案二,采用AT89C52作為核心,其片內(nèi)程序存儲(chǔ)器空間足夠 滿足本系統(tǒng)程序存儲(chǔ)器的需要,可以省去對(duì)片外EPRO程序存儲(chǔ)器和地址鎖 存器,使電路結(jié)構(gòu)簡捷。1.3.2 FPGA控制方案的選用方案一:采用EP1K30TC144-3為核心,具備6位數(shù)碼管動(dòng)態(tài)掃描功能和8 位按鍵輸入功能,以及與單片機(jī)進(jìn)行信號(hào)交換等功能。方
10、案二:采用EP1K30TC144-3為核心,同樣具備6位數(shù)碼管動(dòng)態(tài)掃描功 能和8位按鍵輸入功能,以及與單片機(jī)進(jìn)行信號(hào)交換等功能。且管腳數(shù)目較 少,適合本次設(shè)計(jì)使用。所以選用方案二,采用 EP1K30TC144-3為核心,其功能已經(jīng)滿足設(shè)計(jì)需 要,且應(yīng)用簡單,管腳分配方便,使電路結(jié)構(gòu)簡潔。1.4系統(tǒng)設(shè)計(jì)原理框圖ADC0809圖1-2系統(tǒng)設(shè)計(jì)原理框圖2硬件電路設(shè)計(jì)系統(tǒng)硬件電路由單片機(jī)系統(tǒng)和 CPLD系統(tǒng)兩部分組成。其中單片機(jī)系統(tǒng) 包括單片機(jī)最小系統(tǒng)、8個(gè)LED數(shù)碼管電路和鍵盤電路,可根據(jù)設(shè)計(jì)需要進(jìn) 行配置選用。CPLD系統(tǒng)則需自行設(shè)計(jì)焊接,包含 EP1K30TC14芯片。2.1單片機(jī)電路2.1.1
11、單片機(jī)電路板單片機(jī)電路板電路框圖如圖2;復(fù)位pi數(shù)碼管顯示電路電路>日塩電路日日脈J電路按鍵電路圖2-1電路框圖徐海學(xué)院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第4頁2.1.2單片機(jī)最小系統(tǒng)JXIAL 2kST f兀F中 TSTIALE15-CZlOD i Ji, jzr>Jj1J JjTiJi. irr<* i->-?rr i1vs汙他 ixaji a itiAAh 二 他“小:他"5*F L<-/i*2 *1.1 ZTMIlX Fi.iF3-51*1 jF3.<.* no為pjr 1*2石>2口'22 CVJuf二 W 12円;叩徐海學(xué)院20
12、10級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第#頁徐海學(xué)院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第6頁圖2-2單片機(jī)最小系統(tǒng)圖該原理圖包含單片機(jī)以及外部連接譯碼,鎖存電路端口,其中的ALE,REST為高電平時(shí)用來啟動(dòng) ADC0809.P0 P2 口控制數(shù)碼輸出顯示,P3 口 的P3.3、P3.4、P3.5控制按鍵,P1.1P1.3控制通道選擇。晶振采用12MHZ該頻率有利于提高串口的通信可靠性,同時(shí)又保證單 片機(jī)有較高的運(yùn)行速度。2.1.3顯示譯碼電路LED顯示電路可提供8位LED顯示;可顯示P1(P3) 口狀態(tài);也可顯示 輸入按鍵狀態(tài)。 圖2-3 LED顯示電路顯示電路采用6位共陽極LED動(dòng)態(tài)掃描顯示,CD4511輸出所
13、需字形, 74LS138選擇字位。在動(dòng)態(tài)方式中,逐個(gè)地循環(huán)地點(diǎn)亮各位顯示器。1» 亠T8ktit)-:丁二T HII - 1-十1亠 * - - «- T ! 十'十 llll llE日.日.s.BL日日H.rI11 IIrD5D43gD|一 I心邛圖2-4數(shù)碼管顯示電路顯示譯碼電路部分由P0 口或P2 口輸出顯示。顯示譯碼器采用CD4511芯片:輸入:BCD 輸出:七段碼74LS138芯片是用來控制顯示時(shí)候的字位的,由于單片機(jī)的管腳是有限 的通過使用138芯片可以避免少使用些單片機(jī)的管腳,當(dāng)輸入 001時(shí),譯碼 可得10111111:輸入:07 輸出:低電平徐海學(xué)
14、院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第7頁徐海學(xué)院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第8頁2.2 A/D轉(zhuǎn)換2.2.1 ADC0809內(nèi)部結(jié)構(gòu)ADC080S由8路模擬開關(guān)、地址鎖存與譯碼器、比較器、256電阻階梯、樹狀開關(guān)、逐次逼近式寄存器SAR控制電路和三態(tài)輸出鎖存器等組成。啟動(dòng)(高電平脈沖,輸入)”褒換結(jié)束丄=1輸吐)_匚vGNDVukjI+i 畑卜(a)500KHz1MHz .INCINIIN 2IN3!N4iN5地址譯碼地址鎖存, 輸入信號(hào)8掘T三態(tài)A/D輸出轉(zhuǎn)報(bào)橋怪沖器IMl1N4IN51M6IN?STARTEOC D3 OE CLOCKVcr Vsi-jX*JGND1*27一;3曲425;-2
15、467ADC8CH1S219貫)in涉IS1111271 '16-°M15輸出允許(=1擷入信號(hào)圖2-5 ADC080結(jié)構(gòu)圖IN丄INIINOADDA ADDS ADDC A Lt:D7LM)D5mDO徐海學(xué)院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第11頁222 ADC0809轉(zhuǎn)換原理ADOAAD 地址 y< 亠亠*4小一廣圖2-6 ADC0809轉(zhuǎn)換工作時(shí)序工作原理:當(dāng)單片機(jī)端的P3.3接低電平時(shí),可以使兩個(gè)非門打開(1)當(dāng)模擬量送至某一輸入通道后,CPU各標(biāo)識(shí)該通道編碼的三位地址 信號(hào)經(jīng)數(shù)據(jù)線或地址線輸入到 ADDC ADDB ADDA引腳上。(2)地址鎖存允許ALE鎖存地址
16、信號(hào),啟動(dòng)命令 START啟動(dòng)A/D轉(zhuǎn)換。(3)轉(zhuǎn)換開始,EOC變低電平,轉(zhuǎn)換結(jié)束,EOC變?yōu)楦唠娖?。EO(可作為 中斷請(qǐng)求信旦(4)轉(zhuǎn)換結(jié)束后,可通過執(zhí)行IN指令,設(shè)法在輸出允許 OE腳上形成 一個(gè)正脈沖,打開三態(tài)緩沖器把轉(zhuǎn)換的結(jié)果輸入到 DB 一次A/D轉(zhuǎn)換便完成。223 AD轉(zhuǎn)換電路IND,通迪0蔘君電壓:5V賊時(shí)鐘:接單片機(jī)ALE輸出 經(jīng)分頻后鈕_輸出數(shù)據(jù)轉(zhuǎn)換結(jié)束:EOC = 1OBO*1SE11UBbo*iUKJ342K4ECZIMAllEUUST MJ5C1£KX'ccoeo 7輸出便能信號(hào)/RDrt/VR啟動(dòng)和地址鎖存信號(hào)/INTO片選信號(hào):P3,3=045 s
17、»»»ItiIHQIM15IKM1TQT7A*Al fnM通道地址信號(hào)圖2-7 AD轉(zhuǎn)換電路原理圖2.2.4電路設(shè)計(jì)硬件資源分配數(shù)碼管顯示電路:用 P2 口: bed碼輸出P2.3P2.0 ;字位選擇 cba=P2.6P2.4 ;小數(shù)點(diǎn)P2.7鍵盤電路:P3 口低四位1號(hào)按鍵P3.0-模式切換2號(hào)按鍵P3.1-通道、報(bào)警限加3號(hào)按鍵P3.2-通道、報(bào)警限減4號(hào)按鍵P3.3-查詢法,接收ad轉(zhuǎn)換狀態(tài)(不作為按鍵使用)中斷法,收ad結(jié)束中斷信號(hào)ADC0809電壓轉(zhuǎn)換電路控制信號(hào):/wr=p3.6/rd=p3.7eoc= p3.3 Cs= p3.5轉(zhuǎn)換通道選擇地址線:C
18、BA =P1(6-4)2.3硬件設(shè)計(jì)流程2.3.1硬件設(shè)計(jì)流程圖VCCGND電源 撥碼開關(guān)_* 5位數(shù)碼管圖2-8硬件設(shè)計(jì)框圖徐海學(xué)院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第15頁2.3.2 CPLD系統(tǒng)流程框圖晶據(jù)-FI町USB弗2接口ADC0E09下我板隹鎖可訓(xùn)信號(hào)P78,gjlJ1.JXW3W22 11E4hbU?-PS0單片機(jī)接口 輔入開關(guān),耐:沖幵并披指示燈圖2-9 CPLD系統(tǒng)功能模塊框圖2.3.3詳細(xì)管腳說明(1)時(shí)鐘源P183引腳P78引腳P80引腳40MHZ1HZ1MHZ(由短路夾J1 和J2來調(diào)節(jié))22.1184MHZ圖2-10時(shí)鐘源與CPLD對(duì)應(yīng)管腳連接圖(2)輸入開關(guān)SW1SW2
19、SW3SW4SW5SW6SW7SW8P94P95P96P97P99P100P101P102SW9SW10SW11SW12SW13SW14SW15SW16P103P104P111P112P113P114P115P116圖2-11 16個(gè)數(shù)據(jù)開關(guān)與CPLD寸應(yīng)管腳連接圖(3) 數(shù)碼管顯示實(shí)驗(yàn)箱有1 0個(gè)數(shù)碼管(SEG SEG10,采用共陰極8段LED顯示。 其中SEG1SEG2采用靜態(tài)顯示方式,SEG3SEG10采用動(dòng)態(tài)掃描顯示方 式。且SEG1 SEG2的8段LED顯示輸入端分別與8個(gè)LED管相連同時(shí)顯示。數(shù)碼管名abcdeFgPSEpipiP1pipipipiP1G14243444748495
20、057SEP1P1P1P1P1P1P1P1<32585960ei626466SEP1P1P1piP1P1P1P1<33 -67576777980863789SEP1P1P1P1P1P2P2P2G7109596979399OO0203圖2-12數(shù)碼管管腳分配圖徐海學(xué)院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第16頁3軟件設(shè)計(jì)3.1設(shè)計(jì)任務(wù)3.1.1基本任務(wù)(1)、進(jìn)行電壓采集并顯示3.1.2擴(kuò)展任務(wù)(1) 、指定通道采集(2) 、循環(huán)采集顯示,默認(rèn)每通道顯示1秒鐘3.2程序設(shè)計(jì)3.2.1軟件設(shè)計(jì)流程CPLD檢:冠括AD轉(zhuǎn)按模決(包括上垃機(jī)控需)8路通道選擇).乘法器模塊、BCD轉(zhuǎn)換極MCU |動(dòng)
21、態(tài)打描顯示模塊"徐海學(xué)院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第17頁徐海學(xué)院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第#頁圖3-1軟件設(shè)計(jì)流程框圖徐海學(xué)院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第24頁3.2.2單片機(jī)設(shè)計(jì)流圖圖3-2單片機(jī)設(shè)計(jì)與AD0809設(shè)計(jì)流程圖3.2.3 BCD碼轉(zhuǎn)換電路與顯示電路設(shè)計(jì)程序:Subdesig n dcbzhhh-定義輸入輸出管腳(ibd15.0,i nclk :in put;odd6.0, p,bitout4.0 :output;)Variable-定義觸發(fā)器mh3.0,mm3.0,mw3.0, mr3.0,ml3.0:dff;mrd15.0,sta1.0,stb2.0,ms
22、eg3.0,bitout4.0,fpq15.0,fp :dff; mhr3.0,mmr3.0,mwr3.0,mrr3.0, mlr3.0 :dff;Beg inp=vcc;-點(diǎn)亮小數(shù)點(diǎn)(fpq,fp).clk=i nclk;-分頻If fpq=19999 thenfp=!fp;fpq=0;Elsefp=fp;fpq=fpq+1;End if;給觸sta.clk=fp;stb.clk=fp;bitout.clk=fp;mseg.clk=fp;- 發(fā)器輸入時(shí)鐘(mh,mm,mw,mr,ml,mrd).clk=i nclk;碼轉(zhuǎn)換(mhr,mmr,mwr,mrr,mlr).clk=i nclk;Ca
23、se sta is-BCDWhen 0 =>mrd=ibd;sta=1;mhr=mhr;mmr=mmr;mwr=mwr;mrr=mrr;mlr=mlr;When 1 =>If mrd=0 the n mhr=mh;mmr=mm;mwr=mw;mrr=mr;mlr=ml; mh=mh;mm=mm;mw=mw;mr=mr; ml=ml;sta=0;Else mhr=mh;mmr=mm;mwr=mw;mrr=mr;mlr=ml;mrd=mrd-1;sta=1;If ml=9 the n ml=0;If mr=9 the n mr=0;If mw=9 the n mw=0;If mm=9
24、the n mm=0; If mh=9 then mh=0;Elsemh=mh+1;End if;Elsemm=mm+1;mh=mh;End if;Elsemw=mw+1;mm=mm;mh=mh;End if;Elsemr=mr+1;mw=mw;mm=mm;mh=mh;End if;Elseml=ml+1;mr=mr;mw=mw;mm=mm;mh=mh;End if;End case; case stb is whe n 0=>End if;-隱含狀態(tài)機(jī)的使用 動(dòng)態(tài)掃描顯示電路mseg=mlr;bitout=1;stb=1;when 1=>mseg=mrr;bitout=2;stb
25、=2;whe n 2=>mseg=mwr;bitout=4;stb=3;whe n 3=>mseg=mmr;bitout=8;stb=4;whe n 4=>mseg=mhr;bitout=16;stb=0;end case;Tablemseg3.0=>odd6.0;h"0"=>h"3f"-“ 0111111”h"1"=>h"06"h"2"=>h"5b"h"3"=>h"4f"h"4
26、“=>h"66"h"5“=>h"6d"h"6“=>h"7d"h"7"=>h"07"h"8“=>h"7f"h"9"=>h"6f"end table;End;324八位二進(jìn)制乘法器FUNCTION lpm_mult (dataa7.0, datab7.0,sum7.0)-設(shè)置乘法器參數(shù)WITH (LPM_WIDTHA=8, LPM_WIDTHB=8 ,L PM_WIDTHP=
27、16,LPM_WIDTHS=16,INPUT_A_IS_CONSTANT=" no",INPUT_B_IS_CONSTANT=" no ”,USE_EAB="off", LPM_REPRESENTATION="u nsig ned")RETURNS (result15.0);Subdesign multt-定義輸入輸出管腳(daa7.0,dab7.0:i nput;res15.0:output;)Variable-實(shí)現(xiàn)乘法器功能multa :lpm_mult;Begi nmulta.sum=g nd;multa.dataa=
28、daa;multa.datab=dab;res=multa.result;En d;3.2.5用上位機(jī)和撥碼開關(guān)控制8路通道選擇:Include dcbzhhh.inc ”;-調(diào)用BCD轉(zhuǎn)換和顯示模塊Include multt.inc ”;-調(diào)用乘法器模塊Subdesign sjcjjj-定義輸入輸出管腳(inclk,eoc,ds7.0 ,tdxuanze2.0,fsxuanze,bomakg2.0:input;add2.0,otclk,out6.0,st,oe,led7.0,p,wx4.0:output;)Variablezhq:dcbzhhh;cfq:multt;fpq4.0,fp,out
29、d :dff;-定義 D 觸發(fā)器sm1.0,dp7.0,st,outdd20.0:dff;Begi noe=vcc;(fpq,fp,outdd,outd).clk=i nclk;zhq.i nclk=in clk;If fpq=19 the n-分頻fpq=0;fp=!fp;Elsefpq=fpq+1;fp=fp;End if;if outdd=999999 thenoutdd=0;outd=!outd;elseoutdd=outd d+1;outd=outd;end if;(sm,st,dp).clk=fp;otclk=fp;if fsxua nze=0 the n-選擇通道方式add=td
30、xua nze;elseadd=bomakg;end if;Case sm is -實(shí)現(xiàn)ADC轉(zhuǎn)換功能When 0 =>st=g nd;dp=ds;sm=1;When 1 =>st=g nd; dp=dp;if eoc the nsm=2;elsesm=1;end if;When 2=>st=vcc; sm=0; dp=ds;End case;cfq.daa=196;-將采集的二進(jìn)制數(shù)據(jù)轉(zhuǎn)化為十進(jìn)制數(shù)據(jù)cfq.dab=dp;zhq.ibd=cfq.res;wx=zhq.bitout;p=zhq.p;out6.0=zhq.od d;led=dp;En d;326單片機(jī)與PC機(jī)通
31、訊程序#in clude<reg52.h>#defi ne uchar un sig ned char#defi ne uint un sig ned intuchar r;void in it();void mai n()/ 主程序ini t();while(1) /while()死循環(huán)/*串口中斷服務(wù)程序*/void ser() in terrupt 4RI = 0;清除串行接收中斷申請(qǐng)位r = SBUF; 接收上位機(jī)數(shù)據(jù)P2 = r ;將數(shù)據(jù)送給P2 口r = P0;SBUF=r;發(fā)送P0數(shù)據(jù)給上位機(jī)while(TI=0); /當(dāng)TI=1時(shí),完成發(fā)送,向CPU申請(qǐng)中斷TI =
32、 0;關(guān)閉串口中斷/*串口初始化*/void in it()r = 0xff;/將P0 口置高電平TMOD= 0x20; / 寫控制字 20HTH1 = 0x98;/T1 高 4 位賦初值 98HTL1 = 0x98;/T1 低 4 位賦初值 98HTR1 = 1;/啟動(dòng)定時(shí)器T1,從而設(shè)定串口通信的波特率SM0 = 0;SM1 = 1;/設(shè)定串口通信方式為十位異步收發(fā)器(方式1)REN = 1;/打開串口通訊,允許接收ES = 1;開放串口中斷EA = 1;/開放CPU中斷徐海學(xué)院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第26頁4系統(tǒng)調(diào)試系統(tǒng)調(diào)試包括硬件調(diào)試和軟件調(diào)試兩部分,介紹一下我在這兩方面遇到 一
33、些問題,以及如何解決的。4.1硬件部分硬件焊接分為EP1K30TC14貼片式芯片小板的焊接和CPL開發(fā)板及CPLD 擴(kuò)展板的焊接,在焊接EP1K30TC144寸,由于拖錫技術(shù)應(yīng)用的不是很嫻熟, 所以導(dǎo)致芯片的焊接出現(xiàn)管腳短路的情況。其次就是焊接CPLDT展板時(shí),由于AD0809芯片與電位器是管腳連接出錯(cuò),即開始時(shí)電位器的管腳定義出 錯(cuò),導(dǎo)致調(diào)節(jié)電位器旋鈕時(shí)數(shù)碼管顯示的數(shù)值不發(fā)生變化,經(jīng)萬用表檢測(cè), 發(fā)現(xiàn)焊接問題之后及時(shí)糾正便實(shí)現(xiàn)了功能。4.2軟件部分(1)CPLD(AD乘法器)模塊程序:將AD轉(zhuǎn)換的輸出結(jié)果轉(zhuǎn)換為電壓值,即乘以196得到的數(shù)據(jù),此時(shí)要擴(kuò)展輸入輸出端口的長度。255*196=49
34、980需要5個(gè)數(shù)碼管,其中4個(gè)只需要 7段,最高一個(gè)數(shù)碼管需要8段,多添加了一個(gè)小數(shù)點(diǎn),只需要在輸出端定 義一個(gè)變量,然后在管腳分配時(shí)分給小數(shù)點(diǎn)即可(取名為dcbzhh)。但由于實(shí)驗(yàn)程序名為dcbzhh(輸入管腳p表示小數(shù)點(diǎn),fpq和fp都表示分頻)的程 序中引用數(shù)碼管是調(diào)用了五個(gè),其中有兩個(gè)是靜態(tài)掃描,另三個(gè)是動(dòng)態(tài)掃描。 而使用靜態(tài)掃描下載程序時(shí)在 CPLD板上會(huì)出現(xiàn)錯(cuò)誤。所以設(shè)計(jì)時(shí)全部用動(dòng) 態(tài)掃描數(shù)碼管,并設(shè)置一個(gè)公共端!而動(dòng)態(tài)掃描時(shí)seg1seg6共用七段數(shù)碼管,所以定義輸出odd時(shí)只需要定義為odd6.0( 取名為dcbzhhh)。(2)單片機(jī)與CPLD實(shí)現(xiàn)通信的程序:輸出定義為out
35、6.0即一組5個(gè)動(dòng)態(tài)顯示數(shù)碼管。修改時(shí)在dcbzhhh里面將小數(shù)點(diǎn)定義在 case語句的字位碼描述語句中,即在最高位后面添加 一句p=vcc,而不用在begin語句里面定義p=vcc.同時(shí),在sjcjjj模塊里面調(diào)用dcbzhhh模塊時(shí),將輸出定義為out6.0,同時(shí)將AD轉(zhuǎn)換的輸出dp 連接到AD轉(zhuǎn)換的8通道輸出,同時(shí)連接到單片機(jī)的 P0 口,而單片機(jī)則通過 P2 口低3位連接到CPLD通道選擇端。最后將 dcbzhhh模塊的輸出接到 out6.0的輸出即可完成CPLD與單片機(jī)的通信,但是要注意重新對(duì)管腳進(jìn) 行分配。(3)軟件特色:在最終的CPLD模塊中調(diào)用了八位二進(jìn)制乘法器模塊程序,以及1
36、6位BCD轉(zhuǎn)換模塊和動(dòng)態(tài)掃描顯示模塊。即將乘法器模塊、BCD轉(zhuǎn)換模塊、動(dòng)態(tài)掃描 顯示模塊的文本編輯程序最終融入整合在CPLD模塊程序中,而沒有采用直 接調(diào)用乘法器圖形文件的方法。雖然這樣為程序調(diào)試帶來了很多麻煩,使整 體的程序設(shè)計(jì)顯得比較繁瑣,但是在我們小組成員的共同努力商討以及老師 的悉心指導(dǎo)下,最終我們程序調(diào)試成功,實(shí)現(xiàn)了相應(yīng)的功能!徐海學(xué)院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第27頁5總結(jié)這次單片機(jī)課程設(shè)計(jì)過后,讓我對(duì)單片機(jī)和CPLD這兩門課程有了更進(jìn)一 步的理解和感悟。經(jīng)過這次課程設(shè)計(jì),自己收獲很多,明白了團(tuán)隊(duì)合作的重 要性,更加深了自己對(duì) AD轉(zhuǎn)換以及單片機(jī)和PC機(jī)實(shí)現(xiàn)通訊的原理。更熟練 掌
37、握了 CPLDS言的編寫和使用Keil軟件編寫單片機(jī)程序?qū)崿F(xiàn)相應(yīng)電路功能 的技術(shù)與本領(lǐng)。其次,在硬件焊接時(shí),還需更加細(xì)心,防止虛焊、漏焊現(xiàn)象 的發(fā)生,并熟練學(xué)習(xí)應(yīng)用拖錫技術(shù)實(shí)現(xiàn)貼片式芯片的焊接。最后,衷心感謝在本次單片機(jī)技能考核設(shè)計(jì)中曾經(jīng)悉心幫助指導(dǎo)我們的 兩位老師以及熱心討論制作思想的同學(xué),最終在大家的共同努力下,本著團(tuán) 隊(duì)合作的精神,我們成功完成并實(shí)現(xiàn)了本次技能考核設(shè)計(jì)。徐海學(xué)院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第28頁參考文獻(xiàn):1 胡漢才,單片機(jī)原理及其接口技術(shù)(2版),清華大學(xué)出版社2 孫育才,MCS-51系列單片微型計(jì)算機(jī)及其應(yīng)用,東南大學(xué)出版社3 曹巧媛,單片機(jī)原理及應(yīng)用一一教學(xué)、實(shí)踐、
38、設(shè)計(jì)指導(dǎo),電子工業(yè) 出版社數(shù)字系統(tǒng)設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)書徐海學(xué)院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第29頁附錄一 單片機(jī)板電路原理圖徐海學(xué)院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第#頁徐海學(xué)院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第30頁s £x-l:3k Ml 7¥*尋-SK3t4SU工豐常乩丟工1玄£丿匹JFT叮£- 二_*ulKsy 穿&義 9unnu世 mfifeaL bus UB4il5 a肯才汙-rrni2 g tfea£fctei=fct 呂角三 g TBEDir S和 lrlTm1TmJ J J! J p 產(chǎn)青" *5S?E*-5壬昨三記旦壬
39、mlEls *:fi-6fr fc*&£ m爾翔眸JW翔弟翩嘲捕 T徐海學(xué)院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第#頁<£S-a=5 3»-_r- T -Sh-徉廠電 mm- q m a k r ir ar耳匚匸口ffffl圧®TT- HfiC3O 徐海學(xué)院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第31頁徐海學(xué)院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第#頁II'徐海學(xué)院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第32頁徐海學(xué)院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第#頁附錄三元器件清單徐海學(xué)院2010級(jí)單片機(jī)系統(tǒng)設(shè)計(jì)報(bào)告第38頁附錄四程序代碼八位二進(jìn)制乘法器FUNCTION lpm_m
40、ult (dataa7.0, datab7.0,sum7.0)WITH (LPM_WIDTHA=8, LPM_WIDTHB=8,LPM_WIDTHP=16,LPM_WIDTHS=16,INPUT_A_IS_CONSTANT=" no", INPUT_B_IS_CONSTANT=" no ",USE_EAB="off", LPM_REPRESENTATION="u nsig ned")RETURNS (result15.0);subdesig n multt(daa7.0,dab7.0:i nput;res15.0
41、:output;)Variablemulta :lpm_mult;Beg inmulta.sum=g nd;multa.dataa=daa;multa.datab=dab;res=multa.result;En d;16位BCD碼轉(zhuǎn)換與顯示電路Subdesig n dcbzhhh(ibd15.0,i nclk :in put;odd6.0, p,bitout4.0 :output;)Variablemh3.0,mm3.0,mw3.0, mr3.0,ml3.0:dff;mrd15.0,sta1.0,stb2.0,mseg3.0, bitout4.0,fpq15.0,fp :dff;mhr3.0,
42、mmr3.0,mwr3.0,mrr3.0, mlr3.0 :dff;Beg in(fpq,fp).clk=i nclk;If fpq=19999 thenfp=!fp;fpq=0;Elsefp=fp;fpq=fpq+1;End if;sta.clk=fp;stb.clk=fp;bitout.clk=fp;mseg.clk=fp;(mh,mm,mw,mr,ml,mrd).clk=i nclk;(mhr,mmr,mwr,mrr,mlr).clk=i nclk;Case sta isWhen 0 =>mrd=ibd;sta=1; mhr=mhr;mmr=mmr;mwr=mwr;mrr=mrr;
43、mlr=mlr;When 1 =>If mrd=0 the n mhr=mh;mmr=mm;mwr=mw;mrr=mr;mlr=ml;mh=mh;mm=mm;mw=mw;mr=mr; ml=ml; sta=0;Elsemhr=mh;mmr=mm;mwr=mw;mrr=mr;mlr=ml; mrd=mrd-1;sta=1;If ml=9 the nml=0;If mr=9 the nmr=0;If mw=9 the nmw=0;If mm=9 the nmm=0;If mh=9 thenmh=0;Elsemh=mh+1;End if;Elsemm=mm+1;mh=mh;End if;Elsemw=mw+1;mm=mm;mh=mh;End if;Elsemr=mr+1;mw=mw;mm=mm;
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 關(guān)于酒店轉(zhuǎn)讓合同范本
- 2025年GPPS項(xiàng)目建議書
- 買車預(yù)售合同范本
- 合同范例專用條款
- 個(gè)人演出勞務(wù)合同范例
- 攤位出兌合同范本
- 賣家解除合同范本
- 取送車合同范本
- 2025年特種用途鋼絲及鋼絲繩項(xiàng)目合作計(jì)劃書
- 籃球場地租賃合同范本
- 物業(yè)公司市場拓展全員營銷激勵(lì)方案
- 2024-2025學(xué)年小學(xué)美術(shù)一年級(jí)下冊(cè)(2024)嶺南版(2024)教學(xué)設(shè)計(jì)合集
- 2024-2025學(xué)年初中信息技術(shù)(信息科技)七年級(jí)下冊(cè)甘教版教學(xué)設(shè)計(jì)合集
- 2024年安徽省文化和旅游行業(yè)職業(yè)技能大賽(導(dǎo)游賽項(xiàng))考試題庫(含答案)
- SOAP病例書寫規(guī)范
- 小學(xué)一年級(jí)綜合實(shí)踐活動(dòng)第四單元課件《書包》
- DB13-T 6002-2024 應(yīng)急科普教育場館建設(shè)規(guī)范
- 2025屆高三數(shù)學(xué)一輪總復(fù)習(xí) 第二章 第一講 函數(shù)的概念及其表示
- 全國職業(yè)院校技能大賽高職組(軟件測(cè)試賽項(xiàng))備賽試題庫(含答案)
- 四川甘孜州招聘康定市投資發(fā)展集團(tuán)有限公司招聘筆試題庫2024
- 2024年甘肅省中考物理試題卷(含答案解析)
評(píng)論
0/150
提交評(píng)論