1 課設背景綜合課程設計是在完成基本電子技術類、計算機類課程之后安排的綜合設計與訓練環節,目的是要通過綜合課程設計這一實踐環節,使得學生建立起理論聯系實際的基本專業素質,要求學生能夠根據設計任務和技術指標要求完成電子信息系統設計全過程----設計、制作一個既包含硬件電路設計制作、又包含程序設計開發工作內容的小型電子系統,利用電子線路CAD軟件(Altium Designer)完成原理圖繪制、PCB版圖設計,并根據版圖進行制版,然后進行安裝和調試工作;再選擇一種計算機編程語言,完成程序設計任務。通過綜合課程設計環節,使學生得到電子信息產品的設計、制作、調試、測試四大環節的完整過程訓練,熟悉電子信息產品設計的一般過程。綜合課程設計對于提高學生綜合應用所學專業知識解決實際問題具有重要意義,同時也是培養學生獨立學習新知識的能力以及分析問題、發現問題和解決實際問題的能力,也是培養學生創新意識和創新精神的重要機會。
2 設計任務
2.1 功能模塊電路設計要求(1)計算機RS232串口<―>TTL串口的電平轉換;
(2)基于RTS、DTR功能引腳的數字控制電路設計;
(3)綜合設計軟件和硬件,使得計算機串口成為周期可控、占空比可控的方波發生器;
(4)編寫程序實現計算機之間的串行通信;
(5)學有余力可以考慮如何利用串口閑置資源實現數據采集功能。
2.2 課設設計任務1. 熟悉綜合課程的內容和要求; 對所要求的內容深刻理解,能夠提出綜合課程設計的合理方案,設計出符合性能指標要求的電路,提出軟件開發思路。
2. 掌握Altium Designer的使用,完成原理圖設計:熟練的自建元件庫并繪出符合規格的原理圖
3. 完成PCB制版圖繪制,掌握PCB設計規則并繪出符合模擬電路的PCB
4 制板:熟悉全套工藝的PCB制板過程,完成PCB板制作, 在此基礎上按照工藝要求安裝并調試出合格的產品
5. 根據任務要求,選擇計算機可視化程序設計語言,編寫程序,能夠實現計算機之間相互通信、數字狀態輸出控制、波形發生等功能
5. 測試與驗收:熟悉產品測試技術,驗證設計結果是否實現設計目標
8. 撰寫課程設計報告。
綜合課程設計結束時,要求學生寫出完整、規范的課程設計報告(主要包括設計任務及要求、軟硬件總體設計方案論證、硬件總體方案、各個功能電路設計、軟件總體方案、各個功能的程序設計,以及調試與測試,總結與體會等內容,并附電路原理圖、PCB版圖及實物圖,程序運行界面、源代碼以及測試數據等)。指導教師根據答辯成績、批閱課程設計報告成績、模塊演示成績三部分內容確定最終成績。按照百分制評定成績:表現(10%)、設計制作質量(50%)、實習報告(40%)。
2.3 課程設計成果要求2.3.1 基本功能設計部分
1)正確實現RS232與TTL電平之間的相互轉換;
2)計算機串行端口實現至少3種功能(雙機通信、輸出控制、波形發生器);
3)設計必要的數字電路,為輸出控制功能的驗證,提供操作對象。
4)可視化程序設計結果支持硬件系統工作,能夠保證功能正確實現,界面友好,布局合理;
2.3.2 擴展設計部分
具有數據采集功能——利用串口相關引腳,實現數字狀態的采集;
設計必要的數字電路形成2路數字狀態發生電路,為數據采集提供信號源。
2.4 課設工作進度
3 方案設計
3.1 硬件電路設計
3.1.1 RS232功能及特點(1)RS232是在1970年由美國電子工業協會(EIA)聯合貝爾系統、調制解調器廠家及計算機終端生產廠家共同制定的用于串行通訊的標準。它的全名是“數據終端設備(DTE)和數據通訊設備(DCE)之間串行二進制數據交換接口技術標準”該標準規定采用一個25個腳的DB-25連接器,對連接器的每個引腳的信號內容加以規定,還對各種信號的電平加以規定。后來IBM的PC機將RS232簡化成了DB-9連接器,從而成為事實標準。而工業控制的RS-232口一般只使用RXD、TXD、GND三條線。
(2)在RS-232-C中任何一條信號線的電壓均為負邏輯關系。即:邏輯“1”為-3到-15V;邏輯“0”為+3到+15V。
RS-232-C接口連接器一般使用型號為DB-9插頭座,通常插頭在DCE端,插座在DTE端。PC機的RS-232口為9芯針插座。一些設備與PC機連接的RS-232接口,因為不使用對方的傳送控制信號,只需要三條接口線,即“發送數據TXD”、“接收數據RXD”和“信號地GND”。RS-232傳輸線采用屏蔽雙絞線。
(3)由RS-232-C標準規定在碼元畸變小于4%的情況下,傳輸電纜長度應為50英尺,其實這個4%的碼元畸變是很保守的,在實際應用中,約有99%的用戶是按碼元畸變10%-20%的范圍工作的,所以實際使用中最大距離會遠超過50英尺,美國DEC公司曾規定容許畸變為10%而得出下面實驗結果。其中1號電纜為屏蔽電纜,型號為DECP.NO.9107723內有三對雙絞線,每對有22#AWG組成,其外覆以屏蔽線。2號電纜為不帶屏蔽的電纜。
(4)接口的信號電平值較高,易損壞接口電路的芯片,又因為與TTL電平不兼容故需使用電平轉換電路方能與TTL電路連接。
(5)傳輸速率較低,在異步傳輸時,波特率為20Kbps;因此在“南方的老樹51CPLD開發板”中,綜合程序波特率只能采用19200,也是這個原因。
(6)接口使用一根信號線和一根信號返回線而構成共地的傳輸形式,這種共地傳輸容易產生共模干擾,所以抗噪聲干擾性弱。
(7)傳輸距離有限,最大傳輸距離標準值為50英尺,實際上也只能用在50米左右。(通過外接RS-232增強器可將傳輸距離擴大到1000米左右)
3.1.2 RS232引腳及功能表3-1 RS232引腳功能
3.1.3 MAX232功能及特點(1)MAX232是一種雙組驅動器/接收器,片內含有一個電容性電壓發生器以便在單5V電源供電時提供EIA/TIA-232-E電平。當用單片機和PC機通過串口進行通信,盡管單片機有串行通信的功能,但單片機提供的信號電平和RS232的標準不一樣,因此要通過max232這種類似的芯片進行電平轉換。
(2) MAX232引腳
第一部分是電荷泵電路。由1、2、3、4、5、6腳和4只電容構成。功能是產生+12v和-12v兩個電源,提供給RS-232串口電平的需要。
第二部分是數據轉換通道。由7、8、9、10、11、12、13、14腳構成兩個數據通道。
其中13腳(R1IN)、12腳(R1OUT)、11腳(T1IN)、14腳(T1OUT)為第一數據通道。
8腳(R2IN)、9腳(R2OUT)、10腳(T2IN)、7腳(T2OUT)為第二數據通道。
TTL/CMOS數據從11引腳(T1IN)、10引腳(T2IN)輸入轉換成RS-232數據從14腳(T1OUT)、7腳(T2OUT)送到電腦DB9插頭;DB9插頭的RS-232數據從13引腳(R1IN)、8引腳(R2IN)輸入轉換成TTL/CMOS數據后從12引腳
(R1OUT)、9引腳(R2OUT)輸出。
第三部分是供電。15腳GND、16腳VCC(+5v)。
3.1.4 74HC04引腳及功能74HC04/74HCT04是六反相器,高速CMOS器件,低功耗肖特基的TTL(LSTTL)電路 。
圖3-1 74HC04
3.2 總體電路設計方案將RS232每個腳通過3片MAX232電平轉換,之后再將轉換之后的輸出通過反相器增強驅動能力,然后接LED燈來檢測電平是否轉換;通過RS232的4腳(DTR)、7腳(RTS)利用軟件產生占空比、頻率可調的方波,然后接兩個LED燈來檢測方波;通過RS232的3腳(TXD)、2腳(RXD)實現數據的發送和接收。在VB中用TXD發送數據,外接LED燈來檢測是否接收到數據。
3.3 軟件設計在VS2013開發環境中,編寫VB程序,通過一個下拉選擇框CheckBox來選擇串口,兩個文本框,一個用來發送數據,一個用來接收數據。4個Button按鈕,一個用來打開串口,一個關閉串口,一個發送數據,一個停止方波的產生。DTR、RTS產生占空比可調,頻率可調的方波,當串口打開時,在DTR、RTS使能端有效時,通過選擇相應的選擇框,即可產生方波,當頻率和占空比文本框輸入為空時,設定的頻率為1000,占空比為50,當輸入不為空時,頻率和占空比為當前輸入的值,進而實現頻率和占空比可調。同時LED燈的D3,D5會按方波周期性閃亮。當3腳發送數據時,LED的D4會閃亮,起來通信提示作用。
4 過程論述4.1 AD原理圖電路繪制過程打開Altium Designer,新建一個工程,為工程添加一個原理圖和一個PCB圖,
然后在Altium Designer中找到相應元器件的庫極其封裝,將所用到的元器件庫導入,封裝大小應根據實際元器件的尺寸大小來選擇,找到合適的元器件封裝后,按照設計好的電路圖繪制原理圖,原理畫完之后,編譯原理圖,如果有錯誤,根據提示修改原理圖,編譯通過后,將原理圖導入PCB。然后將元器件布局,按照元器件之間交線盡可能小的原則將每個元器件放到合理的位置,然后通過手動布線將PCB圖連起來,最后生成最終的PCB圖。
4.1.1 電源電路圖中所示P5排針用來上電測試時接電源,通電時,LED燈D6亮,用來測試電源電路是否接通。
圖4-1 電源電路
4.1.2 電平轉換電路將RS232的輸出端通過3片MAX232電平轉換,將串口RS232信號電平(-10,+10V)轉換為TTL信號電平(0,+5V),MAX232的1,2,3,4,5,6引腳和4個電容構成電荷泵電路,其功能是產生+12V和-12V電源,提供給RS232供電。
圖4-2 電平轉換電路
4.1.3 方波測試電路將轉換電平后的輸出經過反相器增強驅動之后,外接LED燈,當RS232輸出端給輸出時,LED燈點亮,當DTR和RTS輸出方波時,D3和D5會按照方波周期性閃爍。
圖4-3 方波檢測電路
4.1.4 總原理圖圖4-4 總原理圖
4.2 AD中PCB圖繪制過程將元器件導入PCB后,將元器件布局,按照元器件之間交線盡可能小的原則將每個元器件放到合理的位置,然后通過手動布線將PCB圖連起來,最后生成最終的PCB圖。在畫PCB圖的過程中,線寬應在30mil之間,焊盤大小和過孔應選擇適當。
4.2.1 PCB圖圖4-5 PCB圖
4.3 電路板印刷制作過程
4.3.1 濕膜工藝制單面板簡易流程底片輸出—裁板—鉆孔—拋光—烘干—刷感光線路油墨—貼線路層底片—曝光—顯影—水洗—蝕刻—水洗—脫膜—拋光—烘干—刷感光阻焊油墨—烘干—貼底片曝光—顯影—水洗—烘干—刷感光文字油墨—烘干—貼底片曝光—顯影—水洗—沉錫—切邊。
4.3.2 制作流程1)打印底片:線路層、字符層、底片。
2)裁板(保留20mm工藝邊)
3)鉆孔(鉆頭尖離板0.5mm)
4)拋光 (去除表面氧化物及油污,去除鉆孔時產生的毛刺)
5)烘干(去除孔內殘余水分)
6)刷感光線路油墨(90T絲網框)
7)烘干油墨(85℃,15分鐘)
8)貼底片曝光(時間16s,先底片對位)
9)顯影(45℃-50℃ )20-40s
10)水洗及二次固化(85℃,5-10min)
11)蝕刻(溫度50℃)30s-75s 通常50s
12)水洗
13)脫膜
14)水洗
15)刷感光阻焊油墨(感光阻焊油墨:固化劑=3:1,如果油墨比較黏的話,需要增加油墨稀釋劑調整)
16)油墨烘干(85℃,20min)
17)貼底片曝光(45s)
18)顯影 20-40s
19)水洗
20)烘干
21)刷感光文字油墨(感光字符油墨:固化劑=3:1,如果油墨比較黏,需要增加油墨稀釋劑,油墨一定要調整)
22)油墨烘干(85℃,10-20分鐘)
23)貼底片 曝光(60s)45s
24)顯影
25)水洗
27)切邊
4.4 軟件設計
4.4.1 軟件設計思路在VS2013開發環境中,編寫VB程序,通過一個下拉選擇框CheckBox來選擇串口,兩個文本框,一個用來發送數據,一個用來接收數據。4個Button按鈕,一個用來打開串口,一個關閉串口,一個發送數據,一個停止方波的產生。DTR、RTS產生占空比可調,頻率可調的方波,當串口打開時,在DTR、RTS使能端有效時,通過選擇相應的選擇框,即可產生方波,當頻率和占空比文本框輸入為空時,設定的頻率為1000,占空比為50,當輸入不為空時,頻率和占空比為當前輸入的值,進而實現頻率和占空比可調。同時LED燈的D3,D5會按方波周期性閃亮。當3腳發送數據時,LED的D4會閃亮,起來通信提示作用。
4.4.2 軟件設計流程圖圖4-6 發送數據流程圖
圖4-7 產生方波流程圖
圖4-8 方波測試流程圖
4.4.3 軟件控制面板圖4-9 VB控制面板
4.4.4 軟件源代碼詳見附件
5 焊裝測試
5.1 焊接過程將元器件按照原理圖上的正負插到板子中相應的位置,然后按照先低后高、先小后大的順序依次焊接元器件,焊接過程中應該邊焊接邊測試,以便于后面的調試。焊接完成后對應原理圖將每條線進行檢查,確定沒有虛焊、漏焊和短路情況時,然后上電測試。
5.2 焊接后電路板實物圖圖5-1 電路板實物圖
5.3 上電調試及測試結果
5.3.1 電源電路測試將元器件焊接到板子上之后,用萬用表對每個電路模塊進行排線檢查,確定沒有虛焊、短路之后,上電測試。首先對電源電路進行上電測試,給電源外接3V電壓,電源電路指示燈亮,說明電源電路工作正常,然后對其他模塊電路進行檢測。測試實物及接線圖如下圖所示。
圖5-2 電源電路實物測試
5.3.2 電平轉換電路測試在VB控制面板,選擇當前設備識別到的串口,并打開該串口。然后發送一個數據,與電平轉換電路轉換后的輸出端連接的LED燈(D4)瞬間點亮,說明RES232負邏輯電平經過MAX232之后,已經轉換為TTL電平。
圖5-3 電平轉換電路實物測試
5.3.3 方波檢測電路測試在VB控制面板,選擇當前設備識別到的串口,并打開該串口。選擇DTR和RTS使能端,然后選擇RTS和DTR方波產生,LED燈D3和D5按照給定頻率點亮和熄滅。然后用示波器分別測量RTS和DTR腳,觀察實際產生方波的頻率和占空比,并且與設定周期和占空比進行比較,計算周期和占空比的絕對誤差、相對誤差。絕對誤差=|示值-標準值|;相對誤差=|示值-標準值|/真實值。測試數據如下:
USB轉RS232串口輸出電壓測試(直接測USB轉串口9針線有關參數)
DTR邏輯輸出高電平時RS232實際電壓:4.89V拉電流:26mA
DTR邏輯輸出低電平時RS232實際電壓:-0.68V灌電流:0
RTS邏輯輸出高電平時RS232實際電壓:-0.67V拉電流:40mA
RTS邏輯輸出低電平時RS232實際電壓:-0.7V灌電流:0.2mA
多功能串口板卡TTL信號輸出電平測試(測課程設計完成板卡的TTL端有關參數)
DTR邏輯輸出高電平時實際TTL端電壓:4.98V拉電流:70mA
DTR邏輯輸出低電平時實際TTL端電壓:0.02V灌電流:0
RTS邏輯輸出高電平時實際TTL端電壓:4.78V拉電流:40mA
RTS邏輯輸出低電平時實際TTL端電壓:0.04V灌電流:0
第一組測試:(設定周期、占空比,觀測實際結果)
設定周期:1000ms實際周期:1000ms設定占空比:50%實際占空比:50%
輸出信號幅度:2.88V 周期絕對誤差:0周期相對誤差:0 占空比絕對誤差:0占空比相對誤差:0
第二組測試:(改變周期、占空比,觀測實際結果)
設定周期:4000ms實際周期:4009ms設定占空比:80%實際占空比:79.8%
輸出信號幅度:2.79V 周期絕對誤差:9ms周期相對誤差:0.22%
占空比絕對誤差:0.718占空比相對誤差:0.25%
第三組測試:(改變周期、占空比,觀測實際結果)
設定周期: 2000ms 實際周期: 2013ms 設定占空比: 80% 實際占空比: 79.2%
輸出信號幅度:2.89V 周期絕對誤差 13ms 周期相對誤差: 0.64%
占空比絕對誤差 0.008 占空比相對誤差:0.01%
圖5-4 周期(2000ms)占空比(80%)的方波
圖5-5 周期(0.1ms)占空比(80%)的方波
第三組測試:(改變周期、占空比,觀測實際結果)
設定周期:2000ms實際周期:2013ms設定占空比:80%實際占空比:79.2%
輸出信號幅度:2.89V 周期絕對誤差:13ms周期相對誤差:0.64%
占空比絕對誤差:0.008占空比相對誤差:0.01%
輸出波形截圖(粘貼下方):
圖5-6 周期(2000ms)占空比(80%)的方波
第四組測試:(改變周期、占空比,觀測實際結果)
設定周期:1000ms實際周期:1000ms設定占空比:60%實際占空比:60%
輸出信號幅度:4.7V周期絕對誤差:0周期相對誤差:0
占空比絕對誤差:0占空比相對誤差:0
輸出波形截圖(粘貼下方):
圖5-7 周期(1000ms)占空比(50%)的方波
第五組測試:(改變周期、占空比,觀測實際結果)
設定周期:3000ms實際周期:3000ms設定占空比:50%實際占空比:52.67%
輸出信號幅度:4.8V周期絕對誤差:0周期相對誤差:0
占空比絕對誤差:0.0267占空比相對誤差:0.051%
圖5-8 周期(3000ms)占空比(50%)的方波