專利名稱:一種基于微控制器的波形產生系統的制作方法
技術領域:
本實用新型涉及ー種基于微控制器的波形產生系統。
背景技術:
目前,設備常采用嵌入式微控制器作為主控制器。遺憾地是,如果利用微控制器指令執行的直接結果產生特定波形,那么這種波形的實現是不現實的,這主要有以下原因一是CPU需要執行較高優先級的控制任務、異步中斷服務等使CPU指令序列發生變化;另一方面如果CPU在某ー時間段,將所有的時間都應用于數字波形產生的指令序列,那么其他一些重要的任務將難以獲得運行,從而影響系統的控制性能。基于以上原因,基于微控制器設計波形產生的硬件電路可以保證波形產生的實時性。然而,目前的設計思路是將取I個波形周期內足夠的數據點數,存儲于存儲器中,然后將其輸出。但該方法沒有考慮許多波形的每個周期內的波形數據具有重復性,總是將每個周期內的數據全部寫入SRAM中,進ー步發出控制命令,將SRAM中的波形數據周期性地輸出。
實用新型內容本實用新型的目的是解決現有基于微控制器波形產生電路中因為每個周期波形數據的重復性導致的占用SRAM過大,影響系統的控制性能的問題。本實用新型為解決上述技術問題提供一種基于微控制器的波形產生系統,該波形產生系統包括微控制器、雙端ロ SRAM、時鐘芯片、分頻器、可逆ニ進制計數器、2位計數器、I位計數器、選擇開關、同相比例放大電路和反相比例放大電路,微控制器分別與雙端ロSRAM、分頻器和可逆ニ進制計數器相連,時鐘芯片的輸出端與分頻器的輸入端相連,分頻器的輸出端與可逆ニ進制計數器相連,可逆ニ進制計數器的輸出端分別與雙端ロ SRAM、1位計數器和2位計數器相連,雙端ロ SRAM的輸出端與同相比例放大電路和反相比例放大電路的輸入端相連,同相比例放大電路和反相比例放大電路的輸出端與模擬開關相連,I位計數器的輸出端和可逆ニ進制計數器的控制端相連,2位計數器的輸出端和選擇開關的控制端相連。所述的微控制器和雙端ロ SRAM之間還設置有譯碼器、鎖存器和緩沖器,微控制器的地址口和譯碼器輸入端相連,譯碼器輸出端和鎖存器及緩沖器相連,微控制器的數據ロ與鎖存器和緩沖器相連,譯碼器用以產生片選信號,鎖存器和緩沖器用于擴展微控制器的
I/O ロ。所述的雙端ロ SRAM的輸出端和同相比例放大電路及反相比例放大電路的輸入端之間連有D/A轉換器,該D/A轉換器的輸入端與雙端ロ SRAM的輸出端相連,該D/A轉換器的輸出端與同相比例放大電路及反相比例放大電路的輸入端相連。該波形產生系統的工作過程為微控制器發出分頻控制信號,得到計數器的輸入時鐘,從而確定波形的周期;同時發出分頻器、計數器、SRAM右端ロ片選信號和讀出信號,以及緩沖器使能信號;分頻器輸出、信號作為可逆計數器的時鐘,計數器輸出作為SRAM的右端ロ地址信號;SRAM的右端ロ的數據線即輸出了第一個周期的前1/4波形,并經D/A轉換,同相比例放大后輸出;計數器計數結束,發出計數滿輸出信號,經過I位計數器產生改變計數方式信號,將計數器由加I計數改為從最大值減I計數,從而輸出和前1/4波形關于Y軸對稱的波形,并經D/A轉換,同相比例放大后輸出;當計數又結束,則計數器發出計數滿輸出信號,并經過I位計數器產生改變計數方式信號,將計數器由減I計數改為從O開始后加I計數,同時經過2位計數器產生模擬開關控制信號,將D/A轉換的輸出經反相比例放大后輸出;當計數再次結束,則計數器發出計數滿輸出信號,并經過I位計數器產生改變計數方式信號,將計數器由加I計數改為從最大值開始后減I計數,輸出數字波形數據經D/A轉換后,進ー步經反相比例放大后輸出,從而得到所需的波形。本實用新型的有益效果是本實用新型根據每個周期內的波形數據具有重復性的特點,計算出波形每個周期內所需的點數和每一點的幅值,并排除掉每個周期內的重復數據,將沒有重復數據的波形數據寫入雙端ロ SRAM中,然后利用周期內后面的一段波形數據和存儲在SRAM中的波形數據大小対稱性,將存儲在SRAM中的波形數據經數模轉換和合適 的放大電路后輸出,可以提高每個周期內數據個數,從而提高波形精度;或者排除掉重復性數據后,只存儲基本波形數據,可以減少SRAM的大小,減少設計成本。
圖I是本實用新型實施例中需要產生的波形圖;圖2是本實用新型實施例中波形產生系統圖;圖3是本實用新型實施例中波形產生流程圖。
具體實施方式
以下結合附圖對本實用新型的具體實施方式
做進ー步說明。本實用新型以產生的波形如圖I所示為例,來詳細介紹產生該波形的系統結構如圖2所示,該系統包括微控制器、用以產生片選信號的譯碼器、用以擴展I/O ロ的緩沖器和鎖存器、用以存儲數字波形數據的雙端ロ SRAM、產生基本時鐘的時鐘芯片、用以產生系統所需不同時鐘的分頻器、用以產生SRAM地址的O 5V輸出的8位可逆ニ進制計數器、用以將數字波形轉換為模擬波形的8位D/A轉換器、用以判斷關于y軸對稱的重復數據產生的I位計數器、用以判斷關于X軸對稱的重復數據產生的2位計數器、用以選擇同相還是反相信號輸出的模擬開關、同相比例放大電路和將信號反相并放大的反相比例放大電路。微控制器的地址ロ與譯碼器相連,譯碼器的輸出端與3個8位鎖存器和I個8位緩沖器相連,微控制器的數據ロ與3個8位鎖存器和I個8位緩沖器相連,。根據系統對波形的精度和周期要求,計算出波形每個周期內所需的點數和每一點的幅值,并排除掉每個周期內的重復數據,從而選擇合適容量的雙端ロ SRAM,并通過緩沖器和所存器將沒有重復數據的波形數據寫入雙端ロ SRAM中,具體步驟如下步驟I :假定根據實際需要,系統確定波形包含256點,并已計算了每一點的數值,系統選擇了 8位雙端ロ SRAM,雙端ロ SRAM具有8根地址線;[0018]步驟2 :微控制器通過鎖存器3向雙端ロ SRAM的左端ロ發出地址信號;步驟3 :微控制器通過鎖存器2向雙端ロ SRAM的左端ロ發出數據信號,該數據代表了數字包絡線波形的大小;步驟4 :微控制器通過鎖存器I向雙端ロ SRAM的左端ロ發出片選信號和寫信號,將數字包絡線波形的幅值寫入SRAM ;步驟5 :重復步驟2、3和4,將波形所有點的幅值寫入雙端ロ SRAM ;步驟6 :通過鎖存器I發出8位可逆計數器、I位計數器、2位計數器的復位信號,將其輸出復位為O;步驟6 :通過鎖存器I同時發出分頻器、計數器、SRAM右端ロ片選信號、以及8位緩沖器4使能信號;步驟8 8位可逆ニ進制計數器開始從O計數,其輸出作為雙端ロ SRAM的右端ロ 8位地址,從而將SRAM中存儲的8位數字波形數據通過8位緩沖器4輸出,從而產生了 I個波形周期內的前1/4波形。該數字波形經2倍同相比例放大電路輸出;步驟9 :計數結束,8位可逆ニ進制計數器產生計數結束信號,使I位計數器和2位計數器開始計數,并且I位計數器輸出信號發生反轉,從而將8位可逆ニ進制計數器改為減I計數;步驟10 8位可逆ニ進制計數器開始從OFF開始作減I計數,其輸出作為雙端ロSRAM的右端ロ 8位地址,從而將SRAM中存儲的8位數字波形數據通過8位緩沖器4輸出,從而產生了 I個波形周期內的第2個1/4波形。該數字波形經過2倍同相比例放大電路輸出;步驟11 :計數結束,8位可逆ニ進制計數器產生計數結束信號,使I位計數器和2位計數器開始計數,并且使這兩個計數器的輸出信號發生反轉,從而將8位可逆ニ進制計數器改為加I計數,使模擬開關選擇2倍反相比例放大電路輸出;步驟12: 8位可逆ニ進制計數器開始從O計數,其輸出作為雙端ロ SRAM的右端ロ8位地址,從而將SRAM中存儲的8位數字波形數據通過8位緩4輸出,從而產生了 I個波形周期內的第3個1/4波形。該數字波形經2倍反相比例放大電路輸出;步驟13 :計數結束,8位可逆ニ進制計數器產生計數結束信號,使I位計數器和2位計數器開始計數,并且I位計數器輸出信號發生反轉,從而將8位可逆ニ進制計數器改為減I計數;步驟14 8位可逆ニ進制計數器開始從OFF開始作減I計數,其輸出作為雙端ロSRAM的右端ロ 8位地址,從而將SRAM中存儲的8位數字波形數據通過8位緩沖器4輸出,從而產生了 I個波形周期內的第2個1/4波形。該數字波形經過2倍反相比例放大電路輸出;步驟15 :重復步驟8、9、10、11、12、13和14,從而輸出所需波形的其余周期。
權利要求1.一種基于微控制器的波形產生系統,其特征在于該波形產生系統包括微控制器、雙端口 SRAM、時鐘芯片、分頻器、可逆二進制計數器、2位計數器、I位計數器、選擇開關、同相比例放大電路和反相比例放大電路,微控制器分別與雙端口 SRAM、分頻器和可逆二進制計數器相連,時鐘芯片的輸出端與分頻器的輸入端相連,分頻器的輸出端與可逆二進制計數器相連,可逆二進制計數器的輸出端分別與雙端口 SRAM、1位計數器和2位計數器相連,雙端口 SRAM的輸出端與同相比例放大電路和反相比例放大電路的輸入端相連,同相比例放大電路和反相比例放大電路的輸出端與模擬開關相連,I位計數器的輸出端和可逆二進制計數器的控制端相連,2位計數器的輸出端和選擇開關的控制端相連。
2.根據權利要求I所述的基于微控制器的波形產生系統,其特征在于所述的微控制器和雙端口 SRAM之間還設置有譯碼器、鎖存器和緩沖器,微控制器的地址口和譯碼器輸入端相連,譯碼器輸出端和鎖存器及緩沖器相連,微控制器的數據口與鎖存器和緩沖器相連,譯碼器用以產生片選信號,鎖存器和緩沖器用于擴展微控制器的I/O 口。
3.根據權利要求2所述的基于微控制器的波形產生系統,其特征在于所述的雙端口SRAM的輸出端和同相比例放大電路及反相比例放大電路的輸入端之間連有D/A轉換器,該D/A轉換器的輸入端與雙端口 SRAM的輸出端相連,該D/A轉換器的輸出端與同相比例放大電路及反相比例放大電路的輸入端相連。
4.根據權利要求3所述的基于微控制器的波形產生系統,其特征在于該波形產生系統的工作過程為 微控制器發出分頻控制信號,得到計數器的輸入時鐘,從而確定波形的周期;同時發出分頻器、計數器、SRAM右端口片選信號和讀出信號,以及緩沖器使能信號;分頻器輸出信號作為可逆計數器的時鐘,計數器輸出作為SRAM的右端口地址信號;SRAM的右端口的數據線即輸出了第一個周期的前1/4波形,并經D/A轉換,同相比例放大后輸出;計數器計數結束,發出計數滿輸出信號,經過I位計數器產生改變計數方式信號,將計數器由加I計數改為從最大值減I計數,從而輸出和前1/4波形關于Y軸對稱的波形,并經D/A轉換,同相比例放大后輸出;當計數又結束,則計數器發出計數滿輸出信號,并經過I位計數器產生改變計數方式信號,將計數器由減I計數改為從O開始后加I計數,同時經過2位計數器產生模擬開關控制信號,將D/A轉換的輸出經反相比例放大后輸出;當計數再次結束,則計數器發出計數滿輸出信號,并經過I位計數器產生改變計數方式信號,將計數器由加I計數改為從最大值開始后減I計數,輸出數字波形數據經D/A轉換后,進一步經反相比例放大后輸出,從而得到所需的波形。
專利摘要本實用新型涉及一種基于微控制器的波形產生系統,包括微控制器、雙端口SRAM、時鐘芯片、分頻器、可逆二進制計數器、計數器、選擇開關、同相比例放大電路和反相比例放大電路,微控制器分別與雙端口SRAM、分頻器和可逆二進制計數器相連,時鐘芯片的輸出端與分頻器的輸入端相連,分頻器的輸出端與可逆二進制計數器相連,雙端口SRAM的輸出端與同相比例放大電路和反相比例放大電路的輸入端相連,同相比例放大電路和反相比例放大電路的輸出端與模擬開關相連,計數器的輸出端和模擬開關的控制端相連。本實用新型可以提高每個周期內數據個數,從而提高波形精度,排除掉重復性數據后,只存儲基本波形數據,可以減少SRAM的大小,降低設計成本。
文檔編號H03K3/02GK202475379SQ20122000869
公開日2012年10月3日 申請日期2012年1月10日 優先權日2012年1月10日
發明者葉宇程, 張海濤, 張聚偉, 梁云朋, 白舸 申請人:河南科技大學