找回密码
 注册

QQ登录

只需一步,快速开始

搜索

PC串口通信RTS,DTR编程控制+方波发生与检测设计 VB源码+电路图+PCB+报告

[复制链接]
山海致远 发表于 2020-5-2 01:53:47 | 显示全部楼层 |阅读模式
分享一个pc串口课设的全套资料分享给大家,包含vb.net源码工程,TTL串口的电平转换板子的电路原理图与pcb工程文件(AD画的),word格式的课设论文与数据分析测试报告,这些都可以从本帖下载附件.
串口通信vb.net源码文档pcb.zip (4.94 MB, 售价: 2 E币)
1.png
分析及总结
(1)通过本次课设,我熟悉了Altium Designer软件,自己手动绘制一个原理图过程中,对RS232每个引脚的作用有了一定的了解,同时熟悉了MAX232芯片的功能,但是在绘制PCB图时遇到许多问题,作为一个AD新手,布局布线缺乏经验,在排版和布线时遇到很大的困难,一个PCB的布局布线长达一周时间内无法完成,最后再别人的指导下完成了PCB的布局和布线。
(2)通过完整的制板流程,对制版工艺有了深刻的了解。通过自己的努力做的电路板,然后焊接调试,最终完成设计要求,感觉特别有成就感。在使用VB编程过程中,对VB可视化编程有了初步的接触,其中直接使用控件,减少了编程的难度,同时,编程方法图形化、界面化,可以直观的看到实现结果,增加了我对编程的兴趣。课设最重要的是锻炼了解决问题的能力,通过串口通信的设计,对串口通信有了深刻的理解,计算机不再是一个简单的单机,可以通过串口实现多个计算机之间数据传输和信息共享,往更深研究,串口可以完成计算机之间图片共享、资料共享,通过一个简单的串口,就能实现双机之间的信息共享,低成本实现了高收益。
(3)在电路板焊接过程中,存在很多问题,由于PCB图封装选择不合适,导致排针无法焊接,电源线和地线短接,调试遇到很大问题。
(4)通过DTR和RTS脚产生的方波经过实际测试,误差较小,有一定的实用性,通过串口和程序结合,可以很方便的产生一个占空比、周期可调的方波,实现方法简单快捷。

5.3.4 方波检测电路结果分析
通过测试30组不同周期,不同占空比的方波,发现当给定频率大于9000Hz时,输出方波会出现失真;占空比小于11%、大于95%时,会出现波形失真。所以通过串口产生的周期、占空比可调的方波,可以使用范围在:11%—95%占空比时,频率小于9000Hz时,此时,产生波形的占空比相对误差在0.02%左右,周期相对误差几乎为0。
5.3.5 测试实物图
89.019.jpg
图5-9 测试实物图

目录
1 课设背景
2 设计任务
2.1 功能模块电路设计要求
2.2 课设设计任务
2.3 课程设计成果要求
2.3.1 基本功能设计部分
2.3.2 扩展设计部分
2.4 课设工作进度
3 方案设计
3.1 硬件电路设计
3.1.1 RS232功能及特点
3.1.2 RS232引脚及功能
3.1.3 MAX232功能及特点
3.1.4 74HC04引脚及功能
3.2 总体电路设计方案
3.3 软件设计
4 过程论述
4.1 AD原理图电路绘制过程
4.1.1 电源电路
4.1.2 电平转换电路
4.1.3 方波测试电路
4.1.4 总原理图
4.2 AD中PCB图绘制过程
4.2.1 PCB图
4.3 电路板印刷制作过程
4.3.1 湿膜工艺制单面板简易流程
4.3.2 制作流程
4.4 软件设计
4.4.1 软件设计思路
4.4.2 软件设计流程图
4.4.3 软件控制面板
4.4.4 软件源代码
5 焊装测试
5.1 焊接过程
5.2 焊接后电路板实物图
5.3 上电调试及测试结果
5.3.1 电源电路测试
5.3.2 电平转换电路测试
5.3.3 方波检测电路测试
5.3.4 方波检测电路结果分析
5.3.5 测试实物图
6 分析及总结

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引脚功能
针脚
符号
输入/输出
说明
1
DCD
输入
数据载波检测
2
RXD
输入
接收数据
3
TXD
输出
发送数据
4
DTR
输出
数据终端顺备好
5
GND
信号地
6
DSR
输入
数据终端准备好
7
RTS
输出
请求发送
8
CTS
输入
允许发送
9
RI
输入
振铃指示

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)电路 。
89.001.jpg
图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亮,用来测试电源电路是否接通。
89.002.jpg
图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供电。
89.003.jpg
图4-2 电平转换电路
4.1.3 方波测试电路
将转换电平后的输出经过反相器增强驱动之后,外接LED灯,当RS232输出端给输出时,LED灯点亮,当DTR和RTS输出方波时,D3和D5会按照方波周期性闪烁。
89.004.jpg
图4-3 方波检测电路
4.1.4 总原理图
89.005.jpg
图4-4 总原理图
4.2 AD中PCB图绘制过程
将元器件导入PCB后,将元器件布局,按照元器件之间交线尽可能小的原则将每个元器件放到合理的位置,然后通过手动布线将PCB图连起来,最后生成最终的PCB图。在画PCB图的过程中,线宽应在30mil之间,焊盘大小和过孔应选择适当。
4.2.1 PCB图
89.006.jpg
图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 软件设计流程图
89.007.jpg
图4-6 发送数据流程图
89.008.jpg
图4-7 产生方波流程图
89.009.jpg
图4-8 方波测试流程图
4.4.3 软件控制面板
89.010.jpg
图4-9 VB控制面板
4.4.4 软件源代码详见附件




5 焊装测试
5.1 焊接过程
将元器件按照原理图上的正负插到板子中相应的位置,然后按照先低后高、先小后大的顺序依次焊接元器件,焊接过程中应该边焊接边测试,以便于后面的调试。焊接完成后对应原理图将每条线进行检查,确定没有虚焊、漏焊和短路情况时,然后上电测试。
5.2 焊接后电路板实物图
89.011.jpg
图5-1 电路板实物图
5.3 上电调试及测试结果
5.3.1 电源电路测试
将元器件焊接到板子上之后,用万用表对每个电路模块进行排线检查,确定没有虚焊、短路之后,上电测试。首先对电源电路进行上电测试,给电源外接3V电压,电源电路指示灯亮,说明电源电路工作正常,然后对其他模块电路进行检测。测试实物及接线图如下图所示。
89.012.jpg
图5-2 电源电路实物测试
5.3.2 电平转换电路测试
在VB控制面板,选择当前设备识别到的串口,并打开该串口。然后发送一个数据,与电平转换电路转换后的输出端连接的LED灯(D4)瞬间点亮,说明RES232负逻辑电平经过MAX232之后,已经转换为TTL电平。
89.013.jpg
图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%   
89.014.jpg
图5-4 周期(2000ms)占空比(80%)的方波
89.015.jpg
图5-5 周期(0.1ms)占空比(80%)的方波
第三组测试:(改变周期、占空比,观测实际结果)
设定周期:2000ms实际周期:2013ms设定占空比:80%实际占空比:79.2%
输出信号幅度:2.89V 周期绝对误差:13ms周期相对误差:0.64%
占空比绝对误差:0.008占空比相对误差:0.01%
  输出波形截图(粘贴下方):
89.016.jpg
图5-6 周期(2000ms)占空比(80%)的方波
第四组测试:(改变周期、占空比,观测实际结果)
设定周期:1000ms实际周期:1000ms设定占空比:60%实际占空比:60%
输出信号幅度:4.7V周期绝对误差:0周期相对误差:0
占空比绝对误差:0占空比相对误差:0
  输出波形截图(粘贴下方):
89.017.jpg
图5-7 周期(1000ms)占空比(50%)的方波
第五组测试:(改变周期、占空比,观测实际结果)
设定周期:3000ms实际周期:3000ms设定占空比:50%实际占空比:52.67%
输出信号幅度:4.8V周期绝对误差:0周期相对误差:0
占空比绝对误差:0.0267占空比相对误差:0.051%
89.018.jpg
图5-8 周期(3000ms)占空比(50%)的方波



您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|ELEOK |网站地图

GMT+8, 2024-12-27 11:35

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表