999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一款低頻任意波形發生器的設計與實現

2008-01-01 00:00:00謝曉廣梁欣鳳
電腦知識與技術 2008年5期

摘要:本文介紹的波形發生器是基于PC機與單片機共同實現的,用戶用鼠標拖動繪制任意波形,就可以實現輸出端相應波形的輸出。

關鍵詞:波形發生器;任意波形

中圖分類號:TP271文獻標識碼:A文章編號:1009-3044(2008)05-10ppp-0c

1 引言

各種電子系統都離不開波形發生器,但常見的波形發生器一般是輸出固定的幾種波形如方波、鋸齒波、函數波等,對于一些不規則的波形就不能發生。

生產實踐和實驗模擬中,對不規則波的需求是很多的。如為了測試汽車的參數,需要模擬道路不規則的(或無序的)起伏、摩擦系數等情況,這就要求信號發生器能產生任意的波形。本文介紹的任意波形生器就是由PC機和單片機共同構成一個發生系統,通過鼠標給出任意波形,再將波形在輸出端輸出的一種信號發生器。

2 系統簡介

圖1是該系統原理圖,我們用PC機做為人機交互的設備,將波形的設置做到計算機的桌面上,用戶只要有桌面上用鼠標做出波形,就可以在呼出端輸出。

圖1 系統原理圖

8951單片機是波形輸出的另一個核心,它要將PC機傳送來的關鍵參數進行產生,并通過D/A轉換來進行輸出。

本系統實現的最初思路是將波形的產生參數推遲到了波形產生的時候,在用戶做出波形的同時,系統也獲得了波形的關鍵參數,針對該波形來進行合成。

3 系統結構

系統分為PC 機和單片機系統兩部分。從系統圖上可見,本系統的硬件部分比較簡單,在其它系統中常見。因此,我們選用0832做轉換器 , 用62256做存儲器,實現雙極性電壓輸出,在后面由跟隨器改善帶負載能力,再作MAX232 實現電平轉換。

本系統的關鍵部分是軟件,特別是通訊部分。現分別介紹如下:

3.1 PC 機部分

作為面向對象的程序設計語言,VB具有事件驅動編程模式并可以使用添加的控件,能夠十分方便地作出良好的人機界面。所以我們在PC 機采用VB 編程,用VB 作出直觀的人機界面,使用戶可以在圖片框中方便地繪制波形。

在通信模塊設計上,MSComm 控件的直接引用使通訊設計變得更加便捷。該控件是一個標準的十位串行通信接口,可通過設置串行通信的串口狀態及串口通信格式和協議,提供事件驅動和查詢兩種處理方法。事件驅動法是當串口處于以下三種狀態:A接收到數據、B發送完數據、C當狀態發生改變時,MSComm控件將觸發OnComm事件,應用程序可通過檢查Com2 mEvent 屬性的值來獲知所發生的事件情況,從而進入子程序進行相應的處理。查詢法則是在每個重要的程序后進行查詢MSComm控件的屬性值來檢測事件和通訊錯誤。

本設計采用的是查詢法。我們進行如下設置:通信模塊內設置了MSComm控件的Inputmode 屬性為1 ,則收發的是二進制數據,如為0.則收發字符。需要強調的是,由于用鼠標繪圖形的隨意性很強,我們需要編程來均勻插點值,以使曲線平滑。同時,為了保證數據通信的正確,我們采用了應答和累加和的兩種檢驗方法。

本設計選用“00H、FFH、00H、FFH”作握手信號。PC 機與89C51 之間的通信程序用VB 編寫,程序段如下:

Private Sub Command1 Click()

.′定義數組變量

Command1. Enabled = False

MSComm1. CommPort = 1 ′設置端口號

MSComm1. Settings =“9600 ,n ,8 ,1” ′設置波特率等通訊協議

MSComm1. InputLen = 1′一次讀一個字節

MSComm1. PortOpen = True ′打開串口

MSComm1. InputMode = 1′接收二進制數

outbuf (0) = 0

outbuf (1) = 255

outbuf (2) = 0

outbuf (3) = 255

MSComm1. Output = outbuf ′發握手信號

Do

DoEvents

Loop Until MSComm1. InBufferCount > = 1

inbyte =MSComm1. Input

If inbyte (0)〈〉5 Then′MCU 準備好嗎?

MsgBox″通訊錯誤05 ,重發!″,vbExclamation

Exit Sub

End If

.

sum= 0

ReDim bytebuf (0 To n)

For i = 0 To n

bytebuf (i) = c (i)

If sum+ c (i) > = 256 Then

sum= sum+ c (i) - 256

Else

sum= sum+ c (i)

End If′計算累加和

Next i

MSComm1. Output = bytebuf ′發波形各點值

.

Command5. Enabled = True

End Sub

3.2 用戶界面部分:

在用戶界面設計了三個命令按鈕,分別用于波形輸出、重新繪制和退出。界面如圖2所示。用戶拖動鼠標左鍵在圖片框繪制波形時,同時將各點值存儲下來,按波形產生的鍵值傳送給單片機系統。

圖2 用戶界面

3.3 單片機系統

單片機系統主要完成正確接收數據和產生波形的任務。主要由一個單片機8951和一片整形芯片7852以及放大電路組成。為確保隨時響應主程序產生的波形,使用串行口中斷進行通訊,通訊實現的編程在第2部分中已經介紹。本處介紹的重點是單片機與PC機的通訊部分。

圖3 通訊流程圖

因為本系統是單純用于學生實驗的,同時在本系統中,PC機和單片機是一對一的關系,沒有和其他設備相連,相對關系比較簡單,不會出現多余中斷,所以我們在程序中沒有設計更多的容錯子程序。同時在整形合成部分、放大輸出部分也力求簡單,沒有設計過多的濾波、過壓等線路,以達到廉價、可靠、穩定的目的。

4 應用情況與不足

用此方法設計的任意波形發生器在實際中進行了應用實驗。我們分別在汽車專業和電子專業的學生在實驗課程中進行了信號模擬,對于電子人為信號的變化和洗車方向轉動的模擬都實現了較好的信號發生實際情況達到了設計要求,輔助學生們在實驗中做出了各種計劃數據的效果。

本系統的不足之處在于只是一個低頻的信號發生器,信號范圍有限,不能適應高頻率的要求。如果是高頻和其它要求較嚴格的波形還需要專門的發生器。

參考文獻:

[1] 陳蔚.低頻任意波形發生器的設計與實現[J].儀表技術,2004,(5):34-35.

[2] 從宏壽.任意波形發生器的設計與實現[J].電子技術,2004,(10):59-63.

[3] 姚小朋,張捷.基于DDS的多波形信號發生器設計[J].研制與開發,2007,(2):41-43.

收稿日期:2008-01-20

作者簡介:謝曉廣(1971-),男,河南鄭州人,在讀碩士,高級講師,研究方向:計算機硬件應用。

主站蜘蛛池模板: 亚洲国产中文在线二区三区免| 97视频免费看| 国产成人免费视频精品一区二区| 免费不卡视频| 国产精品免费久久久久影院无码| 欧美h在线观看| 久久亚洲AⅤ无码精品午夜麻豆| 欧美日韩国产成人在线观看| 亚洲Va中文字幕久久一区| 日韩国产亚洲一区二区在线观看 | 国产精品精品视频| 国产丝袜第一页| 亚洲无码视频一区二区三区 | 日韩精品一区二区三区视频免费看| 国产麻豆福利av在线播放| 欧美亚洲一区二区三区在线| 国产麻豆福利av在线播放| 91视频免费观看网站| 欧美成人在线免费| 国产精品尤物在线| 色妞永久免费视频| 国产在线小视频| 国产精品吹潮在线观看中文| 黄色在线不卡| 欧美精品成人一区二区视频一| 亚洲不卡网| 97成人在线视频| 人妻精品久久无码区| 999精品色在线观看| 91精品伊人久久大香线蕉| 97在线视频免费观看| 免费大黄网站在线观看| 久久综合干| 亚洲天堂网在线观看视频| 日韩123欧美字幕| 亚洲综合狠狠| 久久男人视频| 女人18毛片久久| 18禁影院亚洲专区| 97av视频在线观看| 999国产精品| 中文字幕亚洲第一| 国产激爽大片在线播放| AⅤ色综合久久天堂AV色综合| 日韩麻豆小视频| 午夜精品区| 免费一极毛片| 99久久国产自偷自偷免费一区| 国产精品无码AⅤ在线观看播放| 欧美专区在线观看| 狠狠操夜夜爽| 久久这里只精品国产99热8| 免费人成又黄又爽的视频网站| 免费av一区二区三区在线| 亚洲一区二区精品无码久久久| 欧美国产中文| 久久99国产乱子伦精品免| 亚洲乱码在线播放| 日本a级免费| 欧美不卡视频在线观看| 亚洲日本中文字幕天堂网| 色天天综合| 永久免费无码日韩视频| 伊人91视频| 欧美a在线视频| 天天综合亚洲| 无码一区二区波多野结衣播放搜索| AV天堂资源福利在线观看| 99精品国产自在现线观看| 欧美三级日韩三级| 国产精品国产三级国产专业不 | 亚洲精品成人片在线观看| 青青草国产免费国产| 国产一在线| 91人妻在线视频| 在线视频一区二区三区不卡| 欧美精品二区| AV在线天堂进入| AV不卡在线永久免费观看| 亚洲综合欧美在线一区在线播放| 91探花在线观看国产最新| 国产成人精彩在线视频50|