含原理圖+電路圖+程序的波形發生器:在工作中,我們常常會用到波形發生器,它是使用頻度很高的電子儀器。現在的波形發生器都采用單片機來構成。單片機波形發生器是以單片機核心,配相應的外圍電路和功能軟件,能實現各種波形發生的應用系統,它由硬件部分和軟件部分組成,硬件是系統的基礎,軟件則是在硬件的基礎上,對其合理的調配和使用,從而完成波形發生的任務。 波形發生器的技術指標:(1) 波形類型:方型、正弦波、三角波、鋸齒波;(2) 幅值電壓:1V、2V、3V、4V、5V;(3) 頻率值:10HZ、20HZ、50HZ、100HZ、200HZ、500HZ、1KHZ;(4) 輸出極性:雙極性操作設計1、 機器通電后,系統進行初始化,LED在面板上顯示6個0,表示系統處于初始狀態,等待用戶輸入設置命令,此時,無任何波形信號輸出。2、 用戶按下“F”、“V”、“W”,可以分別進入頻率,幅值波形設置,使系統進入設置狀態,相應的數碼管顯示“一”,此時,按其它鍵,無效;3、 在進入某一設置狀態后,輸入0~9等數字鍵,(數字鍵僅在設置狀態時,有效)為欲輸出的波形設置相應參數,LED將參數顯示在面板上;4、 如果在設置中,要改變已設定的參數,可按下“CL”鍵,清除所有已設定參數,系統恢復初始狀態,LED顯示6個0,等待重新輸入命令;5、 當必要的參數設定完畢后,所有參數顯示于LED上,用戶按下“EN”鍵,系統會將各波形參數傳遞到波形產生模塊中,以便控制波形發生,實現不同頻率,不同電壓幅值,不同類型波形的輸出;6、 用戶按下“EN”鍵后,波形發生器開始輸出滿足參數的波形信號,面板上相應類型的運行指示燈閃爍,表示波形正在輸出,LED顯示波形類型編號,頻率值、電壓幅值等波形參數;7、 波形發生器在輸出信號時,按下任意一個鍵,就停止波形信號輸出,等待重新設置參數,設置過程如上所述,如果不改變參數,可按下“EN”鍵,繼續輸出原波形信號;8、 要停止波形發生器的使用,可按下復位按鈕,將系統復位,然后關閉電源。硬件組成部分通過綜合比較,決定選用獲得廣泛應用,性能價格高的常用芯片來構成硬件電路。單片機采用MCS-51系列的89C51(一塊),74LS244和74LS373(各一塊),反相驅動器 ULN2803A(一塊),運算放大器 LM324(一塊) 波形發生器的硬件電路由單片機、鍵盤顯示器接口電路、波形轉換(D/ A)電路和電源線路等四部分構成。1.單片機電路功能:形成掃描碼,鍵值識別,鍵功能處理,完成參數設置;形成顯示段碼,向LED顯示接口電路輸出;產生定時中斷;形成波形的數字編碼,并輸出到D/A接口電路;如電路原理圖所示: 89C51的P0口和P2口作為擴展I/O口,與8255、0832、74LS373相連接,可尋址片外的寄存器。單片機尋址外設,采用存儲器映像方式,外部接口芯片與內部存儲器統一編址,89C51提供16根地址線P0(分時復用)和P2,P2口提供高8位地址線,P0口提供低8位地址線。P0口同時還要負責與8255,0832的數據傳遞。P2.7是8255的片選信號,P2.6是0832(1)的片選,P2.5是0832(2)的片選,低電平有效,P0.0、P0.1經過74LS373鎖存后,送到8255的A1、A2作,片內A口,B口,C口,控制口等寄存器的字選。89C51的P1口的低4位連接4只發光三極管,作為波形類型指示燈,表示正在輸出的波形是什么類型。單片機89C51內部有兩個定時器/計數器,在波形發生器中使用T0作為中斷源。不同的頻率值對應不同的定時初值,定時器的溢出信號作為中斷請求。控制定時器中斷的特殊功能寄存器設置如下:定時控制寄存器TCON=(00010000)工作方式選擇寄存器(TMOD)=(00000000)中斷允許控制寄存器(IE)=(10000010)2、鍵盤顯示器接口電路功能:驅動6位數碼管動態顯示; 提供響應界面; 掃面鍵盤; 提供輸入按鍵。由并口芯片8255,鎖存器74LS273,74LS244,反向驅動器ULN2803A,6位共陰極數碼管(LED)和4×4行列式鍵盤組成。8255的C口作為鍵盤的I/O接口,C口的低4位輸出到掃描碼,高4位作為輸入行狀態,按鍵的分布如圖所示。8255的A口作為LED段碼輸出口,與74LS244相連接,B口作為LED的位選信號輸出口,與ULN2803A相連接。8255內部的4個寄存器地址分配如下:控制口:7FFFH , A口:7FFFCH , B口:7FFDH , C口:7FFEH 3、D/A電路功能:將波形樣值的數字編碼轉換成模擬值;完成單極性向雙極性的波形輸出;構成由兩片0832和一塊LM324運放組成。0832(1)是參考電壓提供者,單片機向0832(1)內的鎖存器送數字編碼,不同的編碼會產生不同的輸出值,在本發生器中,可輸出1V、2V、3V、4V、5V等五個模擬值,這些值作為0832(2)的參考電壓,使0832(2)輸出波形信號時,其幅度是可調的。0832(2)用于產生各種波形信號,單片機在波形產生程序的控制下,生成波形樣值編碼,并送到0832(2)中的鎖存器,經過D/A轉換,得到波形的模擬樣值點,假如N個點就構成波形的一個周期,那么0832(2)輸出N個樣值點后,樣值點形成運動軌跡,就是波形信號的一個周期。重復輸出N個點后,由此成第二個周期,第三個周期……。這樣0832(2)就能連續的輸出周期變化的波形信號。運放A1是直流放大器,運放A2是單極性電壓放大器,運放A3是雙極性驅動放大器,使波形信號能帶得起負載。地址分配:0832(1):DFFFH ,0832(2):BFFFH4、電源電路:功能:為波形發生器提供直流能量;構成由變壓器、整流硅堆,穩壓塊7805組成。220V的交流電,經過開關,保險管(1.5A/250V),到變壓器降壓,由220V降為10V,通過硅堆將交流電變成直流電,對于諧波,用4700μF的電解電容給予濾除。為保證直流電壓穩定,使用7805進行穩壓。最后,+5V電源配送到各用電負載。
上傳時間: 2013-11-08
上傳用戶:685
82C54是專為Intel系列微處理機而設計的一種可編程時間間隔定時器/計數器,它是一種通用芯片,在系統軟件中可以把多級定時元素當成輸入/輸出端口中的一個陣列看待。1. 與所有Intel系列兼容2. 操作速度高,與8MHz的8086、80186一起可實現“零等待狀態”的操作。3. 可處理從直流到10M頻率的輸入。4. 適應性強5. 三個獨立的16位計數器6. 低功耗的CHMOS7. 與TTL完全兼容8. 6 種可編程的計數模式9. 以二進制或BCD計數10. 狀態讀返回命令
上傳時間: 2013-11-16
上傳用戶:elinuxzj
限流是無刷直流電機控制器系統中的關鍵點和難點,是保證整個系統正常工作的前提條件,設計中的AD對齊采樣技術是整個限流工作的關鍵。該技術應用在一種以PSoC為主控芯片的電動車用無刷直流電機控制器,給出了整體的方案以及關鍵技術的具體設計方案。經實驗驗證是一種較好的限制控制器電流的方案。
上傳時間: 2013-10-24
上傳用戶:水口鴻勝電器
本系統以直流電流源為核心,AT89S52單片機為主控制器,通過鍵盤來設置直流電源的輸出電流,設置步進等級可達1mA,并可由數碼管顯示實際輸出電流值和電流設定值。本系統由單片機程控輸出數字信號,經過D/A轉換器(AD7543)輸出模擬量,再經過運算放大器隔離放大,控制輸出功率管的基極,隨著功率管基極電壓的變化而輸出不同的電流。單片機系統還兼顧對恒流源進行實時監控,輸出電流經過電流/電壓轉變后,通過A/D轉換芯片,實時把模擬量轉化為數據量,再經單片機分析處理, 通過數據形式的反饋環節,使電流更加穩定,這樣構成穩定的壓控電流源。實際測試結果表明,本系統輸出電流穩定,不隨負載和環境溫度變化,并具有很高的精度,輸出電流誤差范圍±5mA,輸出電流可在20mA~2000mA范圍內任意設定,因而可實際應用于需要高穩定度小功率恒流源的領域。
上傳時間: 2013-12-18
上傳用戶:330402686
HMM(Hidden Markov Model),狀態數目N=3,觀察符號數目M=2,時間長度T=3。 (a) Probability Evaluation: 給定狀態轉換機率A、狀態符號觀察機率B、和起始機率 ,求觀察序列 出現的機率。 (b) Optimal State Sequence: 給定狀態轉換機率A、狀態符號觀察機率B、起始機率 、和觀察序列 ,求一個狀態序列 使得O出現的機率最大。 (c) Parameter Estimation: 給定狀態轉換機率A、狀態符號觀察機率B、起始機率 、和觀察序列 ,求新的A、B、 ,使得O出現的機率最大。
上傳時間: 2014-08-28
上傳用戶:heart520beat
SH401.C 單片機驅動直流電機的例程 SH402.C 單片機數模輸出控制LED亮度的例程 SH403.C 單片機PWM輸出控制電機的轉角 404 介紹光耦的作用 SH405.C 單片機驅動壓電應變片的例程 SH406.C 單片機控制語音芯片的例程 SH407.C 單片機控制充電芯片的例程 SH408.C 單片機控制時鐘芯片的例程
上傳時間: 2013-11-25
上傳用戶:dave520l
《單片機接口技術實用子程序》配套源代碼 包括:232,485,SPI總線,IIC,CAN,flash,16位AD7715,時鐘日歷芯片PCF8563的應用,等精度數字頻率計的實現,直流電機的閉環和閉環控制等經典原代碼!
上傳時間: 2013-12-10
上傳用戶:comua
這是關于有刷直流電動機PWM控制方案的源碼,上面那個是無刷電動機的PWM控制方案,芯片都是TI公司的TMSLF2407
上傳時間: 2014-01-11
上傳用戶:aig85
我的查表算法思路是這樣的 : 1、構造N個二維數組(N=你需要輸入的最大頻率值位數,例如你需要精確到10HZ,最高30MHZ,那么就有10M位、1M位、100K位、10K位、1K位、100HZ位、10HZ位,共7位,所以N=7)。 2、根據你所用的芯片型號,和晶振頻率,計算出每個頻率位0-9時的控制字。 3、使用時,把你頻率的每一位控制字,查表讀出,并相加(特別需要注意進位也需要處理)。 4、把加出的4字節控制字,送DDS。
上傳時間: 2015-12-21
上傳用戶:zjf3110
用遞推法產生正交多項式系,即求alpha[j+1]、beta[j] 入口參數:m是數據點數,n是擬合的最高階數, float x[],float y[]是對應縱橫坐標,出口參數:a[] 是最小二乘擬合參數,alpha[]、beta[]是遞推系數
上傳時間: 2014-01-19
上傳用戶:gyq