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

正文內(nèi)容

基于stm32的信號發(fā)生器論文(存儲版)

2025-07-27 18:52上一頁面

下一頁面
  

【正文】 ,frequence_DATA。 //frequence_hex低16位送給frequence_LSB frequence_LSB=frequence_LSBamp。 //選擇數(shù)據(jù)一次寫入,B28位和RESET位為1 if(Freq_SFR==0) //把數(shù)據(jù)設(shè)置到設(shè)置頻率寄存器0 { frequence_LSB=frequence_LSB|0x4000。 //使用頻率寄存器1輸出波形 AD9833_Write(frequence_LSB)。unsigned char Key_Change=0。 = GPIO_Pin_1|GPIO_Pin_10|GPIO_Pin_11|GPIO_Pin_12|GPIO_Pin_13|GPIO_Pin_14|GPIO_Pin_15。//初始化}unsigned char Key_Pin_Read(){ unsigned char Reture_Data。 if(KEY4==0) Reture_Data=Reture_Dataamp。 if(KEY8==0) Reture_Data=Reture_Dataamp。 Key_Count=0。 case 0xFB:Key_Keep=3。break。Key_Function_Con=Key_Value_8。 Key_Change=1。 Key_Count=0。 { if(Key_Count==0) { Key_Change=1。 //如果按下的按鍵已經(jīng)設(shè)定為快速變化,暤回1 else { Second_Function_Con=Key_Downamp。 = GPIO_Speed_50MHz。 LCD_WriteCom(Adress_Com)。 //操作前短暫延時,保證信號穩(wěn)定 LCD1602_EN_Clr()。 LCD1602_EN_Set()。 Data_Temp=GPIO_ReadOutputData(GPIOA)。 LCD1602_EN_Clr()。 //顯示光標移動位置 LCD_WriteCom(0x0c)。 //設(shè)置用來作為TIMx時鐘頻率除數(shù)的預分頻值 = TIM_CKD_DIV1。 //從優(yōu)先級3級 = ENABLE。還要感謝我的母校大學。還使我領(lǐng)悟到了很多專業(yè)知識領(lǐng)域中的美德,使我受益匪淺。 //TIM2中斷 = 0。 //時鐘使能 //定時器TIM3初始化 = arr。 //display mode LCD_WriteCom(0x38)。 LCD1602_EN_Set()。 //操作前短暫延時,保證信號穩(wěn)定 LCD1602_EN_Clr()。 GPIO_Write(GPIOA,Data_Temp)。 }}/***************1602函數(shù)*******************/void LCD_WriteData(unsigned char LCD_1602_DATA) /********LCD1602數(shù)據(jù)寫入***********/{ uint16_t Data_Temp。}void Lcd_1602_word(unsigned char Adress_Com,unsigned char Num_Adat,unsigned char *Adress_Data){ unsigned char i。 = GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7。Key_Second_Function_Run。 //Key_Change賦值,觸暍一次主程序中按鍵處理程序 Key_Value=Key_Keep。 } } } break。暤回按鍵值 { Key_Con=0。break。 case 0xEF:Key_Keep=5。Key_Function_Con=Key_Value_2。//用于按鍵程序中的必要的計數(shù)儲存 static unsigned char Key_Function_Con。 if(KEY7==0) Reture_Data=Reture_Dataamp。 if(KEY3==0) Reture_Data=Reture_Dataamp。 //設(shè)置成上拉輸入 GPIO_Init(GPIOA, amp。 //初始化 上拉輸入 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_APB2Periph_GPIOA,ENABLE)。 if(WaveMode==SIN_WAVE) //輸出正弦波形 AD9833_Write(0x2000)。 /**設(shè)置FSELECT位為0,芯片進入工作狀態(tài),頻率寄存器0輸出波形**/ } if(Freq_SFR==1) //把數(shù)據(jù)設(shè)置到設(shè)置頻率寄存器1 { frequence_LSB=frequence_LSB|0x8000。 //相位值 AD9833_Write(0x0100)。 frequence_hex=frequence_DATA。 } AD9833_CS=1。i16。 else AD9833_DAT=0。 u16 temp=0。 else AD9833_DAT=0。 AD9833_FSYNC=1。 = GPIO_Pin_6|GPIO_Pin_7|GPIO_Pin_8|GPIO_Pin_9。 Fre_View_Data[2]=Fre_Set_Data[2]+0x30。 Fre_Data=Fre_Data+Fre_Set_Data[3]。 } if(Key_Value2)//頻率設(shè)定區(qū)域 { Fre_Set_Data[Key_Value3]++。 } } if(Key_Change)//按鍵區(qū)域 { Key_Change=0。//顯示頻率 LCD_WriteCom(0xc4)。//初始化按鍵引腳 TIM2_Int_Init(100,7199)。unsigned char Fre_Set_Data[6]={0,1,0,0,0,0,}。在該系統(tǒng)的設(shè)計工程中,工作時間有限,再加上自己的硬件開發(fā)能力有所欠缺,整個系統(tǒng)存在著一些依舊需要改進的地方。圖51 調(diào)試顯示1經(jīng)過硬件的搭建之后,開始進行軟件的調(diào)試,首先系統(tǒng)進行軟件的初始化操作,如下圖52調(diào)試顯示2所示為初始化之后的狀態(tài),此時顯示的數(shù)據(jù)為輸出頻率為10KHZ,幅度是5,輸出的波形是三角波。 圖41 系統(tǒng)總體軟件流程設(shè)計 該基于STM32F103Cx的信號發(fā)生器系統(tǒng)的三角波輸出模塊軟件設(shè)計如下圖42三角波輸出模塊軟件設(shè)計流程圖所示,首先開啟程序,再軟硬件內(nèi)部進行初始化操作,如果初始化不成功則從新初始化,如果初始化成功則開啟三角波模塊程序,再通過按鍵設(shè)置,判斷是輸出數(shù)據(jù)是否設(shè)置成功,如果數(shù)據(jù)沒有設(shè)置成功則繼續(xù)循環(huán)掃描設(shè)置,如果檢測到數(shù)據(jù)設(shè)置成功,首先把設(shè)置的輸出數(shù)據(jù)傳輸?shù)教幚砥魈幚碇行倪M行分析處理,再經(jīng)過信號發(fā)生器輸出到示波器。如下圖33 AD9833模塊所示,GND連接低電平,VCC連接高電平,CS片選連接單片機的引腳PB9,DAT串行數(shù)字輸入連接單片機的引腳PB8,時鐘CLK連接單片機的引腳PB7,控制FSY連接單片機的引腳PB6,通過接口7和接口8連接示波器進行波形的輸出等。開發(fā)人員可以重復使用相同的各種設(shè)計軟件,加強靈活性的產(chǎn)品范圍。根據(jù)該系統(tǒng),僅僅需要幾個按鍵就能滿足要求,則該方案使用于該系統(tǒng)。在該基于STM32F103Cx信號發(fā)生器系統(tǒng)中需要實設(shè)置當前的輸出波形的參數(shù),需要按鍵進行設(shè)置,有以下兩種方案。由上所示,在該基于STM32F103Cx信號發(fā)生器系統(tǒng)的核心控制模塊,我們采用STM32F103Cx單片機芯片作為該系統(tǒng)的核心模塊,該芯片滿足設(shè)計的需求,不僅能夠?qū)崿F(xiàn)設(shè)計的功能,同時還節(jié)約浪費,使整個系統(tǒng)達到完美的應用。相比傳統(tǒng)的51系列的單片機,該系列的單片機有許多的資源很有價值,同時該STM32F103Cx處理器已經(jīng)去除了傳統(tǒng)的機器周期等,該處理器的處理速度也非???,該處理器都是采用模塊化設(shè)計的,界面也得到了人性化的智能簡單,功能大大增多,使用起來很豐富,相比傳統(tǒng)的51系列的單片機功能簡單,該款單片機有很大的使用價值。相位累加器產(chǎn)生的數(shù)據(jù)從端口輸出后,其數(shù)據(jù)被看作為波形儲存器ROM的尋址地址這樣就可把存儲在波形存儲器內(nèi)的波形抽樣值(二進制編碼)經(jīng)查找表查出(可以看成是一種映射),完成相位到相應幅值轉(zhuǎn)換。由于科技的發(fā)展,可編程邏輯器件的出現(xiàn)使得自行使用可編程邏輯器件設(shè)計DDS變成了可能。(3)輸出通道增多。高速的存儲器和D/A轉(zhuǎn)換器的出現(xiàn)使合成的頻率得到很大的提高,從而能夠在通訊、計算機和顯示等領(lǐng)域得到廣泛的應用。國產(chǎn)S1000型數(shù)字合成掃頻信號發(fā)生器通過新技術(shù)和新器件可以實現(xiàn)高精度、寬頻帶的掃頻源,同時應用DDS和鎖相技術(shù),使頻率范圍從1MHz~1024MHz能精確地分辨到100Hz,它不僅是一臺高精度的掃頻源,也是一臺高精度的標準信號發(fā)生器。今天信號發(fā)生器一直保持高速發(fā)展,信號發(fā)生器技術(shù)自開發(fā)以來,引導技術(shù)趨勢是日本橫河,安捷倫、美國泰克和其他外國幾個主要設(shè)備公司。該設(shè)計系統(tǒng)采用altium designer等軟件完成PCB版的設(shè)計,然后進行焊接和測試等,采用keil軟件進行編寫軟件程序,完成波形的輸出等,最后經(jīng)過軟硬件設(shè)計出可輸出三種波形:三角波、方波和正弦波。在信源提供上相比傳統(tǒng)發(fā)生器穩(wěn)定可靠,其這一特點深受大家喜愛。信號發(fā)生器是應用在電子電路以及測試實驗等領(lǐng)域的一種常用信號源,它是一種電信號設(shè)備,是電子測量及計量工作嚴格的技術(shù)設(shè)備。在本文中根據(jù)現(xiàn)實的需求設(shè)計出一款基于STM32F103Cx的信號發(fā)生器系統(tǒng),整體設(shè)計由處理器模塊、電源電路模塊、AD9833電路模塊、按鍵電路模塊、數(shù)字顯示模塊幾部分組成。該系統(tǒng)的設(shè)計具有簡單和性能優(yōu)良等優(yōu)點,最后經(jīng)過軟硬件的調(diào)試之后,各項功能和性能都滿足設(shè)計的要求。所有的這些社會需求以及微電子技術(shù)、計算機技術(shù)、信號處理技術(shù)等本身不斷進步都極大刺激了數(shù)字頻率合成器技術(shù)的發(fā)展。直接數(shù)字頻率合成(DirectDigitalFrequen2cySynthesis,DDS)是把一系列數(shù)據(jù)形式的信號通過D/A轉(zhuǎn)換器轉(zhuǎn)換成模擬量形式的信號合成技術(shù)。但是限于當時微電子技術(shù)和數(shù)字信號處理技術(shù)限制,DDS并沒有得到足夠重視。安捷倫33250型生產(chǎn)函數(shù)/任意波形發(fā)生器能夠產(chǎn)生穩(wěn)定、準確和低失真任意波形的輸出頻率范圍1uhz ~80 mhz,和10 mvpp ~ 10 vpp的輸出振幅,該公司生產(chǎn)的8648D射頻信號發(fā)生器的頻率覆蓋范圍更可高達9kHz~4GHz。我國目前在信號發(fā)生器的種類和性能都與國外同類產(chǎn)品存在較大的差距,因此加緊對這類產(chǎn)品的研制顯得迫在眉睫?,F(xiàn)代任意信號發(fā)生器的信號如輸入方法可分為三類:一是利用信號分析儀或數(shù)字存儲示波器(DSO,Digital Storage Oscilloscope)先把信號數(shù)字化,然后由軟件驅(qū)動輸入到RAM中。對多通道的任意信號發(fā)生器的需求最多是來自于測試現(xiàn)代通信裝置中需要的同相或正交的信號。 直接數(shù)字頻率合成技術(shù)是從相位概念出發(fā),直接對參考正弦信號進行抽樣,得到不同的相位,通過數(shù)字計算技術(shù)產(chǎn)生對應的電壓幅度,最后濾波平滑輸出所需頻率。如果選擇的芯片不好,那就會使整個系統(tǒng)的成本增加,從而極大浪費了資源,不利于資源的整合利用,有些甚至不能達到理想的效果,功能和性能不能滿足要求等。在該系統(tǒng)中,由于該芯片功能太少,特別是內(nèi)存容量比較小,所示不適合該系統(tǒng)。還具有觸摸功能,能夠根據(jù)輸入的信息,智能化的顯示等,通過軟件編程的方式實現(xiàn)內(nèi)容顯示,編程工作量大。然而矩陣鍵盤的電路結(jié)構(gòu)較為復雜,編程難度加大。第3章 硬件設(shè)計方案 在該基于STM32F103Cx的信號發(fā)生器系統(tǒng)中硬件的設(shè)計采用模塊化方案設(shè)計,系統(tǒng)包含的模塊有電源電路模塊、STM32F103Cx處理器模塊、按鍵電路模塊、數(shù)字液晶器顯示模塊和AD9833電路模塊等。圖32 處理器模塊該基于STM32F103Cx的信號發(fā)生器系統(tǒng)的發(fā)生器模塊采用AD9833電路模塊,AD9833是一塊完全集成的高分辨率DDS發(fā)生器芯片,僅僅需要一個外部參考時鐘、可編程波形發(fā)生器,能夠產(chǎn)生正弦波、三角波和方波輸出。圖35 電源電路模塊該基于STM32F103Cx的信號發(fā)生器系統(tǒng)中的數(shù)字顯示模塊采用液晶顯示器LCD1602型號,該模塊的引腳功能分別是:接口1外接地,接口2外接高電平電壓,5V的電壓,接口3具有對液晶顯示器的對比度進行調(diào)整,可以用一個電位器輔助,接口4屬于寄存器的選擇,當為高電平時可以轉(zhuǎn)換到數(shù)據(jù)寄存器功能,反之為指令寄存器功能,接口5是讀寫功能,當為高電平時為讀數(shù)據(jù)功能,反之為寫數(shù)據(jù)功能,接口6是使能功能,可以選擇何時讀取信息和何時執(zhí)行指令等功能,接口7到接口14位數(shù)據(jù)端,接口15和接口16為背光端口等。 圖44 正弦波輸出模塊軟件設(shè)計路程圖該基于STM32F103Cx的信號發(fā)生器系統(tǒng)的按鍵子程序模塊軟件設(shè)計如下圖45按鍵子程序模塊軟件設(shè)計流程圖所示,首先進行開啟程序,硬件進行初始化操作,進行參數(shù)的配置,如果初始化不成功則從新初始化,如果初始化成功之后,開啟按鍵的掃描功能,判斷掃描按鍵是否有數(shù)據(jù)輸入,如果按鍵沒有數(shù)據(jù)輸入則繼續(xù)掃描
點擊復制文檔內(nèi)容
教學教案相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1