51單片機(jī)-波形發(fā)生器_第1頁
51單片機(jī)-波形發(fā)生器_第2頁
51單片機(jī)-波形發(fā)生器_第3頁
51單片機(jī)-波形發(fā)生器_第4頁
51單片機(jī)-波形發(fā)生器_第5頁
已閱讀5頁,還剩14頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、實(shí)用文檔單片機(jī)課程設(shè)計(jì)報(bào)告題目波形發(fā)生器專業(yè)電子信息科學(xué)與技術(shù)班級(jí)2008 級(jí)1班學(xué)生姓名*學(xué)號(hào)3080422*指與老師*2011年7月8日實(shí)用文檔目錄一、設(shè)計(jì)目的 錯(cuò)誤!未定義書簽。二、設(shè)計(jì)的主要內(nèi)容和要求 錯(cuò)誤!未定義書簽。2.1 基本內(nèi)容和要求 錯(cuò)誤!未定義書簽。2.2 創(chuàng)新部分 錯(cuò)誤!未定義書簽。三、整體設(shè)計(jì)思路 錯(cuò)誤!未定義書簽。3.1 設(shè)計(jì)思路 錯(cuò)誤!未定義書簽。3.2 元件選型 錯(cuò)誤!未定義書簽。3.3 功能原理圖 錯(cuò)誤!未定義書簽。四、方案論證 -3 -五、硬件電路設(shè)計(jì) -4 -5.1 硬件連線圖 錯(cuò)誤!未定義書簽。5.2 主要芯片介紹 錯(cuò)誤!未定義書簽。六、軟件設(shè)計(jì) 錯(cuò)誤!未

2、定義書簽。6.1 正弦波的產(chǎn)生過程 錯(cuò)誤!未定義書簽。6.2 方波產(chǎn)生過程 錯(cuò)誤!未實(shí)用文檔定義書簽。6.3 鋸齒波的產(chǎn)生過程 錯(cuò)誤!未定義書簽。6.4 三角波的產(chǎn)生過程 錯(cuò)誤!未定義書簽。6.5 通過開關(guān)實(shí)現(xiàn)波形切換和調(diào)頻 錯(cuò)誤!未定義書簽。6.7 附程序代碼 錯(cuò)誤!未定義書簽。七、調(diào)試與仿真 錯(cuò)誤!未定義書簽。八、總結(jié) 錯(cuò)誤!未定義書簽。九、參考文獻(xiàn) 錯(cuò)誤!未定義書簽波形發(fā)生器一、設(shè)計(jì)目的(1)利用所學(xué)單片機(jī)機(jī)的理論知識(shí)進(jìn)行軟硬件整體設(shè)計(jì),鍛煉學(xué)生理論聯(lián)系實(shí)際、提高我們的綜合應(yīng)用能力。(2)我們這次的課程設(shè)計(jì)是以單片機(jī)為基礎(chǔ),設(shè)計(jì)并開發(fā)能輸出多種波形(正 弦波、三角波、鋸齒波、方波、梯形波

3、等)且頻率、幅度可變的波形發(fā)生器。(3)掌握各個(gè)接口芯片(如0832等)的功能特性及接口方法,并能運(yùn)用其實(shí)現(xiàn) 一個(gè)簡(jiǎn)單的單片機(jī)應(yīng)用系統(tǒng)功能器件。(4)在平時(shí)的學(xué)習(xí)中,我們所學(xué)的知識(shí)大都是課本上的,在機(jī)房的練習(xí)大家也 都是分散的對(duì)各個(gè)章節(jié)的內(nèi)容進(jìn)行練習(xí)。因此,缺乏一種系統(tǒng)的設(shè)計(jì)鍛煉。在課程 所學(xué)結(jié)束以后,這樣的課程設(shè)計(jì)十分有助于學(xué)生的知識(shí)系統(tǒng)的總結(jié)到一起。(5)通過這幾個(gè)波形進(jìn)行組合形成了一個(gè)波形發(fā)生器,使得我對(duì)系統(tǒng)的整個(gè)框 架的設(shè)計(jì)有了一個(gè)很好的鍛煉。這不僅有助于大家找到自己感興趣的題目,更可以實(shí)用文檔鍛煉大家單片機(jī)知識(shí)的應(yīng)用二、設(shè)計(jì)的主要內(nèi)容和要求1.1基本內(nèi)容和要求(1)設(shè)計(jì)一款能夠產(chǎn)生3

4、種波形的波形發(fā)生器;(2)設(shè)計(jì)波形選擇按鈕;(3) LED或LCD顯示波形代號(hào)(如:1為正弦波,2為方波,3為鋸齒波,4為三角 波);(4)其他功能(創(chuàng)新部分)。1.2創(chuàng)新部分(1)波形頻率調(diào)節(jié);(2)波形幅值調(diào)節(jié);(3)方波占空比調(diào)節(jié);(4)濾波。三、整體設(shè)計(jì)思路3.1 設(shè)計(jì)思路1、課設(shè)需要各個(gè)波形的基本輸出。如輸出正弦波、方波、鋸齒波、三角波。 這些波形的實(shí)現(xiàn)的具體步驟:(1)正弦波:通過手動(dòng)的方法計(jì)算出輸出各點(diǎn)的電壓值,然后在編寫程序時(shí)以 數(shù)組的方式給出。當(dāng)需要時(shí),只要按照順序進(jìn)行輸出即可。這種方法比在軟件中計(jì) 算速度快且曲線的形狀修改靈活。在本設(shè)計(jì)中將一個(gè)周期(360度)分為256個(gè)點(diǎn)

5、, 則每?jī)蓚€(gè)點(diǎn)之間的間隔為1.4度,然后計(jì)算出每個(gè)點(diǎn)電壓對(duì)應(yīng)的數(shù)字量,形成數(shù)組。 只要反復(fù)輸出這組數(shù)據(jù)到DAC0832就可以在系統(tǒng)輸出端得到想要的正弦波。(2)方波:按照設(shè)定的周期值將輸出的電壓改變即可。(3)鋸齒波:也使用查表法。將三角波的一個(gè)周期(360度)分為256個(gè)點(diǎn), 相鄰點(diǎn)等差,生成數(shù)組。反復(fù)輸出前128個(gè)數(shù)據(jù)到DAC0832就可以在系統(tǒng)輸出端得 到想要的鋸齒波。(4)三角波:將(3)中的數(shù)組256個(gè)數(shù)據(jù)全部輸出到DAC0832循環(huán),就可以 在系統(tǒng)輸出端得到想要的三角波。2、通過P1 口和輕觸開關(guān)S1-S4相連接來切換波形輸出(如按S1鍵輸出正弦波, 按S2鍵產(chǎn)生方波,按S3鍵產(chǎn)生

6、鋸齒波,按S4鍵產(chǎn)生三角波)。用P0 口控制數(shù)碼管 靜態(tài)顯示波形代號(hào)。用P2 口向DAC0832g送數(shù)據(jù),經(jīng)DAC0832專換后,再把信號(hào)放 大,最后接到示波器上顯示。3.2 元件選型單片機(jī)AT89S52系統(tǒng),DAC083”片,PC機(jī)一臺(tái),運(yùn)算放大器。3.3 功能原理圖實(shí)用文檔四、方案論證波形發(fā)生器的實(shí)現(xiàn)方法通常有以下幾種:方案1:用分立元件組成的波形發(fā)生器:通常是單函數(shù)發(fā)生器且頻率不高, 其工 作不很穩(wěn)定,不易調(diào)試。方案2:可以由晶體管、運(yùn)放IC等通用器件制作,更多的則是用專門的函數(shù)信 號(hào)發(fā)生器IC產(chǎn)生。早期的函數(shù)信號(hào)發(fā)生器IC,如L8038、BA205 XR2207/2209等, 它們的功

7、能較少,精度不高,頻率上限只有 300kHz,無法產(chǎn)生更高頻率的信號(hào),調(diào) 節(jié)方式也不夠靈活,頻率和占空比不能獨(dú)立調(diào)節(jié),二者互相影響。方案3:利用專用直接數(shù)字合成DDSE片的波形發(fā)生器:能產(chǎn)生任意波形并達(dá)到 很高的頻率。但成本較高。方案4:采用AT89S52單片機(jī)和DAC0832K片,直接連接鍵盤和顯示。該種方案 主要對(duì)AT89S52M片機(jī)白各個(gè)I/O 口充分利用。P1 口是連接鍵盤,P0 口接顯示電路, P2 口連接DAC0832俞出波形。這樣總體來說,能對(duì)單片機(jī)各個(gè)接口都利用上,而不 在多用其它芯片,從而減小了系統(tǒng)的成本。也對(duì)按照系統(tǒng)便攜式低頻信號(hào)發(fā)生器的 要求所完成。占用空間小,使用芯片少

8、,低功耗。綜合考慮,方案4各項(xiàng)性能和指標(biāo)都優(yōu)于其他幾種方案,能使輸出頻率有較好 的穩(wěn)定性,充分體現(xiàn)了模塊化設(shè)計(jì)的要求,而且這些芯片及器件均為通用器件,在 市場(chǎng)上較常見,價(jià)格也低廉,樣品制作成功的可能性比較大,所以本設(shè)計(jì)采用方案 4。五、硬件電路設(shè)計(jì)5.1 電路連線圖通過P1.0-P1.3 口和輕觸開關(guān)S1-S4相連接來切換波形輸出(如按S1鍵輸出正 弦波,按S2鍵產(chǎn)生方波,按S3鍵產(chǎn)生鋸齒波,按S4鍵產(chǎn)生三角波),P1.4、P1.5 接方波占空比調(diào)節(jié)開關(guān),P1.6、P1.7接波形頻率調(diào)節(jié)開關(guān),如圖2所示。用P0口實(shí)用文檔控制數(shù)碼管靜態(tài)顯示波形代號(hào),如圖3所示。用P2 口向DAC083發(fā)送數(shù)據(jù),

9、經(jīng)DAC0832轉(zhuǎn)換后,再把信號(hào)放大,最后接到示波器上顯示如圖4所示。PD.CVADO P0.1/AO1 PC C/AZ J po.Aoa P0.4/AD4 PCL6MJ5 P0.6/AD6PEL?岫 7P2.(VABP2.1/ASP2 2/A10 P2 珈11 P2 4JA12 P23Al 3P2 6W4 口( TJA.1 百圖2按鍵電路圖3顯示電路圖4 DAC0832連接圖和幅值調(diào)節(jié)電路IK口3叩 FtTR:<TEXTALE正弦波三角彼S0C51方波占空比方波占空比P23國P2.MP2.2/A1DP2.3/A11 F24yMi 2 P2.5/A13P2.6/A14P2.7/A15QP

10、flMP<TET>PO.D/AnO PD.1/AD1 P0.2/AD2 P0.3/AD3 PO.47AD4 P0.5/AD5PD.8/AD8 PD.7/AD7P3.D/RXD F3.1/D(DP3.2/WP3.3/iNTiTP3.4fTOP3.5JT1P3.6AWP3.7/RDIS由114"I5GNDF*?316iP23 417*m 5%AcsvccWRIILECBY1/B»i)GNDU¥R2DI3xFBT012014Dll口期DIDDIGVREF017RFBGNDII0UT2I0UTIDAC083212 G的11LO函實(shí)用文檔注:波形的幅值調(diào)節(jié),使用

11、硬件方法實(shí)現(xiàn),如圖4中DAC0832勺VREm接一滑動(dòng)變 阻器,通過改變DA轉(zhuǎn)換的參考電壓來實(shí)現(xiàn)波形幅值的改變。5.2主要芯片介紹(1) 51單片機(jī)的內(nèi)部結(jié)構(gòu)基本組成部分:1 一個(gè)8位的CPU2 128B或256B單元內(nèi)數(shù)據(jù)存儲(chǔ)器(RAM3 4KB或8KB片內(nèi)程序存儲(chǔ)器(ROME EPROM4 4 個(gè)8位并行I/O接口 P0P35兩個(gè)定時(shí)/計(jì)數(shù)器。6 5個(gè)中斷源的中斷管理控制系統(tǒng)。7 一個(gè)全雙工串行I/O 口 UART(通用異步接收、發(fā)送器)8 一個(gè)片內(nèi)振蕩器和時(shí)鐘產(chǎn)生電路。T2/PE 0 C T2EX/P1. 1 C PL 2匚 Pl. 3 C Pl,4 c MOSI/Pk 5 C XIS0

12、/P1.6 C SCK/Pb 7 C RST C RXD/P3+ 0 C TXD/P3. 1 C IHTQ/P3. 2 C rKTl/PS. 3 匚T0/P34 C IL/P* 5 c TO/P3, 8 C RH/P3. 7 c XTAL2 C XTAL1 C PDIP GHD C01234567330 12 3 4 5 6 78 911111111112098T654321098765432143333333333222222222nnnnnnnnnnnnnnnnnnnnVccPO. 0 /ADO FO. HADI PO. 2,丸D2 PO. 3/AD3 P0.4/AD4 PO. 5/AD5

13、PO.6/AD6 PO. 7/AD7 EA/VPP ALE/PRDC PESNP2.北15 P2.6MU P2. 5/A13 P2.4/A12P2. 3/AU P2. 2ZA1O P2. 1/A9 P2. 0/A8圖7 51單片機(jī)引腳管腳說明:VCC供電電壓實(shí)用文檔GND接地。P0 口: P0 口為一個(gè)8位漏級(jí)開路雙向I/O 口,每腳可吸收8TTL門電流。當(dāng)P1 口的管腳第一次寫1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它 可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時(shí),P0 口作為原碼輸入口,當(dāng)FIASH 進(jìn)行校馬時(shí),P0輸出原碼,此時(shí)P0外部必須被拉高。P1 口: P1

14、口是一個(gè)內(nèi)部提供上拉電阻的 8位雙向I/O 口,P1 口緩沖器能接收 輸出4TTL門電流。P1 口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1 口被外 部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASHS程和校驗(yàn)時(shí),P1 口作為第八位地址接收。P2 口: P2 口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O 口,P2 口緩沖器可接收,輸 出4個(gè)TTL門電流,當(dāng)P2口被寫“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸 入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉 的緣故。P2 口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2 口輸出地址的高八位

15、。在給出地址“ 1”時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地 址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASHS程 和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。P3 口: P3 口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O 口,可接收輸出4個(gè)TTL 門電流。當(dāng)P3 口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入, 由于外部下拉為低電平,P3 口將輸出電流(ILL)這是由于上拉的緣故。RST復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST卻兩個(gè)機(jī)器周期的高電平時(shí) IALE/PROG當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地 位字節(jié)。在FLASHS程期間,此引

16、腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過一 個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EHfe址上置0。此時(shí),ALE只有在執(zhí)行 MOVX MOV筠令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部 執(zhí)行狀態(tài)ALE禁止,置位無效。/PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器 周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出/EA/VPP :當(dāng)/EA保持低電平時(shí),則在此期間

17、外部程序存儲(chǔ)器(0000H-FFFFH , 不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式 1時(shí),/EA將內(nèi)部鎖定為RESET當(dāng)/EA 端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH®程期間,此引腳也用于施加12V 編程電源(VPFXTAL1反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。XTAL2來自反向振蕩器的輸出。(2) DAC0832E片DAC0832t采樣頻率為八位的D/A轉(zhuǎn)換芯片,集成電路內(nèi)有兩級(jí)輸入寄存器。D AC0832輸出的是電流,一般要求輸出是電壓, 所以還必須經(jīng)過一個(gè)外接的運(yùn)算放大 器轉(zhuǎn)換成電壓。DAC0832芯片具備雙緩沖、單緩沖和直通三種輸入方式,以便適于各種電路的

18、 需要(如要求多路D/A異步輸入、同步轉(zhuǎn)換等)。所以這個(gè)芯片的應(yīng)用很廣泛,關(guān)于實(shí)用文檔DAC0832勺引腳功能如下:D0D7數(shù)字信號(hào)輸入端。ILE:輸入寄存器允許,高電平有效 CS片選信號(hào),低電平有效。WR1寫信號(hào)1,低電平有效。XFER傳送控制信號(hào),低電平有效 WR2寫信號(hào)2,低電平有效。IOUT1、IOUT2: DAC4流輸出端。RfB:是集成在片內(nèi)的外接運(yùn)放的反 饋電阻。VREF基準(zhǔn)電壓(-1010V)。VCC是源電壓(+5+15V。GND 地。U11CS WR1GNDDI3 DI2DI1VCC ILE(BY1/BY2)WR2 XFER20-H9-H8-H75-68DI4DI516-H5

19、D10VREFDI6DI714-H39RFBIOUT21210GNDIOUT111DAC0832圖8 DAC0832芯片圖六、軟件設(shè)計(jì)圖9主程序流程圖實(shí)用文檔圖10按鍵部分流程圖6.1 正弦波的產(chǎn)生過程通過手動(dòng)的方法計(jì)算出輸出各點(diǎn)的電壓值,形成數(shù)組sintab256,反復(fù)順序輸出這組數(shù)據(jù)到DAC0832就在系統(tǒng)輸出端得到正弦波。6.2 方波的產(chǎn)生過程按照設(shè)定的周期值改變輸出的電壓(分別向DAC0832俞0x00或0xff )。6.3 鋸齒波的產(chǎn)生過程將一個(gè)周期(360度)分為128個(gè)點(diǎn),遞增,生成數(shù)組jctab128,反復(fù)順序輸 出這組數(shù)據(jù)到DAC0832就在系統(tǒng)輸出端得到鋸齒波。6.4 三角

20、波的產(chǎn)生過程將三角波的一個(gè)周期(360度)分為256個(gè)點(diǎn),相鄰點(diǎn)等差,前128個(gè)點(diǎn)遞增, 后128個(gè)點(diǎn)遞減,生成數(shù)組sjtab256,反復(fù)順序輸出這組數(shù)據(jù)到 DAC0832就在系 統(tǒng)輸出端得到三角波。實(shí)用文檔6.5 通過開關(guān)實(shí)現(xiàn)波形切換和調(diào)頻輕觸開關(guān)S1-S4切換波形輸出(S1鍵輸出正弦波,按S2鍵產(chǎn)生方波,按S3鍵 產(chǎn)生鋸齒波,按S4鍵產(chǎn)生三角波),SS S6調(diào)節(jié)方波占空比,S7、S8調(diào)節(jié)波形頻率。 6.7附程序代碼#include <reg52.h>0xe9,0xe7,0xe5,0xe3,0xe1,0xde,0xdd,0x#include<absacc.h>da,#

21、define uchar unsigned char0xd8,0xd6,0xd4,0xd1,0xcf,0xcc,0xca,#define uint unsigned int0xc7,sbit s1=P1A0;0xc5,0xc2,0xbf,0xbc,0xba,0xb7,0xb4,0xsbit s2=P1Al;b1,sbit s3=P1A2;0xae,0xab,0xa8,0xa5,0xa2,0x9f,0x9c,sbit s4=P1A3;0x99,sbit s5=P1A4;0x96,0x93,0x90,0x8d,0x89,0x86,0x83,0xsbit s6=P1A5;80,sbit s7=P1A

22、6;0x80,0x7c,0x79,0x76,0x72,0x6f,0x6c,0xsbit s8=P1A7;69,uint d1,d2;0x66,0x63,0x60,0x5d,0x5a,0x57,0x55,0xuint s,p;51,uint n;0x4e,0x4c,0x48,0x45,0x43,0x40,0x3d,0xuchar code sintab256=3a,0x38,0x35,0x33,0x30,0x2e,0x2b,0x29,0x0x80,0x83,0x86,0x89,0x8d,0x90,0x93,0x27,96,0x25,0x22,0x20,0x1e,0x1c,0x1a,0x18,0x

23、0x99,0x9c,0x9f,0xa2,0xa5,0xa8,0xab,16,0xae,0x15,0x13,0x11,0x10,0x0e,0x0d,0x0b,0x0xb1,0xb4,0xb7,0xba,0xbc,0xbf,0xc2,0xc50a,0x09,0x08,0x07,0x06,0x05,0x04,0x03,0x0xc7,0xca,0xcc,0xcf,0xd1,0xd4,0xd6,02,0xd8,0x02,0x01,0x00,0x00,0x00,0x00,0x00,0x0xda,0xdd,0xdf,0xe1,0xe3,0xe5,0xe7,00,0xe9,0x00,0x00,0x00,0x0

24、0,0x00,0x00,0x01,0x020xea,0xec,0xee,0xef,0xf1,0xf2,0xf4,0xf5,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x090xf6,0xf7,0xf8,0xf9,0xfa,0xfb,0xfc,0xfd,0x0a,0x0b,0x0d,0x0e,0x10,0x11,0x13,0x150xfd,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0x16,0x18,0x1a,0x1c,0x1e,0x20,0x22,0x250xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfd,0x

25、27,0x29,0x2b,0x2e,0x30,0x33,0x35,0x380xfd,0xfc,0xfb,0xfa,0xf9,0xf8,0xf7,0xf6,0x3a,0x3d,0x40,0x43,0x45,0x48,0x4c,0x4e0xf5,0xf4,0xf2,0xf1,0xef,0xee,0xec,0xea,0x51,0x55,0x57,0x5a,0x5d,0x60,0x63,0x66實(shí)用文檔0x69,0x6c,0x6f,0x72,0x76,0x79,0x7c,0x80;uchar code jctab128=0x00,0x02,0x04,0x06,0x08,0x0a,0x0c,0x0e,0

26、x10,0x12,0x14,0x16,0x18,0x1a,0x1c,0x1e,0x20,0x22,0x24,0x26,0x28,0x2a,0x2c,0x2e,0x30,0x32,0x34,0x36,0x38,0x3a,0x3c,0x3e,0x40,0x42,0x44,0x46,0x48,0x4a,0x4c,0x4e,0x50,0x52,0x54,0x56,0x58,0x5a,0x5c,0x5e,0x60,0x62,0x64,0x66,0x68,0x6a,0x6c,0x6e,0x70,0x72,0x74,0x76,0x78,0x7a,0x7c,0x7e,0x80,0x82,0x84,0x86,0

27、x88,0x8a,0x8c,0x8e,0x90,0x92,0x94,0x96,0x98,0x9a,0x9c,0x9e,0xa0,0xa2,0xa4,0xa6,0xa8,0xaa,0xac,0xae,0xb0,0xb2,0xb4,0xb6,0xb8,0xba,0xbc,0xbe,0xc0,0xc2,0xc4,0xc6,0xc8,0xca,0xcc,0xce,0xd0,0xd2,0xd4,0xd6,0xd8,0xda,0xdc,0xde,0xe0,0xe2,0xe4,0xe6,0xe8,0xea,0xec,0xee,0xf0,0xf2,0xf4,0xf6,0xf8,0xfa,0xfc,0xfe;u

28、char code sjtab256=0x00,0x02,0x04,0x06,0x08,0xOa,0x0c,0x0e,0x10,0x12,0x14,0x16,0x18,0x1a,0x1c,0x1e,0x20,0x22,0x24,0x26,0x28,0x2a,0x2c,0x2e 0x30,0x32,0x34,0x36,0x38,0x3a,0x3c,0x3e ,0x40,0x42,0x44,0x46,0x48,0x4a,0x4c,0x4e ,0x50,0x52,0x54,0x56,0x58,0x5a,0x5c,0x5e ,0x60,0x62,0x64,0x66,0x68,0x6a,0x6c,0x6

29、e ,0x70,0x72,0x74,0x76,0x78,0x7a,0x7c,0x7e ,0x80,0x82,0x84,0x86,0x88,0x8a,0x8c,0x8e ,0x90,0x92,0x94,0x96,0x98,0x9a,0x9c,0x9e ,0xa0,0xa2,0xa4,0xa6,0xa8,0xaa,0xac,0xae ,0xb0,0xb2,0xb4,0xb6,0xb8,0xba,0xbc,0xbe ,0xc0,0xc2,0xc4,0xc6,0xc8,0xca,0xcc,0xce,0xd0,0xd2,0xd4,0xd6,0xd8,0xda,0xdc,0xde ,0xe0,0xe2,0

30、xe4,0xe6,0xe8,0xea,0xec,0xee ,0xf0,0xf2,0xf4,0xf6,0xf8,0xfa,0xfc,0xfe ,0xfe,0xfc,0xfa,0xf8,0xf6,0xf4,0xf2,0xf0,0xee,0xec,0xea,0xe8,0xe6,0xe4,0xe2,0xe0 ,0xde,0xdc,0xda,0xd8,0xd6,0xd4,0xd2,0xd0,0xce,0xcc,0xca,0xc8,0xc6,0xc4,0xc2,0xc0,0xbe,0xbc,0xba,0xb8,0xb6,0xb4,0xb2,0xb0 ,0xae,0xac,0xaa,0xa8,0xa6,0x

31、a4,0xa2,0xa0 ,0x9e,0x9c,0x9a,0x98,0x96,0x94,0x92,0x90 ,0x8e,0x8c,0x8a,0x88,0x86,0x84,0x82,0x80實(shí)用文檔void juchi()P2=jctabn;n=n+p;if(n>=127)n=0;void sanjiao()P2=sjtabn;n=n+p;if(n>=255)n=0;void boxingkey()if(s1=0)P0=0xF9;s=1;n=0;p=4;else if(s2=0)P0=0xA4;s=2;n=0;p=4;else if(s3=0)P0=0xB0;s=3;n=0;p=4;

32、else if(s4=0)P0=0x99;s=4;delay(10);/ 延時(shí)消抖if(s5=0)d1-;d2+;0x7e,0x7c,0x7a,0x78,0x76,0x74,0x72,0x70 ,0x6e,0x6c,0x6a,0x68,0x66,0x64,0x62,0x60 ,0x5e,0x5c,0x5a,0x58,0x56,0x54,0x52,0x50 ,0x4e,0x4c,0x4a,0x48,0x46,0x44,0x42,0x40 ,0x3e,0x3c,0x3a,0x38,0x36,0x34,0x32,0x30 ,0x2e,0x2c,0x2a,0x28,0x26,0x24,0x22,0x2

33、0 ,0x1e,0x1c,0x1a,0x18,0x16,0x14,0x12,0x10 ,0x0e,0x0c,0x0a,0x08,0x06,0x04,0x02,0x00 ;void delay (uchar k)uchar j;while(k-)!=0)for(j=0;j<125;j+); ;void zhengxian()P2=sintabn;n=n+p;if(n>=256)n=0;void fangbo()P2=0xff;/ 方波delay(dl-p);P2=0;delay(d2-p);n=0;p=4;else if(s5=0) 占空比增加 實(shí)用文檔while(!s5);/ 松手 檢測(cè),當(dāng)s5=1 (松手)跳出死循環(huán)delay(10);/ 消抖 while(!s5);/確實(shí)松手了else if(s6=0)/占空比減小delay(10);/

溫馨提示

  • 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)論