制作串口
- 格式:doc
- 大小:72.00 KB
- 文档页数:8
visca圆口8针转接Com串口线制作教程
工具/原料
万用电表、剥线钳、电工胶布、com串口线、visca圆口线。
方法/步骤
1、准备好线材,如图1。
图1
2、用剪线钳剥开两条控制线外皮,金属屏蔽网拧成一小撮,剥开5根小线,如图2。
图2
3、使用万能电用表测出com串口下面3个孔的对应线,并标记区别出来,把多余的线剪掉(切记勿以颜色对应区分线路,必须使用万能电用表检测),如图3、4。
图3
图4
4、使用万能电用表测出visca圆口中间3根的针对应线,并标记区别出来,把多余的线剪掉(切记勿以颜色对应区分线路,必须使用万能电用表检测),如图
5、6。
图5
图6
5、将细线(发送(TxD)-发送(TxD)、地(GND)-地(GND)、接收(RxD)-接收(RxD))连接起来,并用电工胶布把铜线分别缠绕起来,以防发生短路,如图7。
图7
6、外围也缠一圈胶布,让线路看起来更美观,如图8。
图8。
单片机串口通信设计方案1.绪论1.1课题背景及意义目前,单片机的发展速度大约每两、三年要更新一代,集成度增加一倍,功能翻一番。
其发展速度之快、应用范围之广已达到了惊人的地步,它已渗透到生产和生活的各个领域,应用非常广泛。
在汽车、通信、智能仪表、家用电器和军事设备的智能化以及实时过程控制等方面,单片机都扮演着非常重要的角色[1]。
因此单片机的设计开发具有广阔的前景。
所以,对于电气类学生而言,学习一种单片机的开发是十分必要的。
而51系列的单片机,随着半导体技术的发展,其处理速度更快,性能更优越,在工业控制领域上占据十分重要的地位,通过对51系列单片机的学习而掌握单片机开发的过程是一种不错的选择。
然而单片机是一门综合性、实践性都很强的学科,其学习涉及的实验环节比较多,硬件设备投入比较大,对于大多数人而言很难投入大笔资金去购买实验器件。
而且要进行硬件电路测试和调试,必须在电路板制作完成、元器件焊接完毕之后进行,但这些工作费时费力。
因此引入EDA软件仿真系统建立虚拟实验平台,不仅可以大大提高单片机的学习效率,而且大大减少硬件设备的资金投入,同时降低对硬件设备的维护工作。
EDA设计思路是:从元器件的选取到连接、直至电路的调试、分析和软件的编译,都是在计算机中完成,所用的工作都是虚拟的。
虽然现在的电路设计软件已经很多,诸如PROTEL、ORCAD、EWB 、Multisim等,不过这些软件之间的差别都不大:都有原理图和PCB制作功能,都能进行诸如频率响应,噪音分析等电路分析,主要用于模拟电路、数字电路、模数混合电路的性能仿真与分析,但对于单片机设计及软件编程,最重要的是两者的联调,这些软件都无法实现,所以造成了单片机系统设计周期长、设计费用高等缺点[2]。
新款的EDA软件Proteus解决了上述软件的不足,成为目前最好的一款单片机学习仿真软件。
Proteus 软件是由英国Lab Center Electronics 公司开发的EDA 工具软件。
visca圆口8针转接Com串口线制作教程
工具/原料
万用电表、剥线钳、电工胶布、com串口线、visca圆口线。
方法/步骤
1、准备好线材,如图1。
图1
2、用剪线钳剥开两条控制线外皮,金属屏蔽网拧成一小撮,剥开5根小线,如图2。
图2
3、使用万能电用表测出com串口下面3个孔的对应线,并标记区别出来,把多余的线剪掉(切记勿以颜色对应区分线路,必须使用万能电用表检测),如图3、4。
图3
图4
4、使用万能电用表测出visca圆口中间3根的针对应线,并标记区别出来,把多余的线剪掉(切记勿以颜色对应区分线路,必须使用万能电用表检测),如图
5、6。
图5
图6
5、将细线(发送(TxD)-发送(TxD)、地(GND)-地(GND)、接收(RxD)-接收(RxD))连接起来,并用电工胶布把铜线分别缠绕起来,以防发生短路,如图7。
图7
6、外围也缠一圈胶布,让线路看起来更美观,如图8。
图8
(注:专业文档是经验性极强的领域,无法思考和涵盖全面,素材和资料部分来自网络,供参考。
可复制、编制,期待你的好评与关注)。
一种rs485串口自动收发控制及指示电路的制作方法RS485串口是一种常用的通信协议,常用于远距离通信和多节点通信。
为了实现对RS485串口的自动收发控制及指示,可以设计一个电路来实现。
下面将介绍一种制作RS485串口自动收发控制及指示电路的方法。
首先,我们需要准备以下材料和工具:1. RS485模块2. Arduino开发板3. MAX485芯片4.逻辑门电路芯片5. LED灯6.电阻、电容等相关元件7.连接线、焊锡工具等制作步骤如下:1.首先,我们将RS485模块和Arduino开发板连接起来。
将RS485模块的A、B线分别连接到Arduino开发板的串口引脚,如A线连接到TX引脚,B线连接到RX引脚。
同时,还需要将RS485模块的GND引脚和Arduino开发板的GND引脚连接起来,以确保电路的接地。
2.接下来,我们需要添加MAX485芯片。
将MAX485芯片的VCC和GND引脚连接到电源上,确保其正常工作。
然后,将MAX485芯片的A、B线分别连接到RS485模块的A、B线上。
此时,RS485模块的A、B线通过MAX485芯片和Arduino开发板相连接。
3.然后,我们需要添加逻辑门电路芯片。
逻辑门电路芯片的作用是控制RS485模块的发送和接收功能。
我们将逻辑门电路芯片的引脚与Arduino开发板的引脚相连接。
具体连接方式可以根据所使用的逻辑门电路芯片而定,通常需要将逻辑门电路芯片的控制引脚连接到Arduino开发板的某个数字引脚上,以实现对RS485模块的控制。
4.接下来,我们需要添加LED灯来指示RS485模块的发送和接收状态。
我们将LED灯的阳极(长脚)连接到逻辑门电路芯片的输出引脚上,将LED灯的阴极(短脚)连接到电源的负极上,以实现对LED 灯的控制和指示。
5.最后,我们需要添加一些电阻、电容等相关元件来保护电路和改善信号质量。
具体的元件数值和连接方式可以根据实际需求而定,在这里不作详细介绍。
visca圆口8针转接Com 串口线制作教程
万用电表、剥线钳、电工胶布、com串口线、visca圆口线。
1、准备好线材,如图1。
图1
2、用剪线钳剥开两条控制线外皮,金属屏蔽网拧成一小撮,剥开5根小线,如图2。
图2
3、使用万能电用表测出com串口下面3个孔的对应线,并标记区别出来,把多余的线剪掉(切记勿以颜色对应区
分线路,必须使用万能电用表检测),如图3、4。
图3
图4
4、使用万能电用表测出visca圆口中间3根的针对应线,并标记区别出来,把多余的线剪掉(切记勿以颜色对应区分线路,必须使用万能电用表检测),如图
5、6。
图5
图6
5、将细线(发送(TxD)发送(TxD)、地(GND)地(GND)、接收(RxD)接收(RxD))连接起来,并用电工胶布把铜线分别缠绕起来,以防发生短路,如图7。
图7
6、外围也缠一圈胶布,让线路看起来更美观,如图8。
图8。
串口线序制作2篇串口线序制作(上)所谓串口线序制作,是指制作用于串口通信的连接线序。
串口通信是现代计算机与外部设备之间进行数据交换的一种通信方式,其主要特点是通信稳定可靠、传输速度较快。
对于需要频繁与计算机进行数据交换的设备而言,串口连接线序的制作至关重要。
一、串口线序的基本概念1. 串口线序的作用串口线序,顾名思义,就是对串口连接线进行正确的连接和安装顺序。
正确的线序可以保证计算机与外部设备之间数据的正常传输,确保通信的稳定性和可靠性。
2. 常见串口线序类型常见的串口线序类型有DB9接口、DB25接口和RJ45接口等。
每种类型的线序都有相应的连接标准和连接线序图,使用者在制作时需根据设备的接口类型选择相应的线序类型。
3. 串口线序的制作流程制作串口线序的一般流程为:选择合适的接口类型→准备所需材料→按照线序图连接线序→测试线序是否正常→固定线序→使用护套等辅助材料固定线序→测试稳定性。
二、串口线序制作的注意事项1. 选择合适的接口类型根据连接设备的接口类型,选择相应的串口线序类型。
不同的设备接口有不同的线序连接方式,务必根据设备的接口类型选取正确的线序类型,否则会导致连接不稳定,甚至不能通信。
2. 准备所需材料制作串口线序所需的材料有:串口连接器、连接线、焊锡和焊接工具等。
备齐所需的材料,方便制作过程中的使用。
3. 按照线序图连接线序根据所选的线序类型,查找对应的线序图,按照线序图的要求进行正确的连接。
连接过程中要注意线序的顺序和方向,保证连接的准确性。
4. 测试线序是否正常连接结束后,进行线序测试。
可以使用串口连接测试仪或者其他串口设备进行测试,确认线序连接无误后才能进一步进行下一步操作。
(未完待续)串口线序制作(下)5. 固定线序在测试线序连接无误后,需将线序连接进行固定。
可以使用胶带、绑线带或者热缩管等材料来固定线序连接点,以避免在使用过程中断开或松动导致通信故障。
6. 使用护套等辅助材料固定线序除了固定线序连接点外,还可以使用护套等辅助材料来加固整个线序连接端口。
深入浅出VC++串口编程之基本概念 (1)基于DOS (7)1.BIOS中断 (7)2.硬件中断 (10)3.硬件查询 (15)基于Win32API (17)API描述 (17)例程 (22)基于控件 (28)MSComm控件 (28)例程 (32)第三方串口类 (39)类实现 (39)实例 (55)深入浅出VC++串口编程之基本概念在PC机的主板上,有一种类型的接口可能为我们所忽视,那就是RS-232C串行接口,在微软的Windows系统中称其为COM。
我们可以通过设备管理器来查看COM的硬件参数设置,如图1。
图1 在Windows上查看PC串口设置迄今为止,几乎每一台PC都包含COM。
本质而言,COM是PC为和外界通信所提供的一种串行数据传输的接口。
作为一种物理通信的途径和设备,它和目前风靡的另一种串行接口――USB所提供的功能是一致的。
不过RS-232C显然已经开始被后起之秀USB赶超,因为USB的传输速率已经远远超过了RS-232C。
尽管如此,RS-232C仍然具有非常广泛的应用,在相对长的一段时间里,难以被USB 等接口取代。
RS-232C接口(又称EIA RS-232C),1970年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定,全名是"数据终端设备(DTE)和数据通讯设备(DCE)之间串行二进制数据交换接口技术标准"。
本文将对这一接口进行硬件原理的介绍,随后我们将逐章学习DOS平台的串口编程,及Windows平台下基于API、控件和第三方类的串口编程,最后本文将给出一个综合实例。
硬件原理众所周知,CPU与存储芯片和I/O芯片的通信是并行的(并行传输的最大位数依赖于CPU的字长、数据总线的宽度),一种叫做UART(通用异步收发器,Universal Asynchronous Receiver/Transmitter)的芯片提供了并行数据传输和RS-232C串行数据传输方式的转换。
基于PL2303的USB转串口制作PL2303是一款常用的USB转串口芯片,可以将USB接口转化为串口接口,使得计算机可以与串口设备进行通信。
本文将介绍如何基于PL2303芯片制作USB转串口模块。
首先,我们需要准备以下材料和工具:1.PL2303芯片:从电子元件市场或在线平台购买。
2.PCB板:用于固定和连接芯片和其他电子元件。
3.电子元件:例如电阻、电容、晶振、电源电容等。
BA型接口:用于连接到计算机的USB接口。
5.串口接口:例如DB9接口。
6.焊接工具:包括焊锡丝、焊台和吸锡器等。
接下来,按照以下步骤进行制作:步骤1:设计原理图首先,根据PL2303芯片的规格和使用说明书,设计电路原理图。
原理图应包括PL2303芯片、晶振、电源电容、串口接口等电子元件。
确保电路连接正确,没有错误。
步骤2:绘制PCB板将电路原理图转化为PCB布局图。
根据原理图,将电子元件适当地摆放在PCB板上,并根据PL2303芯片的引脚布局,绘制连接线路。
在绘制过程中,注意保持线路的短、直、粗,以减小串扰和电阻。
步骤3:制作PCB板使用PCB制作软件,将PCB布局图生成PCB板制作文件。
然后,将制作文件发送给PCB厂家进行加工。
一般可以选择将制作文件发送到PCB厂商进行批量制作,或者使用PCB切割机在家中进行个人制作。
步骤4:焊接电子元件将PL2303芯片和其他电子元件焊接到PCB板上。
在焊接过程中,要注意将电子元件正确地对准相应的焊盘,并使用焊锡固定。
在焊接完成后,使用吸锡器去除多余的焊锡,以确保焊点的质量和可靠性。
步骤5:测试和调试将制作好的USB转串口模块连接到计算机,并使用串口通信软件进行测试和调试。
确保模块可以正确地通过USB与计算机进行通信,并能够与串口设备进行数据交互。
步骤6:封装模块根据需要,将制作好的USB转串口模块进行封装。
可以选择使用塑料外壳或其他材料将模块包裹起来,以保护电路和提高外观质量。
总结:通过以上步骤,我们可以基于PL2303芯片制作USB转串口模块。
目次:1.建立项目2.在项目中插入MSComm控件3.利用ClassWizard定义CMSComm类控制变量4.在对话框中添加控件5.添加串口事件消息处理函数OnComm()6.打开和设置串口参数7.发送数据在众多网友的支持下,串口调试助手从2001年5月21日发布至今,短短一个月,在全国各地累计下载量近5000人次,在近200多个电子邮件中,20多人提供了使用测试意见,更有50多位朋友提出要串口调试助手的源代码,为了答谢谢朋友们的支持,公开推出我最初用VC控件MSComm编写串口通信程序的源代码,并写出详细的编程过程,姑且叫串口调试助手源程序V1.0或VC串口通讯源程序吧,我相信,如果你用VC编程,那么有了这个代码,就可以轻而易举地完成串口编程任务了。
(也许本文过于详细,高手就不用看)开始吧:1.建立项目:打开VC++6.0,建立一个基于对话框的MFC应用程序SCommTest(与我源代码一致,等会你会方便一点);2.在项目中插入MSComm控件选择Project菜单下Add To Project子菜单中的 Components and Controls…选项,在弹出的对话框中双击Registered ActiveX Controls项(稍等一会,这个过程较慢),则所有注册过的ActiveX控件出现在列表框中。
选择Microsoft Communications Control, version 6.0,,(如果你在控件列表中看不到Microsoft 单击Insert按钮将它插入到我们的Project中来,接受缺省的选项。
Communications Control, version 6.0,那可能是你在安装VC6时没有把ActiveX一项选上,重新安装VC6,选上ActiveX就可以了),这时在ClassView视窗中就可以看到CMSComm类了,(注意:此类在ClassWizard中看不到,重构clw文件也一样),并且在控件工具栏Controls中出现了电话图标(如图1所示),现在要做的是用鼠标将此图标拖到对话框中,程序运行后,这个图标是看不到的。
3.利用ClassWizard定义CMSComm类控制对象打开ClassWizard->Member Viariables选项卡,选择CSCommTestDlg类,为IDC_MSCOMM1添加控制变量:m_ctrlComm,这时你可以看一看,在对话框头文件中自动加入了//{{AFX_INCLUDES() #include "mscomm.h" //}}AFX_INCLUDES (这时运行程序,如果有错,那就再从头开始)。
4.在对话框中添加控件向主对话框中添加两个编辑框,一个用于接收显示数据ID为IDC_EDIT_RXDATA,另一个用于输入发送数据,ID为IDC_EDIT_TXDATA,再添加一个按钮,功能是按一次就把发送编辑框中的内容发送一次,将其ID设为IDC_BUTTON_MANUALSEND。
别忘记了将接收编辑框的Properties->Styles中把Miltiline和Vertical Scroll属性选上,发送编辑框若你想输入多行文字,也可选上Miltiline。
再打开ClassWizard->Member Viariables选项卡,选择CSCommTestDlg类,为IDC_EDIT_RXDATA添加CString变量m_strRXData,为IDC_EDIT_TXDATA添加CString变量m_strTXData。
说明: m_strRXData 和m_strTXData分别用来放入接收和发送的字符数据。
休息一会吧?我们天天与电脑打交道,要注意保重,我现在在单杠上做引体向上可以来40次,可我都32了,佩服吗?。
好了,再接着来,下面是关键了:5.添加串口事件消息处理函数OnComm()打开ClassWizard->Message Maps,选择类CSCommTestDlg,选择IDC_MSCOMM1,双击消息OnComm,将弹出的对话框中将函数名改为OnComm,(好记而已)OK。
这个函数是用来处理串口消息事件的,如每当串口接收到数据,就会产生一个串口接收数据缓冲区中有字符的消息事件,我们刚才添加的函数就会执行,我们在OnComm()函数加入相应的处理代码就能实现自已想要的功能了。
请你在函数中加入如下代码:void CSCommTestDlg::OnComm(){// TODO: Add your control notification handler code hereVARIANT variant_inp;COleSafeArray safearray_inp;LONG len,k;BYTE rxdata[2048]; //设置BYTE数组 An 8-bit integerthat is not signed.CString strtemp;if(m_ctrlComm.GetCommEvent()==2) //事件值为2表示接收缓冲区内有字符{ ////////以下你可以根据自己的通信协议加入处理代码variant_inp=m_ctrlComm.GetInput(); //读缓冲区safearray_inp=variant_inp; //VARIANT型变量转换为ColeSafeArray型变量len=safearray_inp.GetOneDimSize(); //得到有效数据长度for(k=0;k<len;k++)safearray_inp.GetElement(&k,rxdata+k);//转换为BYTE型数组for(k=0;k<len;k++) //将数组转换为Cstring型变量{BYTE bt=*(char*)(rxdata+k); //字符型strtemp.Format("%c",bt); //将字符送入临时变量strtemp存放m_strRXData+=strtemp; //加入接收编辑框对应字符串}}UpdateData(FALSE); //更新编辑框内容}到目前为止还不能在接收编辑框中看到数据,因为我们还没有打开串口,但运行程序不应该有任何错误,不然,你肯定哪儿没看仔细,因为我是打开VC6对照着做一步写一行的,运行试试。
没错吧?那么做下一步:6.打开串口和设置串口参数你可以在你需要的时候打开串口,例如在程序中做一个开始按钮,在该按钮的处理函数中打开串口。
现在我们在主对话框的CSCommTestDlg::OnInitDialog()打开串口,加入如下代码:// TODO: Add extra initialization hereif(m_ctrlComm.GetPortOpen())m_ctrlComm.SetPortOpen(FALSE);m_ctrlComm.SetCommPort(1); //选择com1if( !m_ctrlComm.GetPortOpen())m_ctrlComm.SetPortOpen(TRUE);//打开串口elseAfxMessageBox("cannot open serial port");m_ctrlComm.SetSettings("9600,n,8,1"); //波特率9600,无校验,8个数据位,1个停止位m_ctrlComm.SetInputModel(1); //1:表示以二进制方式检取数据m_ctrlComm.SetRThreshold(1);//参数1表示每当串口接收缓冲区中有多于或等于1个字符时将引发一个接收数据的OnComm事件m_ctrlComm.SetInputLen(0); //设置当前接收区数据长度为0m_ctrlComm.GetInput();//先预读缓冲区以清除残留数据现在你可以试试程序了,将串口线接好后(不会接?去看看我写的串口接线基本方法),打开串口调试助手,并将串口设在com2,选上自动发送,也可以等会手动发送。
再执行你编写的程序,接收框里应该有数据显示了。
7.发送数据先为发送按钮添加一个单击消息即BN_CLICKED处理函数,打开ClassWizard->Message Maps,选择类CSCommTestDlg,选择IDC_BUTTON_MANUALSEND,双击BN_CLICKED添加OnButtonManualsend()函数,并在函数中添加如下代码:void CSCommTestDlg::OnButtonManualsend(){// TODO: Add your control notification handler code hereUpdateData(TRUE); //读取编辑框内容m_ctrlComm.SetOutput(COleVariant(m_strTXData));//发送数据}运行程序,在发送编辑框中随意输入点什么,单击发送按钮,啊!看看,在另一端的串口调试助手(或别的调试工具)接收框里出现了什么。
如果你真是初次涉猎串口编程,又一次成功,那该说声谢谢我了,因为我第一次做串口程序时可费劲了,那时网上的资料也不好找。
开开玩笑,谢谢你的支持,有什么好东西别忘了给我寄一份。
最后说明一下,由于用到VC控件,在没有安装VC的计算机上运行时要从VC中把mscomm32.ocx、msvcrt.dll、mfc42.dll拷到Windows目录下的System子目录中(win2000为System32)并再进行注册设置,请参考如何手工注册MSComm控件。
龚建伟 2001.6.20什么是VARIANT数据类型?如何使用VARIANT数据类型?怎么以十六进制或二进制发送和接收?如果还想再深入了解,请看:串口调试助手源程序及编程详细过程(二)2001.8.268.发送十六进制字符在主对话框中加入一个复选接钮,ID为IDC_CHECK_HEXSEND Caption: 十六进制发送,再利用ClassWizard为其添加控制变量:m_ctrlHexSend;在ClassView中为SCommTestDlg类添加以下两个PUBLIC成员函数,并输入相应代码;//由于这个转换函数的格式限制,在发送框中的十六制字符应该每两个字符之间插入一个空隔//如:A1 23 45 0B 00 29//CByteArray是一个动态字节数组,可参看MSDN帮助int CSCommTestDlg::String2Hex(CString str, CByteArray &senddata){int hexdata,lowhexdata;int hexdatalen=0;int len=str.GetLength();senddata.SetSize(len/2);for(int i=0;i<len;){char lstr,hstr=str[i];if(hstr==' '){i++;continue;}i++;if(i>=len)break;lstr=str[i];hexdata=ConvertHexChar(hstr);lowhexdata=ConvertHexChar(lstr);if((hexdata==16)||(lowhexdata==16))break;elsehexdata=hexdata*16+lowhexdata;i++;senddata[hexdatalen]=(char)hexdata;hexdatalen++;}senddata.SetSize(hexdatalen);return hexdatalen;}//这是一个将字符转换为相应的十六进制值的函数//好多C语言书上都可以找到//功能:若是在0-F之间的字符,则转换为相应的十六进制字符,否则返回-1 char CSCommTestDlg::ConvertHexChar(char ch){if((ch>='0')&&(ch<='9'))return ch-0x30;else if((ch>='A')&&(ch<='F'))return ch-'A'+10;else if((ch>='a')&&(ch<='f'))return ch-'a'+10;else return (-1);}再将CSCommTestDlg::OnButtonManualsend()修改成以下形式:void CSCommTestDlg::OnButtonManualsend(){// TODO: Add your control notification handler code hereUpdateData(TRUE); //读取编辑框内容if(m_ctrlHexSend.GetCheck()){CByteArray hexdata;int len=String2Hex(m_strTXData,hexdata); //此处返回的len可以用于计算发送了多少个十六进制数m_ctrlComm.SetOutput(COleVariant(hexdata)); //发送十六进制数据}elsem_ctrlComm.SetOutput(COleVariant(m_strTXData));//发送ASCII字符数据}现在,你先将串口线接好并打开串口调试助手V2.1,选上以十六制显示,设置好相应串口,然后运行我们这个程序,在发送框中输入00 01 02 03 A1 CC等十六进制字符,并选上以十六进制发送,单击手动发送,在串口调试助手的接收框中应该可以看到00 01 02 03 A1 CC了。