




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1第一章單片機(jī)的簡介一個(gè)8位的80c51微處理器,片內(nèi)256字節(jié)數(shù)據(jù)存儲(chǔ)器RAM/SFR,用以存放可以讀寫的數(shù)據(jù),如運(yùn)算的中間結(jié)果,最終結(jié)果以及欲顯示的數(shù)據(jù);片內(nèi)4kb程序存儲(chǔ)器FlashROM,用以存放程序,一些原始數(shù)據(jù)和表格;4個(gè)8位并行I/O口P0~P3,每個(gè)端口既可用作輸入,也可用作輸出;兩個(gè)16位的定時(shí)器/計(jì)數(shù)器,每個(gè)定時(shí)器/計(jì)數(shù)器都可設(shè)置成計(jì)數(shù)方式,用以對(duì)外部事件進(jìn)行計(jì)數(shù),也可設(shè)置成定時(shí)方式,并可以根據(jù)計(jì)數(shù)或者定時(shí)的結(jié)果實(shí)現(xiàn)計(jì)算機(jī)控制;具有5個(gè)中斷源,兩個(gè)中斷優(yōu)先級(jí)的中斷控制系統(tǒng);一個(gè)全雙工UART(通用異步接受發(fā)送器)的串行I/O口,用于實(shí)現(xiàn)單片機(jī)之間或者單片機(jī)與PC機(jī)之間的串行通信;片內(nèi)振蕩器和時(shí)鐘產(chǎn)生電路,但石英晶體和微調(diào)電容需要外接,最高允許震蕩頻率為24MHz;89c51與80c51相比具有節(jié)電工作方式,即休閑方式及掉電方式。1.1中央處理器(CPU):CPU是單片機(jī)內(nèi)部的核心部件,是一個(gè)8位二進(jìn)制數(shù)的中央處理單元,主要由運(yùn)算器、控制器和寄存器陣列構(gòu)成。1.1.1運(yùn)算器:基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第1頁。運(yùn)算器用來完成算術(shù)運(yùn)算和邏輯運(yùn)算功能,它是89C51內(nèi)部處理各種信息的主要部件。運(yùn)算器主要由算術(shù)邏輯單元(ALU)、累加器(ACC)、暫存寄存器(TMP1、TMP2)和狀態(tài)寄存器(PSW)組成。算術(shù)邏輯單元(ALU):89C51中的ALU由加法器和一個(gè)布爾處理器組成?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第1頁。累加器(ACC):用來存放參與算術(shù)運(yùn)算和邏輯運(yùn)算的一個(gè)操作數(shù)或運(yùn)算的結(jié)果。暫存寄存器(TMP1、TMP2):用來存放參與算術(shù)運(yùn)算和邏輯運(yùn)算的另一個(gè)操作數(shù),它對(duì)用戶不開放。狀態(tài)寄存器(PSW):PSW是一個(gè)8位標(biāo)志寄存器,用來存放ALU操作結(jié)果的有關(guān)狀態(tài)。1.1.2控制器:控制器是單片機(jī)內(nèi)部按一定時(shí)序協(xié)調(diào)工作的控制核心,是分析和執(zhí)行指令的部件??刂破髦饕沙绦蛴?jì)數(shù)器PC、指令寄存器IR、指令譯碼器ID和定時(shí)控制邏輯電路等構(gòu)成。程序計(jì)數(shù)器PC是專門用于存放現(xiàn)行指令的16位地址的。CPU就是根據(jù)PC中的地址到ROM中去讀取程序指令碼和數(shù)據(jù),并送給指令寄存器IR進(jìn)行分析。指令寄存器IR用于存放CPU根據(jù)PC地址從ROM中讀出的指令操作碼。指令譯碼器ID是用于分析指令操作的部件,指令操作碼經(jīng)譯碼后產(chǎn)生相應(yīng)于某一特定操作的信號(hào)。定時(shí)控制邏輯中定時(shí)部件用來產(chǎn)生脈沖序列和多種節(jié)拍脈沖。1.1.3寄存器陣列:寄存器陣列是單片機(jī)內(nèi)部的臨時(shí)存儲(chǔ)單元或固定用途單元,包括通用寄存器組和專用寄存器組。通用寄存器組用來存放過渡性的數(shù)據(jù)和地址,提高CPU的運(yùn)行速度。專用寄存器組主要用來指示當(dāng)前要執(zhí)行指令的內(nèi)存地址,存放特定的操作數(shù),指示指令運(yùn)行的狀態(tài)等。1.1.4存儲(chǔ)器:基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第2頁。89C51單片機(jī)內(nèi)部有256個(gè)字節(jié)的RAM數(shù)據(jù)存儲(chǔ)器和4?KB的閃存程序存儲(chǔ)器(Flash),當(dāng)不夠使用時(shí),可分別擴(kuò)展為64KB外部RAM存儲(chǔ)器和64KB外部程序存儲(chǔ)器。它們的邏輯空間是分開的,并有各自的尋址機(jī)構(gòu)和尋址方式。這種結(jié)構(gòu)的單片機(jī)稱為哈佛型結(jié)構(gòu)單片機(jī)?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第2頁。程序存儲(chǔ)器是可讀不可寫的,用于存放編好的程序和表格常數(shù)。數(shù)據(jù)存儲(chǔ)器是既可讀也可寫的,用于存放運(yùn)算的中間結(jié)果,進(jìn)行數(shù)據(jù)暫存及數(shù)據(jù)緩沖等。89C51單片機(jī)對(duì)外部電路進(jìn)行控制或交換信息都是通過I/O端口進(jìn)行的。單片機(jī)的I/O端口分為并行I/O端口和串行I/O端口,它們的結(jié)構(gòu)和作用并不相同。并行I/O端口:89C51有四個(gè)8位并行I/O端口,分別命名為P0口、P1口、P2口和P3口,它們都是8位準(zhǔn)雙向口,每次可以并行輸入或輸出8位二進(jìn)制信息。串行I/O端口:89C51有一個(gè)全雙工的可編程串行I/O端口,它利用了P3口的第二功能,即將P3.1引腳作為串行數(shù)據(jù)的發(fā)送線TXD,將P3.0引腳作為串行數(shù)據(jù)的接收線RXD。1.1.5定時(shí)器/計(jì)數(shù)器:89C51內(nèi)部有兩個(gè)16位可編程定時(shí)器/計(jì)數(shù)器,簡稱為定時(shí)器0(T0)和定時(shí)器1(T1),T0和T1分別由兩個(gè)8位寄存器構(gòu)成,其中T0由TH0(高8位)和TL0(低8位)構(gòu)成,T1由TH1(高8位)和TL1(低8位)構(gòu)成。TH0、TL0、TH1、TL1都是SFR中的特殊功能寄存器。T0和T1在TCON和TMOD的控制下可工作在定時(shí)器模式或計(jì)數(shù)器模式下,每種模式下又有不同的工作方式。當(dāng)定時(shí)或計(jì)數(shù)溢出時(shí)還可申請(qǐng)中斷。1.1.6中斷系統(tǒng):基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第3頁。單片機(jī)中的中斷是指CPU暫停正在執(zhí)行的原程序轉(zhuǎn)而為中斷源服務(wù)(執(zhí)行中斷服務(wù)程序),在執(zhí)行完中斷服務(wù)程序后再回到原程序繼續(xù)執(zhí)行。中斷系統(tǒng)是指基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第3頁。夠處理上述中斷過程所需要的部分電路。89C51的中斷系統(tǒng)由中斷源、中斷允許控制器IE、中斷優(yōu)先級(jí)控制器IP、定時(shí)器控制器TCON(中斷標(biāo)志寄存器)等構(gòu)成,IE、IP、TCON均為SFR特殊功能寄存器(見表2.2)。1.1.7內(nèi)部總線:總線是用于傳送信息的公共途徑??偩€可分為數(shù)據(jù)總線、地址總線和控制總線。單片機(jī)內(nèi)的CPU、存儲(chǔ)器、I/O接口等單元部件都是通過總線連接到一起的。采用總線結(jié)構(gòu)可以減少信息傳輸線的根數(shù),提高系統(tǒng)可靠性,增強(qiáng)系統(tǒng)靈活性。89C51單片機(jī)內(nèi)部總線是單總線結(jié)構(gòu),即數(shù)據(jù)總線和地址總線是公用的。1.1.889C51單片機(jī)引腳及其功能:89C51有40條引腳,與其他51系列單片機(jī)引腳是兼容的。這40條引腳可分為I/O端口線、電源線、控制線、外接晶體線四部分。其封裝形式有兩種:雙列直插封裝(DIP)形式和方形封裝形式,如圖所示?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第4頁?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第4頁。(a)雙列直插式封裝(b)方形封裝圖189C51封裝和引腳分配圖1.1.989C51單片機(jī)工作方式:單片機(jī)在開機(jī)時(shí)或在工作中因干擾而使程序失控或工作中程序處于某種死循環(huán)狀態(tài)等情況下都需要復(fù)位。復(fù)位的作用是使中央處理器CPU以及其他功能部件都恢復(fù)到一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開始工作。1.1.9.1復(fù)位原理:89C51單片機(jī)的復(fù)位靠外部電路實(shí)現(xiàn),信號(hào)由RESET(RST)引腳輸入,高電平有效,在振蕩器工作時(shí),只要保持RST引腳高電平兩個(gè)機(jī)器周期,單片機(jī)即復(fù)位。復(fù)位后,PC程序計(jì)數(shù)器的內(nèi)容為0000H,其他特殊功能寄存器的復(fù)位狀態(tài)如表2.5所示。片內(nèi)RAM中內(nèi)容不變。1.1.9.2常用復(fù)位電路:一般有上電復(fù)位、手動(dòng)開關(guān)復(fù)位和自動(dòng)復(fù)位電路三種,如圖所示?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第5頁?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第5頁。(a)上電復(fù)位電路;(b)手動(dòng)復(fù)位電路;(c)自動(dòng)復(fù)位電路圖2單片機(jī)復(fù)位電路圖1.1.9.389C51時(shí)鐘電路:單片機(jī)內(nèi)各部件之間有條不紊的協(xié)調(diào)工作,其控制信號(hào)是在一種基本節(jié)拍的指揮下按一定時(shí)間順序發(fā)出的,這些控制信號(hào)在時(shí)間上的相互關(guān)系就是CPU時(shí)序。而產(chǎn)生這種基本節(jié)拍的電路就是振蕩器和時(shí)鐘電路。89C51單片機(jī)內(nèi)部有一個(gè)用于構(gòu)成振蕩器的單級(jí)反相放大器,如圖所示。圖389C51內(nèi)部振蕩器電路圖引腳XTAL1為反相器輸入端,XTAL2為反相器輸出端。當(dāng)在放大器兩個(gè)引腳上外接一個(gè)晶體(或陶瓷振蕩器)和電容組成的并聯(lián)諧振電路作為反饋元件時(shí),便構(gòu)成一個(gè)自激振蕩器,如下圖所示?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第6頁?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第6頁。圖4內(nèi)部振蕩器等效電路圖1.2單片機(jī)的應(yīng)用領(lǐng)域1.2.1在智能儀器儀表的應(yīng)用:單片機(jī)具有體積小、功耗低、控制功能強(qiáng)、擴(kuò)展靈活、微型化和使用方便等優(yōu)點(diǎn),廣泛應(yīng)用于儀器儀表中,結(jié)合不同類型的傳感器,可實(shí)現(xiàn)諸如電壓、功率、頻率、濕度、溫度、流量、速度、厚度、角度、長度、硬度、元素、壓力等物理量的測量。采用單片機(jī)控制使得儀器儀表數(shù)字化、智能化、微型化,且功能比起采用電子或數(shù)字電路更加強(qiáng)大。例如精密的測量設(shè)備(功率計(jì),示波器,各種分析儀)。1.2.2在家用電器中的應(yīng)用:基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第7頁。可以這樣說,現(xiàn)在的家用電器基本上都采用了單片機(jī)控制,從電飯煲、洗衣機(jī)、電冰箱、空調(diào)機(jī)、彩電、其他音響視頻器材、再到電子秤量設(shè)備,五花八門,無所不在?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第7頁。1.2.3在工業(yè)控制中的應(yīng)用:用單片機(jī)可以構(gòu)成形式多樣的控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng)。例如工廠流水線的智能化管理,電梯智能化控制、各種報(bào)警系統(tǒng),與計(jì)算機(jī)聯(lián)網(wǎng)構(gòu)成二級(jí)控制系統(tǒng)等。1.2.4在計(jì)算機(jī)網(wǎng)絡(luò)和通信領(lǐng)域中的應(yīng)用:現(xiàn)代的單片機(jī)普遍具備通信接口,可以很方便地與計(jì)算機(jī)進(jìn)行數(shù)據(jù)通信,為在計(jì)算機(jī)網(wǎng)絡(luò)和通信設(shè)備間的應(yīng)用提供了極好的物質(zhì)條件,現(xiàn)在的通信設(shè)備基本上都實(shí)現(xiàn)了單片機(jī)智能控制,從手機(jī)、電話機(jī)、小型程控交換機(jī)、樓宇自動(dòng)通信呼叫系統(tǒng)、列車無線通信、再到日常工作中隨處可見的移動(dòng)電話,集群移動(dòng)通信,無線電對(duì)講機(jī)等。1.2.5單片機(jī)在醫(yī)用設(shè)備領(lǐng)域中的應(yīng)用:單片機(jī)在醫(yī)用設(shè)備中的用途亦相當(dāng)廣泛,例如醫(yī)用呼吸機(jī),各種分析儀,監(jiān)護(hù)儀,超聲診斷設(shè)備及病床呼叫系統(tǒng)等等。此外,單片機(jī)在工商、金融、科研、教育、國防航空等領(lǐng)域都有著十分廣泛的用途。1.3單片機(jī)的發(fā)展趨勢(shì)基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第8頁。單片機(jī)現(xiàn)在可以說是百花齊放,百家爭鳴的時(shí)期,世界上各大芯片制造公司都推出了自己的單片機(jī),從8位、16位到32位,數(shù)不勝數(shù),應(yīng)有盡有,有與主流C51系列兼容的,也有不兼容的,但它們各具特色,互成互補(bǔ),為單片機(jī)的應(yīng)用提供了廣闊的天地?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第8頁??v觀單片機(jī)的發(fā)展過程,可以預(yù)示單片機(jī)的發(fā)展趨勢(shì),大致有:1.3.1微型單片化:現(xiàn)在常規(guī)的單片機(jī)普遍都是將中央處理器(CPU)、隨機(jī)存取數(shù)據(jù)存儲(chǔ)(RAM)、只讀程序存儲(chǔ)器(ROM)、并行和串行通信接口,中斷系統(tǒng)、定時(shí)電路、時(shí)鐘電路集成在一塊單一的芯片上,增強(qiáng)型的單片機(jī)集成了如A/D轉(zhuǎn)換器、PMW(脈寬調(diào)制電路)、WDT(看門狗)、有些單片機(jī)將LCD(液晶)驅(qū)動(dòng)電路都集成在單一的芯片上,這樣單片機(jī)包含的單元電路就更多,功能就越強(qiáng)大。甚至單片機(jī)廠商還可以根據(jù)用戶的要求量身定做,制造出具有自己特色的單片機(jī)芯片。此外,現(xiàn)在的產(chǎn)品普遍要求體積小、重量輕,這就要求單片機(jī)除了功能強(qiáng)和功耗低外,還要求其體積要小?,F(xiàn)在的許多單片機(jī)都具有多種封裝形式,其中SMD(表面封裝)越來越受歡迎,使得由單片機(jī)構(gòu)成的系統(tǒng)正朝微型化方向發(fā)展。1.3.2低功耗CMOS化:基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第9頁。MCS-51系列的8031推出時(shí)的功耗達(dá)630mW,而現(xiàn)在的單片機(jī)普遍都在100mW左右,隨著對(duì)單片機(jī)功耗要求越來越低,現(xiàn)在的各個(gè)單片機(jī)制造商基本都采用了CMOS(互補(bǔ)金屬氧化物半導(dǎo)體工藝)。像80C51就采用了HMOS(即高密度金屬氧化物半導(dǎo)體工藝)和CHMOS(互補(bǔ)高密度金屬氧化物半導(dǎo)體工藝)。CMOS雖然功耗低,但由于其物理特征決定其工作速度不夠高,而CHMOS則具備了高速和低功耗的特點(diǎn),這些特征,更適合于要求低功耗像電池供電的應(yīng)用場合。所以這種工藝將是今后一段時(shí)期單片機(jī)發(fā)展的主要途徑?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第9頁。1.3.3主流與多品種共存:現(xiàn)在雖然單片機(jī)的品種繁多,各具特色,但仍以80C51為核心的單片機(jī)占主流,兼容其結(jié)構(gòu)和指令系統(tǒng)的有PHILIPS公司的產(chǎn)品,ATMEL公司的產(chǎn)品和中國臺(tái)灣的Winbond系列單片機(jī)。所以80C51占據(jù)了半壁江山。而Microchip公司的PIC精簡指令集合(RISC)也有著強(qiáng)勁的發(fā)展勢(shì)頭,中國臺(tái)灣的HOLTEX公司近年的單片機(jī)產(chǎn)量與日俱增,與其底價(jià)質(zhì)優(yōu)的優(yōu)勢(shì),占據(jù)一定的市場份額。此外還有MOTOROLA公司的產(chǎn)品,日本幾大公司的專用單片機(jī)。在一定的時(shí)期內(nèi),這種情形將得以延續(xù),將不存在某個(gè)單片機(jī)一統(tǒng)天下的壟斷局面,走的是依存互補(bǔ)、相輔相成、共同發(fā)展的道路。九十年代以后,單片機(jī)在結(jié)構(gòu)上采用雙CPU或內(nèi)部流水線,CPU位數(shù)有8位、16位、32位,時(shí)鐘頻率高達(dá)20MHZ,片內(nèi)帶有PWM輸出、監(jiān)視定時(shí)器WDT、可編程計(jì)數(shù)器陣列PCA、DMA傳輸、調(diào)制解調(diào)器等。芯片向高度集成化、低功耗方向的發(fā)展,使得單片機(jī)在大量數(shù)據(jù)的實(shí)時(shí)處理、高級(jí)通信系統(tǒng)、數(shù)字信號(hào)處理、復(fù)雜工業(yè)過程控制、高級(jí)機(jī)器人以及局域網(wǎng)等方面得到大量應(yīng)用。這類單片機(jī)有NEC公司的MPD7800,MITSUBISHI公司的M337700,REVKWELL公司的R6500?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第10頁?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第10頁。第二章AD9954簡介2.1AD9954的內(nèi)部結(jié)構(gòu)AD9954的內(nèi)部結(jié)構(gòu)如圖1所示,其主要特性如下:●內(nèi)置400MSPs時(shí)鐘;●內(nèi)含l4位DAC;●相位、幅度可編程;●有32位頻率轉(zhuǎn)換字;●可用串行I/O控制;●內(nèi)置超高速模擬比較器●可自動(dòng)線性和非線性掃頻●內(nèi)部集成有1024X32位RAM;●采用1.8V電源供電;●可420倍倍頻;●支持大多數(shù)數(shù)字輸入中的5、,輸入電平;基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第11頁?!窨蓪?shí)現(xiàn)多片同步?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第11頁。2.2引腳說明AD9954采用48腳TQFP/EP封裝,其引腳排列如圖2所示,各引腳定義如下:I/0UPDATE:在該引腳的上升沿可把內(nèi)部緩沖存儲(chǔ)器中的內(nèi)容送到I/O寄存器中。引腳電平的建立和保持與SYNC-CLK輸出信號(hào)有關(guān);DVDD和AVDD:數(shù)字與模擬電源引腳,電壓值為1.8V;DGND和AGND:數(shù)字地與模擬地;OSC/RE~CLK和OSC/REFCLK:參考時(shí)鐘或振蕩輸入端;限srAI。OUT:振蕩器輸出端;CLKMODESEt.ECT:振蕩器控制端,為1時(shí)使能振蕩器,為0時(shí)不使能振蕩器;LOOP—FILTER:該引腳應(yīng)與AVDD間串聯(lián)一個(gè)1kQ電阻和一個(gè)0.1ttF電容;IOUT和IOUT:DAC輸出端,使用時(shí)應(yīng)接一個(gè)上拉電阻;DACBP:DAC去耦端,使用時(shí)應(yīng)接一個(gè)0.01ttF的旁路電容;DAC—R鯽:DAC復(fù)位端,使用時(shí)應(yīng)通過一個(gè)3.92kQ的電阻接至AGND端;基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第12頁。COoUT:比較器輸出端,可以輸出方波或脈沖信號(hào);基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第12頁。COMP_IN和COMP—IN:比較器輸入端;PWRDWNCTL:外部電源掉電控制輸入引腳;砒蕊r:芯片復(fù)位端;IOSYNC:異步串行端口控制復(fù)位引腳;為1時(shí),當(dāng)前I/O操作立即停止;為0時(shí)開始新的I/O操作;不用時(shí),此引腳必須接地;SDO:采用3線串口操作時(shí),SDO為串行數(shù)據(jù)輸出端。采用2線串口操作時(shí),SDO不用,可以不連;C—S:片選端,低電平有效,允許多芯片共用I/O總線;SCLK:I/O操作的串行數(shù)據(jù)時(shí)鐘輸入端;sD10:采用3線串口操作時(shí),SDO為串行數(shù)據(jù)輸入端,采用2線操作時(shí),SDO為雙向串行數(shù)據(jù)端;DVDD_I/o:I/0電源,可以是1.8v或3.3V;基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第13頁。SYNC—IN:同步多片AD9954的輸入信號(hào),使用時(shí)與主AD9954的SYNC—CLK的輸出相連;基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第13頁。SYNC—CLK:時(shí)鐘輸出腳,為內(nèi)部時(shí)鐘的1/4,可用作外圍硬件同步;OSK:在編程操作時(shí)可用該腳來控制幅度與時(shí)間斜率,與SYNC-CLK同步;當(dāng)OSK不能被編程時(shí),此腳接DGND;PS1和PS0:可用來選擇4個(gè)RAM段控制字區(qū)中的一個(gè)。2.3AD9954的串行操作在AD9954的串行操作中,指令字節(jié)用來指定讀/寫操作和寄存器地址。由于串行操作是在寄存器級(jí)別上發(fā)生的,因此串行端口控制器應(yīng)能識(shí)別指令字節(jié)寄存器地址和自動(dòng)產(chǎn)生適當(dāng)?shù)募拇嫫髯止?jié)地址。在串行操作指令階段和通信階段,一般先傳送指令階段的指令字,指令階段對(duì)應(yīng)于SCLK的前8個(gè)上升沿,其對(duì)應(yīng)的指令字(8比特)包含了以下信息:其中R/W位用于決定指令字后的操作是讀還是寫,高電平為讀出,低電平為寫入;6、5位的電平高低與操作無關(guān);4~0位則對(duì)應(yīng)于A4~A0,表示操作串行寄存器地址,該地址信息同時(shí)包含了與該指令字所在指令段對(duì)應(yīng)的通信段的傳送字節(jié)數(shù)。指令階段后接著是通訊階段,傳送對(duì)應(yīng)于字節(jié)數(shù)的幾個(gè)通信周期?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第14頁。通信周期完成后,AD9954的串口控制器即認(rèn)為接下來的8個(gè)SCLK的上升沿對(duì)應(yīng)的是下一個(gè)通信周期的指令字。IOSYNC引腳為高時(shí)將立即終止當(dāng)前的通信周期,而當(dāng)IOSYNC引腳狀態(tài)回到低電平時(shí),AD9954串口控制器即認(rèn)為接下來的8個(gè)系統(tǒng)時(shí)鐘的上升沿對(duì)應(yīng)的是下一個(gè)通信周期的指令字,從而保持通信的同步?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第14頁。AD9954的串行操作有兩種數(shù)據(jù)傳送方式,即從最高位開始傳送和從最低位開始傳送,這是由控制寄存器0的第8位來決定的。默認(rèn)狀態(tài)為低電平,此時(shí)先傳送最高位,若為高電平則先傳送最低位。串行操作的讀/寫時(shí)序如圖3所示。2.4AD9954的RAM基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第15頁。AD9954內(nèi)部的1024×32靜態(tài)RAM具有雙向單一人口,對(duì)它進(jìn)行的讀/寫操作不能同時(shí)進(jìn)行,寫操作優(yōu)先。RAM的使能位是CFR<31>(控制功能寄存器的31位),此位為低時(shí),對(duì)RAM的操作只能通過串行端口;此位為高且CFR<30>為邏輯0時(shí),RAM的輸出為相位累加器的輸入,此時(shí)給芯片提供的是頻率轉(zhuǎn)換字;此位為高且CFR<30>為邏輯1時(shí),RAM的輸出可作為相位偏移加法器的輸入給芯片提供相位偏移控制字。寫RAM的操作首先通過控制PSI、PSO來選擇RAM段,然后再對(duì)相應(yīng)的RAM控制寄存器寫RAM操作的地址變化率、起始地址、終止地址、模式控制和停留方式位。RAM段控制寄存器的5、6、7位可用來指示RAM操作的5種模式,即直接轉(zhuǎn)換模式、上斜坡模式、雙向斜變模式、連續(xù)雙向斜變模式和連續(xù)循環(huán)模式。其中連續(xù)循環(huán)模式是使能RAM,RAM模式控制字為100,這種模式可提供自動(dòng)、連續(xù)、單向的掃頻,地址發(fā)生器從起始地址開始,當(dāng)其增加到終止地址后會(huì)自動(dòng)回到起始地址重新開始下次循環(huán)?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第15頁。RAM段控制寄存器的3924位可定義RAM控制器在每個(gè)地址停留的SYNC-CIK的周期數(shù).取值范圍是1—65535;9、8、23—16位用于定義10位終止地址;3—0、15—10位則用于定義10位起始地址。寄存器表1。2.5如下為DDS的基本原理基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第16頁。基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第16頁?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第17頁?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第17頁?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第18頁?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第18頁?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第19頁?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第19頁?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第20頁?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第20頁。基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第21頁?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第21頁?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第22頁?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第22頁。第三章單片機(jī)與AD9954通信3.1硬件原理AD9954發(fā)射出信號(hào)電平轉(zhuǎn)換單片機(jī)8051AT89S52AD9954發(fā)射出信號(hào)電平轉(zhuǎn)換單片機(jī)8051AT89S523.2程序圖主函數(shù)主函數(shù)寫入頻率將浮點(diǎn)型頻率值MHZ轉(zhuǎn)換成頻率控制字頻率控制字寫入AD9954發(fā)出頻率此程序的關(guān)健是單片機(jī)與AD9954進(jìn)行通信,只須看懂時(shí)序圖就可以了?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第23頁?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第23頁。第四單調(diào)試下面用KEILuVision與porteus仿真軟件介紹數(shù)字計(jì)算器的仿真與調(diào)試。4.1KeilC51單片機(jī)軟件開發(fā)系統(tǒng)4.1.1系統(tǒng)的整體結(jié)構(gòu):C51工具包的整體結(jié)構(gòu)中,其中uVision與Ishell分別是C51forWindows和forDos的集成開發(fā)環(huán)境(IDE),可以完成編輯、編譯、連接、調(diào)試、仿真等整個(gè)開發(fā)流程。開發(fā)人員可用IDE本身或其它編輯器編輯C或匯編源文件。然后分別由C51及A51編譯器編譯生成目標(biāo)文件(.OBJ)。目標(biāo)文件可由LIB51創(chuàng)建生成庫文件,也可以與庫文件一起經(jīng)L51連接定位生成絕對(duì)目標(biāo)文件(.ABS)。ABS文件由OH51轉(zhuǎn)換成標(biāo)準(zhǔn)的Hex文件,以供調(diào)試器dScope51或tScope51使用進(jìn)行源代碼級(jí)調(diào)試,也可由仿真器使用直接對(duì)目標(biāo)板進(jìn)行調(diào)試,也可以直接寫入程序存貯器如EPROM中。4.1.2采用KEIL開發(fā)的89c51單片機(jī)應(yīng)用程序步驟:★.在uVision集成開發(fā)環(huán)境中創(chuàng)建新項(xiàng)目(Project),擴(kuò)展文件名為.UV2,并為該項(xiàng)目選定合適的單片機(jī)CPU器件(本設(shè)計(jì)采用ATMEL公司下的AT89C51)★.用uVision的文本編輯器編寫源文件,可以是匯編文件(.ASM),也可以使C語言文件(擴(kuò)展名.C),并將該文件添加到項(xiàng)目中去。一個(gè)項(xiàng)目文件可以包含多個(gè)文件,除了源程序文件外,還可以是庫文件、頭文件或文本說明文件?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第24頁?!?通過uVision2的相關(guān)選擇項(xiàng),配置編譯環(huán)境、連接定位器以及Debug調(diào)試器的功能?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第24頁?!?對(duì)項(xiàng)目中的源文件進(jìn)行編譯連接,生成絕對(duì)目標(biāo)代碼和可選的HEX文件,如果出現(xiàn)編譯連接錯(cuò)誤則返回到第2步,修改源文件中的錯(cuò)誤后重構(gòu)整個(gè)項(xiàng)目?!?對(duì)沒有語法錯(cuò)誤的程序進(jìn)行仿真調(diào)試,調(diào)試成功后將HEX文件寫入到單片機(jī)應(yīng)用系統(tǒng)的ROM中?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第25頁?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第25頁。第五章結(jié)束語畢業(yè)設(shè)計(jì)是培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識(shí),發(fā)現(xiàn)、提出、分析和解決實(shí)際問題,鍛煉實(shí)踐能力的重要環(huán)節(jié),是對(duì)學(xué)生實(shí)際工作能力的具體訓(xùn)練和考察過程。隨著科學(xué)技術(shù)發(fā)展的日新日異,單片機(jī)已經(jīng)成為當(dāng)今計(jì)算機(jī)應(yīng)用中空前活躍的領(lǐng)域,在生活中可以說得是無處不在。因此作為自動(dòng)化專業(yè)的學(xué)生來說掌握單片機(jī)的開發(fā)技術(shù)是十分重要的。我的題目是單片機(jī)與AD9954硬軟件的設(shè)計(jì),對(duì)于我們這些工科學(xué)生來說,這是一次考驗(yàn)。怎么才能找到課堂所學(xué)與實(shí)際應(yīng)用的最佳結(jié)合點(diǎn)?怎樣讓自己的業(yè)余更接近專業(yè)?怎樣讓自己的計(jì)劃更具有序性,而不會(huì)忙無一用?這都是我們所要考慮和努力的。這次畢業(yè)設(shè)計(jì)我學(xué)到很多很多的東西,學(xué)會(huì)了怎么樣去制定計(jì)劃,怎么樣去實(shí)現(xiàn)這個(gè)計(jì)劃,并掌握了在執(zhí)行過程中怎么樣去克服心理上的不良情緒。不僅鞏固了以前所學(xué)過的知識(shí),而且學(xué)到了很多在書本上所沒有學(xué)到過的知識(shí),掌握了一種系統(tǒng)的研究方法,可以進(jìn)行一些簡單的編程。通過這次畢業(yè)設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來,從理論中得出結(jié)論,才能真正為社會(huì)服務(wù),從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第26頁。同時(shí)在設(shè)計(jì)的過程中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)過的知識(shí)理解得不夠深刻,掌握得不夠牢固,對(duì)單片機(jī)匯編語言掌握得不夠好。這次畢業(yè)設(shè)計(jì)通過自己的努力,同學(xué)的幫助,還有老師的辛勤指導(dǎo)下,最終順利完成了。基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第26頁。參考文獻(xiàn):[1]侯玉寶,陳忠平,,李成群.《基于Proteus的51系列單片機(jī)設(shè)計(jì)與仿真》北京電子工業(yè)出版社,2008[2]沈德金,陳粵初.MCS-51系列單片機(jī)接口電路與應(yīng)用程序?qū)嵗本┖娇蘸教齑髮W(xué)出版社,1990[3]胡漢才.單片機(jī)原理及接口技術(shù).清華大學(xué)出版社,1996[4]何立民.MCS-51系列單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì).北京航空航天大學(xué)出版社,1990.1[5]張毅剛、彭喜元、姜守達(dá)、喬立巖.新編MCS-51系列單片機(jī)應(yīng)用設(shè)計(jì).哈爾濱工業(yè)大學(xué)出版社,2003.6[6]康萬新,謝維成,楊加國.《畢業(yè)設(shè)計(jì)指導(dǎo)及案例剖析》,清華大學(xué)出版社,2007年[7]馬忠梅等.《單片機(jī)C語言應(yīng)用程序設(shè)計(jì)》.北京航空航天大學(xué)出版社,1997:201-211[8]付家才,《單片機(jī)控制工程實(shí)踐技術(shù)》,化學(xué)工業(yè)出版社,2004年[9]及力,馬東升.《Protel99SE原理圖與PCB設(shè)計(jì)教程》,電子工業(yè)出版社,2007年[10]黃智偉.《全國大學(xué)生電子設(shè)計(jì)競賽系統(tǒng)設(shè)計(jì)》,北京航空航天大學(xué)出版社,2006年基于單片機(jī)實(shí)現(xiàn)的基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第27頁。附表一:基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第28頁?;趩纹瑱C(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第28頁。附表二:#include<reg51.h>//#include"AD9954.h"unsignedlongCFR1=0;unsignedlongCFR1SLAVE=0x00800000;unsignedlongCFR2=0;unsignedlongASF;unsignedlongARR;unsignedlongFTW0;unsignedlongPOW0;unsignedlongFTW1;unsignedlongNLSCW=0xFF000053E2;unsignedlongPLSCW=0xFF000053E2; unsignedlongmultfreq=0xFFFFFFFF;//計(jì)算頻率控制字的系數(shù)unsignedlongCS2,PWR,RET,CLKMS;sbitPS1=P1^0;sbitPS0=P1^1;//RAM部分先擇控制sbitSDIO=P1^3;//當(dāng)做為3線口操作時(shí)做為串行數(shù)據(jù)輸入,采用2線時(shí),為雙向數(shù)據(jù)口sbitSCLK=P1^4;//串行數(shù)據(jù)時(shí)鐘輸入端sbitCS=P1^5;//片選項(xiàng),允許多個(gè)芯片共用I/O總線 sbitOSK=P1^2;//編程操作時(shí)用來控制幅度與時(shí)間的斜率sbitIO_UPDATE=P2^1;//在上升沿將buffer中的數(shù)據(jù)送到I/O寄存器中sbitIO_SYNC=P1^7;//異步串行端口復(fù)位控制,為高停止,為0時(shí)繼續(xù)開始新的I/O操作sbitSDO=P1^6;//sbitjiak=P2^3;//sbityouyik=P2^2;基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第29頁。//sbitzuoyik=P2^1;基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第29頁。//sbitjiank=P2^0;/*************************************************************************函數(shù)名稱:端口操作**功能描述:AD9954端口基本操作**輸入:無**輸出:無**全局變量:無**調(diào)用模塊:無***********************************************************************/voidSCLK_0(void){SCLK=0;}voidSCLK_1(void){SCLK=1;}voidSDIO_0(void){SDIO=0;}voidSDIO_1(void){SDIO=1;}voidCS_Enable(void)基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第30頁。{基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第30頁。CS=0;}voidCS_Disable(void){CS=1;}voidCS2_Enable(void){CS2=0;}voidCS2_Disable(void){CS2=1;}voidIO_UPDATE_0(void){IO_UPDATE=0;}voidIO_UPDATE_1(void){IO_UPDATE=1;}voidIO_SYNC_1(void){IO_SYNC=1;}voidIO_SYNC_0(void)基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第31頁。{基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第31頁。IO_SYNC=0;}voidPS0_Set_High(void){PS0=1;}voidPS0_Set_Low(void){PS0=0;}voidPS1_Set_High(void){PS1=1;}voidPS1_Set_Low(void){PS1=0;}/*************************************************************************函數(shù)名稱:IO9954_Init**功能描述:IO_Init**輸入:無**輸出:無**全局變量:無**調(diào)用模塊:無***********************************************************************/voidIO9954_Init()基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第32頁。{基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第32頁。PWR=0;RET=0;CS2=0;CLKMS=0;IO_UPDATE=0;IO_SYNC=0;SDIO=0;SCLK=0;CS=0;SDO=0;}/*************************************************************************函數(shù)名稱:nNop**功能描述:US級(jí)軟件延時(shí)(不精確)**輸入:延時(shí)參數(shù),值越大時(shí)延時(shí)越久**輸出:無**全局變量:無**調(diào)用模塊:無***********************************************************************/voidnNop(unsignedlongnValue){unsignedlongi;for(i=nValue;i>0;i--);}/*************************************************************************函數(shù)名稱:WriteByte**功能描述:向AD9954發(fā)送一字節(jié)數(shù)據(jù)MSBFIRST**輸入:unsignedchardata發(fā)送的數(shù)據(jù)**輸出:無基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第33頁。**全局變量:無基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第33頁。**調(diào)用模塊:端口操作nNop***********************************************************************/voidWriteByte(unsignedcharData){unsignedchark;for(k=0;k<8;k++){SCLK_0();nNop(4);//延時(shí)很重要if((Data&0x80)==0x80)SDIO_1();elseSDIO_0();Data=Data<1;nNop(2);//延時(shí)很重要SCLK_1();nNop(4);//延時(shí)很重要}}/*************************************************************************函數(shù)名稱:ReadByte**功能描述:從AD9954讀取一字節(jié)數(shù)據(jù)MSBFIRST**輸入:無**輸出:unsignedchar讀回的數(shù)據(jù)**全局變量:無**調(diào)用模塊:端口操作***********************************************************************/unsignedcharReadByte(void){unsignedcharData=0;unsignedchark;基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第34頁。SDIO=0;基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第34頁。for(k=0;k<8;k++){SCLK_0();nNop(1);nNop(1);SCLK_1();nNop(1);nNop(1);Data=Data<<1;if(SDIO){Data|=0x01;}}SDIO=1;returnData;}/*************************************************************************函數(shù)名稱:RW_Reg**功能描述:AD9954讀寫寄存器操作**輸入:unsignedcharaddr寄存器地址**unsignedchar*buf寫寄存器:指向發(fā)送數(shù)據(jù)的指針**讀寄存器:指向讀回?cái)?shù)據(jù)的指針**unsignedcharnum發(fā)送或讀回的數(shù)據(jù)長度numByte**unsignedcharrw讀寫選擇1讀0寫**輸出:無**全局變量:無**調(diào)用模塊:ReadByteWriteByte***********************************************************************/voidRW_Reg(unsignedcharaddr,unsignedchar*buf,unsignedcharnum,unsignedcharrw)基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第35頁。{基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第35頁。unsignedcharins;if(rw==1){ins=addr|0x80;WriteByte(ins);do{buf[num-1]=ReadByte();num--;nNop(5);}while(num);}else{ins=addr;WriteByte(ins);do{WriteByte(buf[num-1]);num--;nNop(5);}while(num);}}/*************************************************************************函數(shù)名稱AD9954_Write_Reg**功能描述:AD9954寫寄存器操作**輸入:unsignedlongcommand寫入寄存器的指令**unsignedcharnum發(fā)送或讀回的數(shù)據(jù)長度numByte**unsignedcharaddr寄存器地址**輸出:無**全局變量:無基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第36頁。**調(diào)用模塊:RW_Reg基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第36頁。***********************************************************************/voidAD9954_Write_Reg(unsignedlongcommand,unsignedcharnum,unsignedcharaddr){unsignedchartemp_com[5]={0,0,0,0,0};unsignedchari;unsignedlongtemp;temp=command;for(i=0;i<num;i++){temp_com[i]=(temp&0xff);temp=temp>>8;}RW_Reg(addr,temp_com,num,0);}/***********************************************************************??**函數(shù)名稱:FTW_Float**功能描述:將浮點(diǎn)型頻率值MHZ轉(zhuǎn)換成頻率控制字**輸入:floatfreqfloat浮點(diǎn)型頻率值MHZ**輸出:unsignedlong4byte頻率控制字**全局變量:無**調(diào)用模塊:無***********************************************************************/unsignedlongFTW_Float(floatfreqfloat){unsignedlongtemp=0;floatfreqf=0;freqf=freqfloat/20;//AD9954主頻20MHZtemp=(freqf*multfreq);基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第37頁。return(temp);基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第37頁。}/***********************************************************************??**函數(shù)名稱:更新數(shù)據(jù)操作**功能描述:每次更新寄存器的固定操作**輸入:無**輸出:無**全局變量:無**調(diào)用模塊:無***********************************************************************/voidAD9954_Updata_First(void){IO9954_Init();CS_Enable();IO_SYNC_1();nNop(40);IO_SYNC_0();IO_UPDATE_0();}voidAD9954_Updata_Final(void){CS_Disable();nNop(20);IO_UPDATE_1();}/******************************************************************************Single-ToneMode******************************************************************************/基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第38頁。/***********************************************************************基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第38頁。**函數(shù)名稱:AD9954_SingleTone_Init**功能描述:AD9954Single-ToneMode初始化**輸入:無**輸出:無**全局變量:CFR1CFR2AD9954功能控制寄存器**調(diào)用模塊:AD9954_Write_Reg***********************************************************************/voidAD9954_SingleTone_Init(void){CFR1=0x00000000;AD9954_Updata_First();AD9954_Write_Reg(CFR1,4,0x00);//控制寄存器1AD9954_Write_Reg(CFR2,3,0x01);//控制寄存器2AD9954_Updata_Final();}/*************************************************************************函數(shù)名稱:AD9954_SingleTone_Freq**功能描述:更新頻率控制**輸入:無**輸出:無**全局變量:FTW0**調(diào)用模塊:AD9954_Write_Reg更新寄存器操作***********************************************************************/voidAD9954_SingleTone_Freq(floatfreq){FTW0=FTW_Float(freq);AD9954_Updata_First();AD9954_Write_Reg(FTW0,4,0x04);//設(shè)置全局輸出頻率AD9954_Updata_Final();基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第39頁。}基于單片機(jī)實(shí)現(xiàn)的定時(shí)器設(shè)計(jì)全文共43頁,當(dāng)前為第39頁。/*************************************************************************函數(shù)名稱:更新寄存器操作**功能描述:每次更新寄存器的固定操作**輸入:無**輸出:無**全局變量:無**調(diào)用模塊:無***********************************************************************/voidAD9954_Update(void)
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 薪酬管理與績效管理辦法
- 蛋雞養(yǎng)殖場防疫管理辦法
- 衡水市中學(xué)食堂管理辦法
- 裝修工人工作室管理辦法
- 西安市保理公司管理辦法
- 規(guī)模種植苦麥菜管理辦法
- 設(shè)計(jì)院裝修工程管理辦法
- 調(diào)度管理及流轉(zhuǎn)管理辦法
- 質(zhì)量發(fā)展專家?guī)旃芾磙k法
- 貴州省公益項(xiàng)目管理辦法
- 新教科版六下科學(xué)4-6《生命體中的化學(xué)變化》教案
- 2023高中學(xué)業(yè)水平合格性考試歷史重點(diǎn)知識(shí)點(diǎn)歸納總結(jié)(復(fù)習(xí)必背)
- 自然指數(shù)NatureIndex(NI)收錄的68種自然科學(xué)類期刊
- 手術(shù)報(bào)告審批單
- 《專業(yè)導(dǎo)論光電信息科學(xué)與工程》教學(xué)大綱
- 廣東省湛江市各縣區(qū)鄉(xiāng)鎮(zhèn)行政村村莊村名明細(xì)
- 煤礦智能化綜采工作面系統(tǒng)運(yùn)行維護(hù)管理制度
- 少兒美術(shù)國畫- 少兒希望 《紫藤課件》
- 建立良好的同伴關(guān)系-課件-高二心理健康
- 老年人健康管理隨訪表
- 高一物理競賽試題和答案
評(píng)論
0/150
提交評(píng)論