freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于at89s52單片機(jī)信號發(fā)生器設(shè)計畢業(yè)論文-閱讀頁

2025-07-11 06:11本頁面
  

【正文】 可以改變AD9850的輸出相位。40位控制/數(shù)據(jù)字通過AD9850的D7引腳在W_CLK引腳的脈沖信號上升邊沿作用下分40次裝入。完成40位控制/數(shù)據(jù)字的裝載后,F(xiàn)Q_UD引腳的脈沖信號上升沿刷新AD9850的工作狀態(tài),同時復(fù)位寄存器指針,準(zhǔn)備下一次位控制/數(shù)據(jù)字的裝入。單片機(jī)與AD9850的接口既可采用并行方式,也可采用串行方式,但為了充分發(fā)揮芯片的高速性能,應(yīng)在單片機(jī)資源允許的情況下盡可能選擇并行方式,本系統(tǒng)采用AT89S52 單片機(jī)作為控制核心,通過串行寫入控制字的方式控制AD9850 芯片,加上鍵盤和LCD 顯示部分等外圍電路,構(gòu)成整個系統(tǒng)電路。單片機(jī)采用12 MHz晶振時,它的高電平時間能夠滿足AD9850 復(fù)位要求,故可將AD9850 的復(fù)位端與單片機(jī)的復(fù)位端直接相連。常用的濾波器的頻率響應(yīng)有三種:巴特沃斯型(Butterworth),切比雪夫型 (Chebyshev)和橢圓型 (Cauer)。切比雪夫濾波器在通帶內(nèi)衰減在零值和一個上限值之間做等起伏變化,阻帶內(nèi)衰減單調(diào)增大,帶內(nèi)有起伏,但過渡帶比較陡峭。比較起來,橢圓濾波器性能更好,本設(shè)計中采用的是橢圓濾波器[10]。程序流程圖如下是否DDS的時鐘頻率很高,對周圍電路有一定影響,在電路中采取了一些抗干擾措施,如:引線盡量短,減少交叉,每個芯片的電源與地之間都解憂去耦電容,數(shù)字地與模擬地分開。 本系統(tǒng)的軟件調(diào)試可以在Keil uvision2的環(huán)境中完成,Keil系統(tǒng)為軟件的開發(fā)和調(diào)試提供了良好的用戶界面和強(qiáng)大的功能,程序調(diào)試無誤后,也可以直接下載到單片機(jī)中進(jìn)行調(diào)試。//函數(shù)聲明,變量定義include include include define data_OUT P1 //定義管腳sbit FQ_UD=P3^0。 unsigned char CON_word[5]。 for(i=0。i++)。 FQ_UD=0。 delay(0)。0xFC。i5。 //送控制字 W_CLK=0。 W_CLK=1。 } FQ_UD=1。WRITE_AD9850()。 電路實現(xiàn)的基本步驟 1)單片機(jī)方案設(shè)計。本系統(tǒng)的原理圖繪制和PCB繪制都是在Protel99se中完成。根據(jù)該電路板土就可以加工生成印刷電路板。 5)程序的調(diào)試和燒錄:印刷電路板制作完畢,將器件焊接于其上,并進(jìn)行單片機(jī)程序的燒錄和電路的調(diào)試[11]。 2) 加載元件庫 在電路圖放置元件之前,必須先加載庫文件。 3) 繪制電路圖 放置元件、繪制導(dǎo)線、放置電源部件、放置電氣連接點、放置文字標(biāo)注。 5) 保存原理圖。通過搜集目前DDS技術(shù)的相關(guān)資料,了解國內(nèi)外DDS信號發(fā)生器的相關(guān)制作方法,并通過設(shè)計方案的比較,針對設(shè)計任務(wù)提出了可行方案。根據(jù)設(shè)計方案,詳細(xì)地闡述了單片機(jī)的控制原理、AD9850的使用方法、PCB板的制作,設(shè)計了相應(yīng)的硬件電路和系統(tǒng)軟件,制作了電路原理樣機(jī)并進(jìn)行調(diào)試。畢業(yè)設(shè)計結(jié)束了,留給了我很深的思考,只有通過學(xué)習(xí)才能獲得知識,開始時并不是什么都會,但是只要努力了就一定會有收獲 雖然中間的過程很辛苦,但是只要有結(jié)果,就可以忘記艱辛的過程。sbit LCD_RW = P1^2。 sbit reset = P1^4。 // ad9850 w_clk。 //ad9850 fqud。unsigned char code LcdBuf2[]= { TEL:15196413502}。double Con_Word_1 = 0x00。long uint ConTrol_Word = 0x00。uchar a,b,c,d,e,f,g,h。longuintSheZhiZhongYaoXianShiDeShuJu = 0x00。ucharlianjiabiaozhi=0x00。long uint Out_Signal_Max = 10000000。sbit Light = P1^0。sbit P3_6 = P3^6。sbit P3_3 = P3^3。 //declare for keysuchar j = 0,dat = 0。void lcd_init(void)。 Qu_Chu_Shu_Ma_Ge_Wei()。 dingshiqilideshijianbianliang++。 //shi de sha ping TL0=0x66。 TR0 = 1。}void delay(long unsigned int h){ while(h)。 LCD_RW=0。 LCD_E=1。 delay(100)。 //LCD_RW = 1。}void WriteCommandLcd(unsigned char wdata){ LCD_RS=0。 LCD_E=0。 LCD_DATA=wdata。 //短暫延時,代替檢測忙狀態(tài) LCD_E=0。 delay(1000)。 delay(500)。 //顯示模式設(shè)置 delay(500)。 //顯示模式設(shè)置 delay(500)。 //關(guān)閉顯示 WriteCommandLcd(0x38)。 //顯示光標(biāo)移動設(shè)置 WriteCommandLcd(0x06)。 //WriteCommandLcd(0x80)。 //WriteDataLcd(0x31)。 //WriteDataLcd(0x33)。 } else { x = x+0x80。}void display_char(unsigned char x,unsigned char y,unsigned char dat){ display_xy(x,y)。}void display_string(unsigned char x,unsigned char y,unsigned char *s){ display_xy(x,y)。 s++。 b = (Frequency_Out % 100)/10。 d = (Frequency_Out % 10000)/1000。f=(Frequency_Out%1000000)/100000。h=(Frequency_Out%100000000)/10000000。key = P3。 0xf8。break。break。break。break。break。break。 } return(keyzhi)。P3_5 = 0x01。P3_6 = 0x00。 delay(100)。P3_4amp。 if((P3_3amp。P3_5) == 0x00) { P3_6 = 0x00。 dat = scan_KEY()。P3_7 = 0x00。 } } else { dat = 0x00。//無鍵按下 } } down:return(dat)。 display_string(1,0,LcdBuf1)。//顯示數(shù)值的話,用其真實的地址,如0x83等, WriteDataLcd(0x30+h)。 WriteDataLcd(0x30+f)。 WriteDataLcd(0x30+d)。 WriteDataLcd(0x30+b)。}Calculate_Control_Word(long uint Frequency_Out) { //Con_Word_1 = Frequency_Out * 85。 Con_Word_1 = Frequency_Out * 42。//100M Con_Word_2 = Con_Word_2 + 。 //根據(jù)設(shè)定的頻率以浮點形式計算控制字 ConTrol_Word = Con_Word_1 / 1。 uchar data_word 。 //根據(jù)時序圖 fqud = 0x00。 //相位、掉電等相關(guān)控制字 P2 = data_word。 delay(50)。 ConTrol_Word_Temporary = ConTrol_Word。 data_word = ConTrol_Word % 256。 w_clk=1。 w_clk=0。 ConTrol_Word = ConTrol_Word 16。//取出W2,頻率控制字中的次高字節(jié); P2 = data_word。 delay(50)。 ConTrol_Word = ConTrol_Word_Temporary。 data_word = ConTrol_Word % 256。 w_clk=1。 w_clk=0。 data_word = ConTrol_Word % 256。 w_clk=1。 w_clk=0。 //根據(jù)時序圖}main(){ unsigned char i = 0x00。 reset = 1。 reset = 0。 TMOD=0x01。 //shi de sha ping TL0=0x66。 TR0 = 1。 Frequency_Out = 0。//根據(jù)設(shè)置的頻率換算成將要送入AD9850中的整數(shù)值; Send_Control_Word(ConTrol_Word)。 display_string(0,1,LcdBuf2)。 //WriteCommandLcd(0xc5)。 //WriteDataLcd(0x30+(Step_Data/100)%10)。 //WriteDataLcd(0x30+(Step_Data%10))。 while(1) { if(dingshiqilideshijianbianliang == 10) { WriteCommandLcd(0x85+AnJianCiShuBiangLiang)。 //空格 dingshiqilideshijianbianliang = 11。//顯示數(shù)值的話,用其真實的地址,如0x83等, WriteDataLcd(0x30+shiyanshuju)。 } keychuli()。delay(5000)。 } } if(AnJianCiShuBiangLiang == 6) { if((Frequency_Out+10) = 10000000) { Frequency_Out = Frequency_Out+10。 } } if(AnJianCiShuBiangLiang == 4) { if((Frequency_Out+1000) = 10000000) {Frequency_Out=Frequency_Out+1000。 } } if(AnJianCiShuBiangLiang == 2) { if((Frequency_Out+100000) = 10000000) { Frequency_Out = Frequency_Out+100000。 } } if(AnJianCiShuBiangLiang == 0) { if((Frequency_Out+10000000) = 10000000) { Frequency_Out = Frequency_Out+100000000。//刷新一下顯示; if(AnJianCiShuBiangLiang == 7) { shiyanshuju = a。 } if(AnJianCiShuBiangLiang == 5) { shiyanshuju = c。 } if(AnJianCiShuBiangLiang == 3) { shiyanshuju = e。 } if(AnJianCiShuBiangLiang == 1) { shiyanshuju = g。 } dingshiqilideshijianbianliang = 18。delay(5000)。 } } if(AnJianCiShuBiangLiang == 6) {if(Frequency_Out = 10) {Frequency_Out= Frequency_Out10。} } if(AnJianCiShuBiangLiang == 4) { if(Frequency_Out = 1000) { Frequency_Out = Frequency_Out1000。 } } if(AnJianCiShuBiangLiang == 2) { if(Frequency_Out = 100000) { Frequency_Out
點擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1