www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]函數(shù)信號(hào)發(fā)生器是一種常用的信號(hào)源,它廣泛地應(yīng)用在電子技術(shù)實(shí)驗(yàn)。目前常用的函數(shù)信號(hào)發(fā)生器,一般可靠性較差,準(zhǔn)確度較低,難以滿(mǎn)足科研和高精度實(shí)驗(yàn)的需要?,F(xiàn)用單片機(jī)和支持軟件及其外設(shè)電路構(gòu)成的智能函數(shù)信號(hào)發(fā)

函數(shù)信號(hào)發(fā)生器是一種常用的信號(hào)源,它廣泛地應(yīng)用在電子技術(shù)實(shí)驗(yàn)。目前常用的函數(shù)信號(hào)發(fā)生器,一般可靠性較差,準(zhǔn)確度較低,難以滿(mǎn)足科研和高精度實(shí)驗(yàn)的需要?,F(xiàn)用單片機(jī)和支持軟件及其外設(shè)電路構(gòu)成的智能函數(shù)信號(hào)發(fā)生器,采用編程的方法來(lái)實(shí)現(xiàn)波形,將產(chǎn)生波形的程序用子程序的形式編寫(xiě),在需要波形時(shí)再調(diào)用相應(yīng)子程序,經(jīng)過(guò)D/A轉(zhuǎn)換、運(yùn)算放大器處理后,作為該信號(hào)源輸出,其線路簡(jiǎn)捷、功能強(qiáng)大、性?xún)r(jià)比較高。

1 主要芯片介紹

1.1 AT89C51單片機(jī)芯片

1.1.1 引腳圖

本文采用的單片機(jī)芯是AT89C51,它是采用高速CMOS制造工藝,通用型為40腳雙列直插封裝方式,其引腳如圖1所示。只要將+5 V電源接到VCC和VSS兩端,將晶振接到XTAL1和XTAL2兩端,給EA端加高電平控制電壓,然后將機(jī)器碼固化到AT89C51內(nèi)就可以使用了。

1.1.2 單片機(jī)基本功能

單片機(jī)基本系統(tǒng)即單片機(jī)正常工作不可缺少的部分,進(jìn)行設(shè)計(jì)都要在此系統(tǒng)基礎(chǔ)上進(jìn)行。

(1)外接晶振引腳XTAL1與XTAL2

單片機(jī)之所以要加振蕩器是因?yàn)閱纹瑱C(jī)內(nèi)的CPU在執(zhí)行指定程序時(shí),要經(jīng)過(guò)“取指”、“譯碼”,再定時(shí)給相關(guān)電路發(fā)出控制信號(hào),以實(shí)現(xiàn)“機(jī)器碼指令”所要求的功能。這就要求內(nèi)部必須有一個(gè)基準(zhǔn)時(shí)鐘??赏ㄟ^(guò)外接晶振或振蕩信號(hào)二種方式來(lái)實(shí)現(xiàn),一般采用外接晶振的方法較方便。

XTAL1(19),XTAL2(18)為外接晶振的兩個(gè)引腳。接入晶振時(shí),還要接入兩個(gè)20~30 pF的瓷片電容C1,C2,晶振頻率因單片機(jī)工作速度而異,Intel MCS-51系列為1.2~12 MHz,ATMEL89C系列為0~24 MHz,目前常采用6 MHz,11.059 MHz和12 MHz。石英晶振起振后,XTAL2(18)腳有一個(gè)3 V左右的正弦波。C1,C2短路、晶振不良,AT89C51(18),(19)腳內(nèi)部反相器會(huì)損壞。VCC電源未加上等故障可能造成晶振不起振,使單片機(jī)無(wú)法工作。當(dāng)采用外部振蕩器時(shí),信號(hào)接入(19)腳,(18)腳懸浮。振蕩器的12分頻為一個(gè)機(jī)器周期,當(dāng)外接12 MHz晶振時(shí),一個(gè)機(jī)器周期為1μs。MCS-51大多數(shù)指令為一個(gè)機(jī)器周期。

(2)復(fù)位與復(fù)位電路

單片機(jī)必須進(jìn)行復(fù)位,是因?yàn)閱纹瑱C(jī)內(nèi)的CPU“取指”過(guò)程即為CPU從PC指針?biāo)付ǖ某绦虼鎯?chǔ)器ROM地址單元中讀取“機(jī)器碼”的過(guò)程。單片機(jī)加電后,PC指針應(yīng)指向ROM中某個(gè)固定的單元,當(dāng)然,程序開(kāi)始的第一條指令也應(yīng)放在ROM的這一地址單元內(nèi),這樣整個(gè)程序才能有序地執(zhí)行。這個(gè)單元就是 ROM的0000H單元。只有上電復(fù)位正常后,PC值才為0000H,即指向ROM的0000H單元。此外,專(zhuān)用寄存器SFR中的SP為07H,即指向片內(nèi)數(shù)據(jù)存儲(chǔ)器(片內(nèi)RAM)07H單元,P0~P3值為0FFH,其余的專(zhuān)用寄存器值大多為00H。

復(fù)位的方法:當(dāng)振蕩器正常工作時(shí),RST(9)腳上出現(xiàn)的兩個(gè)機(jī)器周期的高電平將使單片機(jī)有效復(fù)位??紤]到振蕩器有一定的起振時(shí)間,該引腳必須保持 10 ms以上高電平,才能有效復(fù)位。復(fù)位電路有開(kāi)機(jī)自動(dòng)復(fù)位和手動(dòng)復(fù)位。注意:復(fù)位信號(hào)為2個(gè)以上機(jī)器周期的高電平,單片機(jī)復(fù)位后正常工作時(shí)應(yīng)該為低電平,如果未加復(fù)位電平或復(fù)位后復(fù)位電平仍未撤除,則單片機(jī)不能正常工作,此時(shí),可檢查RST電壓及相關(guān)器件。

在掉電期問(wèn)RST/VPD引腳如接入備用電源VPD(5 V±0.5 V),則可保存片內(nèi)數(shù)據(jù)。當(dāng)VCC下降到某一規(guī)定值時(shí),VPD便向片內(nèi)RAM供電。

(3)EA/VDD片內(nèi)程序存儲(chǔ)器選用端

單片機(jī)復(fù)位后,PC指針可能指向片內(nèi)ROM0000H或片外ROM0000H單元,這取決于EA/VDD(31)腳外接高電平(指向片內(nèi) ROM0000H)還是低電平(指向片外ROM0000H)。AT89C51內(nèi)部有4 kB ROM,這時(shí)EA(31)腳需外接高電位VCC。

在編程期間,此引腳作編程電壓VDD的輸入端。

1.2 關(guān)于DAC0832

DAC0832是具有20條引腳的雙列直插式COMS器件,它內(nèi)部具有兩級(jí)數(shù)據(jù)寄存器,完成8位電流D/A轉(zhuǎn)換。其結(jié)構(gòu)框圖及信號(hào)引線如圖2所示。

以下是其三種不同的工作方式:

(1)直通方式

將WR1,WR2,XFER,CS接地,ILE接高電平,就能使得兩個(gè)寄存器的輸出跟隨輸入的數(shù)字量變化,DAC0832的輸出也同時(shí)跟隨變化。直通方式常用于連續(xù)反饋控制的環(huán)路中。

(2)單緩沖方式

單緩沖方式就是將其中一個(gè)寄存器工作在直通狀態(tài),另一個(gè)處于受控的鎖存器狀態(tài)。在實(shí)際應(yīng)用中,如果只有一路模擬量輸出,或雖有幾路模擬量但并不要求同步輸出,就可采用單緩沖方式。

(3)雙緩沖方式

所謂雙緩沖方式就是將兩個(gè)寄存器都處于受控的鎖存方式。為了實(shí)現(xiàn)兩個(gè)寄存器的可控,應(yīng)當(dāng)給它們各分配一個(gè)端口地址,以便能按照端口地址進(jìn)行操作。 D/A轉(zhuǎn)換采用兩步寫(xiě)操作來(lái)完成。可在DAC0832轉(zhuǎn)換輸出前一個(gè)數(shù)據(jù)的同時(shí),將下一個(gè)數(shù)據(jù)傳送到輸入寄存器,以提高D/A轉(zhuǎn)換速度。還可用于多路數(shù)模轉(zhuǎn)換系統(tǒng),以實(shí)現(xiàn)多路模擬信號(hào)同步輸出的目的。

在所設(shè)計(jì)的電路中DAC0832采用的是單緩沖方式。

2 原理概述

單片機(jī)通過(guò)擴(kuò)展D/A轉(zhuǎn)換接口,結(jié)合靈活的程序可以方便地產(chǎn)生各種低頻信號(hào)。下面以正弦信號(hào)為例進(jìn)行說(shuō)明。

2.1 正弦波信號(hào)的產(chǎn)生原理

正弦波的產(chǎn)生比較特殊,它不能由單片機(jī)直接產(chǎn)生,它只能產(chǎn)生如圖3所示的階梯波來(lái)向正弦波逼近。

很顯然,在一個(gè)周期內(nèi)階梯波的階梯數(shù)目越多,單片機(jī)輸出的波形也就越接近正弦波。

先假定正弦波的振幅是2.56 V,則波谷對(duì)應(yīng)的數(shù)字量為最小值00H,波峰對(duì)應(yīng)的數(shù)字量為最大值FFH。將正弦波的第一個(gè)周期的波形按角度均分為若干等份,并計(jì)算出各點(diǎn)對(duì)應(yīng)的電壓值,電壓值計(jì)算方法:Vx=2.5·(1+sinθ),因?yàn)?0H~FFH對(duì)應(yīng)的數(shù)字量為0~255,所以根據(jù)算出的電壓就可直接寫(xiě)出各點(diǎn)所對(duì)應(yīng)的數(shù)字量。單片機(jī)將一個(gè)周期的數(shù)字量存入一定的存儲(chǔ)區(qū)域中,然后依次循環(huán)取出這些數(shù)字量,并送D/A電路轉(zhuǎn)換成階梯波,即近似的正弦波輸出。所輸出的正弦波的幅值可以通過(guò)D/A轉(zhuǎn)換電路實(shí)現(xiàn)。2.2 變頻原理

單片機(jī)產(chǎn)生的階梯逼近正弦波對(duì)應(yīng)的程序中加入了軟件延時(shí),最后再加入根據(jù)20H單元中的內(nèi)容進(jìn)行延時(shí)的延時(shí)程序,那么20H單元中的內(nèi)容一變,則輸出正弦波的頻率也就發(fā)生了變化。即:就是把一個(gè)正弦信號(hào)(階梯逼近)取樣、量化、編碼,形成一個(gè)正弦函數(shù)表儲(chǔ)存在了ROM中。合成時(shí)改變相位增量,由于相位增量不同,則一個(gè)周期內(nèi)的取樣點(diǎn)數(shù)也不同,從而達(dá)到頻率合成的目的。

正弦信號(hào)本身是非線性的,而其相位是線性的,如圖4所示。

因此,每隔一段時(shí)間△t(時(shí)鐘周期),有對(duì)應(yīng)的相位變化△p,即:

p=ω△t=2πf△t

從上式可以得到合成信號(hào)的頻率f為:

3 系統(tǒng)硬件設(shè)計(jì)

其系統(tǒng)硬件原理圖如圖5所示。

3.1 單片機(jī)選擇

本系統(tǒng)中使用AT89C51單片機(jī)。電路板上的EA引腳可利用跳線接電源,也可接地。因此,在此管座上可以插AT89C51,AT80C31等芯片。

3.2 D/A轉(zhuǎn)換電路

DAC0832與單片機(jī)的連接中對(duì)主要功能信號(hào)的處理方法如下:

圖中DAC0832與AT89C51的連接方式是單緩沖方式。這種單緩沖方式是DAC0832的兩個(gè)緩沖器同時(shí)受控,將CS與XFER相連受控于 AT89C51的P2.0信號(hào),WR1和WR2相連受控于AT89C51的WR信號(hào),由于P2.0連至DAC0832的CS,故該片的地址為FEFFH (無(wú)關(guān)位取“1”)。

3.3  開(kāi)關(guān)的功能和應(yīng)用

由于本設(shè)計(jì)中要用按鍵控制波形輸出,現(xiàn)將各按鍵說(shuō)明如下:

K0~K4分別與AT89C51的P1.0~P1.4相連,依次控制著鋸齒波、方波、三角波、梯形波、正弦波的產(chǎn)生。

通過(guò)對(duì)51單片機(jī)進(jìn)行D/A轉(zhuǎn)換接口擴(kuò)展,通過(guò)對(duì)INT0端設(shè)置按鈕改變20H單元中的內(nèi)容以調(diào)整頻率,利用中斷與查詢(xún)相結(jié)合的方式進(jìn)行波形選擇,具體可以通過(guò)對(duì)P1口來(lái)設(shè)置完成。例P1.0為鋸齒波信號(hào)選擇開(kāi)關(guān),當(dāng)加上電源后,自動(dòng)復(fù)位電路開(kāi)始工作,單片機(jī)開(kāi)始工作。當(dāng)K0鍵按下,即想要輸出鋸齒波時(shí),P1.0為低電平,掃描程序調(diào)用鋸齒波子程序,產(chǎn)生的數(shù)字信號(hào)送DAC0832進(jìn)行數(shù)模轉(zhuǎn)換,其輸出經(jīng)運(yùn)算放大電路后輸出鋸齒波。

4 軟件設(shè)計(jì)

4.1 主程序流程圖

程序流程圖如圖6所示。

4.2 正弦波的流程圖及子程序

4.2.1 流程圖

流程圖如圖7所示。

4.2.2 子程序

5 結(jié)  語(yǔ)

該信號(hào)源的設(shè)計(jì)是以MCS-51單片機(jī)和DAC0832為核心元件,結(jié)合較簡(jiǎn)捷的外圍電路來(lái)構(gòu)建低頻信號(hào)源。它能產(chǎn)生三角波、正弦波等5種信號(hào),本設(shè)計(jì)采用硬件和軟件相結(jié)合,電路較傳統(tǒng)的簡(jiǎn)單且操作方便,具有一定的參考價(jià)值。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

以下內(nèi)容中,小編將對(duì)信號(hào)發(fā)生器的相關(guān)內(nèi)容進(jìn)行著重介紹和闡述,希望本文能幫您增進(jìn)對(duì)信號(hào)發(fā)生器的了解,和小編一起來(lái)看看吧。

關(guān)鍵字: 信號(hào)發(fā)生器 信號(hào)源 發(fā)生器

在下述的內(nèi)容中,小編將會(huì)對(duì)信號(hào)發(fā)生器的相關(guān)消息予以報(bào)道,如果信號(hào)發(fā)生器是您想要了解的焦點(diǎn)之一,不妨和小編共同閱讀這篇文章哦。

關(guān)鍵字: 信號(hào)發(fā)生器 發(fā)生器 信號(hào)源

孔板流量計(jì)將是下述內(nèi)容的主要介紹對(duì)象,通過(guò)這篇文章,小編希望大家可以對(duì)孔板流量計(jì)的相關(guān)情況以及信息有所認(rèn)識(shí)和了解,詳細(xì)內(nèi)容如下。

關(guān)鍵字: 孔板流量計(jì) 流量計(jì) 信號(hào)源

智能天線又稱(chēng)自適應(yīng)天線陣列、可變天線陣列、多天線。智能天線指的是帶有可以判定信號(hào)的空間信息(比如傳播方向)和跟蹤、定位信號(hào)源的智能算法,并且可以根據(jù)此信息,進(jìn)行空域?yàn)V波的天線陣列。

關(guān)鍵字: 智能天線 智能算法 信號(hào)源

差分驅(qū)動(dòng)器可以由單端或差分信號(hào)驅(qū)動(dòng),今天我們就利用無(wú)端接或端接信號(hào)源來(lái)分析這兩種情況。01差分輸入、無(wú)端接信號(hào)源圖1顯示一個(gè)差分驅(qū)動(dòng)器由一個(gè)平衡的無(wú)端接信號(hào)源驅(qū)動(dòng)。這種情況通常是針對(duì)低阻抗信號(hào)源,信號(hào)源與驅(qū)動(dòng)器之間的連接...

關(guān)鍵字: 驅(qū)動(dòng)器 信號(hào)源 RS RF

在進(jìn)行CAN總線通信前,應(yīng)保證正確的總線配置,比如終端電阻。它是影響總線通信的重要組件,下面我們不考慮信號(hào)的完整性,只從信號(hào)幅度和時(shí)間常數(shù)方面分析不加終端電阻時(shí)的影響。??終端電阻添加要求根據(jù)ISO11898-2對(duì)終端電...

關(guān)鍵字: 電阻 終端 CAN總線 電平

差分驅(qū)動(dòng)器可以由單端或差分信號(hào)驅(qū)動(dòng),今天我們就利用無(wú)端接或端接信號(hào)源來(lái)分析這兩種情況。01差分輸入、無(wú)端接信號(hào)源圖1顯示一個(gè)差分驅(qū)動(dòng)器由一個(gè)平衡的無(wú)端接信號(hào)源驅(qū)動(dòng)。這種情況通常是針對(duì)低阻抗信號(hào)源,信號(hào)源與驅(qū)動(dòng)器之間的連接...

關(guān)鍵字: 驅(qū)動(dòng)器 信號(hào)源 RS RF

阻抗與阻抗變換

關(guān)鍵字: 變壓器 輸入端阻抗 信號(hào)源

談?wù)勛杩蛊ヅ涞睦斫?

關(guān)鍵字: 阻抗匹配 信號(hào)源

單片機(jī)

21600 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉