接口技术实验指导书V10.doc
《接口技术实验指导书V10.doc》由会员分享,可在线阅读,更多相关《接口技术实验指导书V10.doc(55页珍藏版)》请在咨信网上搜索。
接口技术实验指导书V10 ———————————————————————————————— 作者: ———————————————————————————————— 日期: 2 个人收集整理 勿做商业用途 目 录 实验1 模拟数据采集接口 ——--——-———-—-———--——-———-—--—--————-—— 2 实验2 脉冲数据采集接口 ————————-—-----——-——-————-—-——-—---—--— 8 实验3 控制信号输出接口 ——-—-----—-—-—-—-—-——-—--—---———-—---— 11 实验4 数据串行输出接口 ———---—----—-——-————-—--—--—-—-—--—--- 16 实验5 计算机串行接口 -—--——-—-———-——-——-————--———-—-—------———- 21 实验6 计算机并行接口 ---——--——--——---—--——-—---—----——-—---——-— 27 实验7 USB数据传输接口 —---—--—-———-—--—-—-——----—-—————-—————— 32 实验1、模拟数据采集接口 1。1实验目的 1 了解ADC转换器的工作原理. 2 掌握ADC的接口实现方法。 3 学会编程实现数据采集和简单处理。 1.2实验内容 1 利用单片机连接ADC3202构成电压测量显示系统. 2 编程实现数据采集、记录和显示。 3 通过标度变换实现数字电压表的功能。 4 扩展测量范围到10伏。 5 扩展测量精度到0。1毫伏。 1.3参考资料 1 模拟信号测控系统总体设计方案 如图1。1所示是温度测量控制系统的组成框图. 单片机 89C51 程序 数据显示 键盘 数据采集接口 控制报警电路 信号处理 图1.1 温度测量控制系统框图 温度传感器 数据传输 温度传感器 被放置在被测量点上,将温度值变换成为电压信号; 信号处理电路 将传感器输出的电压变成适合数据采集范围的电压信号; 数据采集接口 将电压转换成为数值并送入单片机系统; 单片机系统 完成采集电压到温度的转换,温度数据的显示,温度控制目标的设定,测量温度和设定温度的比较以及控制信号的计算; 控制报警电路 通过改变加热功率实现对温度的控制; 键盘和显示电路 实现参数的设置和数据显示; 数据传输电路 完成数据的远程传输。 2 主程序流程设计 初始化模块包括:设置程序参数初值,设置定时器参数,设置串口参数,设置中断入口。 显示键盘扫描完成显示器的段码和位码的输出和键盘码的输入,显示及延迟时间约1。6mS,每秒扫描显示器625次,每次1位,每位显示器每秒扫描约156次,其它事件的处理间隔约1。6mS,这个模块是无条件执行模块。 数据采集模块完成读取ADC转换结果,温度值计算,控制量计算,显示BCD码的转换,发送数据转换,发送过程由中断完成。 接收数据处理用来处理来自上位机的命令。 键码分析处理来自控制面板的操作命令。 入口 初始化参数 定时器 串口波特率 数据采集 温度及控制计算 BCD转换 数据发送 显示键盘扫描 延迟子程序 1秒时间到 接收数据处理 有接收数据吗 N N 键码分析模块 0.05秒到 N 图1.2 主程序流程 3数据采集程序设计 模拟转换接口采用MCP3204 串行12位ADC. 控制引脚连接:CS:P1.7,DOUT:P1.6,DIN:P1.5,CLK:P1。4 输入参数:通道号,包含在累加器A中。 输出参数:ADC转换结果BA, B高字节,A 低字节。 MCP3204采样1次需要输入 5个控制位,当控制位输入完成后留1个空位的时间开始输出数据,数据长度是12个位,每次采集共18个时钟周期。 每个时钟的上式沿数据进入ADC转换器,每个时钟的下降沿从ADC输出1位转换的结果。 MCP3204有4个输入通道,可以单端输入方式,也可以差动输入方式,控制位的格式如图1.4所示.采集CH0控制信号是08H,CH1控制信号09H,CH2控制信号0AH,CH3控制信号0BH MCP3204输出的数据高位在前,低位在后。 图1。3 MCP3204 ADC接口时序 图1.4 控制位功能表 入口 CS 置低 循环次数=10 输出1位数据 输出时钟 读取1位数据 循环次数=0 高字节保存到B 置循环次数=8 输出1位数据 输出时钟 读取一位数据 CS置高 返回 循环次数=0 N N 图1.5 数据采集程序流程 引脚连接定义: CS EQU P1.7 DOUT EQU P1.6 DIN EQU P1。5 CLK EQU P1.4 ;MCP3204数据采集子程序(共参考) ;入口参数BA-— --ACC.3 1单端 0 差动 ;— ACC.2=0 ACC.1 ACC。0 通道号 MCP3204: CLR CS SWAP A SETB C ;起始位 MOV R2,#10 ALP1: MOV DIN,C SETB CLK ;上升沿数据进 CLR CLK ;下降沿数据出 MOV C,DOUT RLC A DJNZ R2,ALP1 ANL A,#0FH MOV B,A MOV R2,#8 MOV A,#0FFH ALP2: MOV DIN,C SETB CLK CLR CLK MOV C,DOUT RLC A DJNZ R2,ALP2 SETB CS RET 1.4测试思考题 1 该测量系统的最大采集速度是多少?制约采集速度的主要因素有那些? 2 提高测量精度的方法是什么?给出扩展精度到0。1mV的设计方案。 3 如果在测控范围不变的情况下提高小信号测量精度应如何实现? 实验2、脉冲数据采集接口 2.1实验目的 1 了解脉冲信号的测量原理。 2 掌握单片机定时/计数器的使用方法。 3 掌握提高测量精度的实现方法。 2.1实验内容 1利用单片机的中断和定时器和实现脉冲周期的测量. 2利用单片机的定时/计数器实现脉冲频率的测量。 3 实现脉冲宽度的测量。 4 实现电机转速的测量。 2。3参考资料 1 脉冲信号测量基本方案 如图2。1所示是温度测量控制系统的组成框图。 单片机 89C51 程序 数据显示 键盘 信号整形 控制电路 传感器 图2.1转速测量控制系统框图 数据传输 电机 传感器 将电机的转速转换成为电压脉冲信号,脉冲信号的频率和宽度与电机的转动速度有关; 信号整形电路 将传感器输出的电压变成标准脉冲信号; 单片机系统 完成脉冲信号参数的测量,将测量的脉冲参数变成电机的转速显示出来; 控制电路 通过PWM实现对电机转速的控制; 键盘和显示电路 实现参数的设置和数据显示; 数据传输电路 完成数据的远程传输。 2 脉冲周期测量原理 数据锁存器 16位计时器 IE Fosc/12 外部脉冲 中断服务 清零 锁存 中断 中断 T 计数时间 图2。2 脉冲周期测量原理 3 脉冲频率的测量 数据锁存器 16位计数器 16位计时器 Fosc/12 外部脉冲 中断服务 清零 锁存 软件1/20 频率F=计数器值N/计数时间T 当定时器将为50mS 分频20次为1秒,F=N 图 2。.3 脉冲频率测量原理 4 脉冲宽度的测量 数据锁存器 16位计时器 IE Fosc/12 外部脉冲 中断服务 清零 锁存 中断 中断 计数时间 门控 图2.5 脉冲宽度测量原理 5 脉冲频率测量程序(参考) 中断程序 定时器初值重装 计数值-1=0 读计数器值保存 中断返回 N Y T0_INT:CLR TR0 MOV TH0,#3CH MOV TL0,#0B0H SETB TR0 DJNZ 40H,T0E MOV 40H,#20 CLR TR1 MOV 42H,TH1 MOV 43H,TL1 MOV TH1,#0 MOV TL1,#0 SETB TR1 T0E: RETI 频率测量程序说明:在12M时钟下定时器0的定时时间为50mS,40H单元为20次计数器,采用减计数工作方式,当40单元减为“0"即表示1秒到.外部脉冲计数器采用计数器1,测量结果保存在片内存储器的42H和43H单元。 2.4 思考题 1 计数器的测量精度为±1,计数相对误差小于1%的有效计数范围。 2 如何提高转速测量的精度。 3 单片机在12M时钟时计数器能够测量的最高频率是多少?如何实现更高频率的测量? 实验3、控制信号输出接口 3。1实验目的 1 了解控制原理和控制信号的输出方法. 2 掌握模拟控制信号的输出方法。 3 掌握脉冲控制信号的实现方法。 3.2实验内容 1模拟控制信号输出接口的实现。 2利用单片机的定时/计数器输出PWM信号。 3 高电压控制接口的实现. 4 实现电机转速的控制. 3。3参考资料 1 控制的基本概念 指有组织的系统根据内部的变化而进行调整,使自身保持某种特定状态的活动。控制有一定的方向和目标.其作用在于使事物之间、系统之间、部门之间相互作用,相互制约,克服随机因素。 控制分为开关控制和连续控制,开关控制是对事物或系统状态的控制;连续控制是对事物或系统的变化过程的控制。 继电器是一种电磁开关,是开关控制常用的器件,具有控制功率大,被控对象与控制系统隔离的特点,但是动作有延迟,不适合频繁动作的场合. 控制过程实质上就是一个负反馈的过程,包括:基准、取样(测量)、比较、误差放大和信号输出四个主要环节。基准是希望达到的目标;取样(测量)是获取当前的结果;比较是得到当前结果和目标的差距,开关控制只需输出要大于或小于的结果,连续控制需要输出误差的数值大小;误差放大和信号输出是对外部事物施加干预,改变事物的变化规律使其向着有利于要求的目标发展。 连续控制有模拟运算电路和计算机数字运算两种实现方法,在模拟运算的控制系统中,基准是以模拟大于的形式表示的,在数值运算的系统中基准是以数值的形式表示的。 误差放大 控制输出 控制 对象 测量电路 基准电压 测量结果 图3.1 模拟运算控制系统 减法运算电路 控制参数计算 控制输出 控制 对象 测量电路 基准值 测量结果数据 图3.2 计算机控制系统 减法数值运算 从误差到控制信号的输出有多种计算方法,可以是线性的也可以是非线性的,如果用电路实现的模拟运算控制系统中,只能完成比较简单的运算。在计算机控制系统中可以实现较复杂的运算关系. 最经典的是控制算法是:PID算法,P比例控制,I积分控制,D微分控制。比例控制是一种线性运算,根据误差的大小输出控制信号;积分运算是为了减小控制误差,提高控制精度,由于积分运算增加了测量时间,使误差放大,表现的更加突出了,但是延迟了测量周期,降低了控制系统的反应速度;微分控制从测量结果或从误差中提取信号的变化率,可以实现变化规律的预测,从而实现提前控制,可以增加系统的反应速度。 在数值化的控制系统中PID算法可以很方便第分阶段选择,相互之间的比例关系也可以分阶段设置.模糊控制算法、神经网络算法、最优化算术等解决的都是误差与控制信号之间的转化问题,都是按不同的方法对控制规律进行预测。 比例运算 P 信号输出 求和运算 基误差 控制信号 或 控制参数 图3.3 PID运算过程 积分运算 I 微分运算 D 2 模拟信号输出接口 图3。4 模拟输出接口电路 模拟信号接口是模拟运算的控制信号和计算机控制系统之间的接口,通过DAC电路输出模拟电压作为控制系统的比较标准,实现对过程的控制。一般控制精度低于检测精度,所以在大多数情况下8位的控制接口是可以满足控制精度要求的。 图3。4所示的模拟输出接口采用负的参考电压,使输出信号为正值,输出值越大,输出电压越高,采用了偏置电阻R1将输出电压下拉使输出电压为双极性信号。输出信号的大小和极性要根据实际控制对象的要求合理设置。 3 PWM脉冲控制信号产生原理 脉冲信号输出的电路比较简单,容易隔离,对于高电压控制对象的场合特别适合。常用的是PWM(脉冲宽度调制)信号。 PWM信号是脉冲周期一定,脉冲宽度随控制要求变化的控制信号。首先根据控制对象的变化周期确定控制信号的周期,一般控制周期大于等于控制对象的反应周期(当控制信号发生变化到输出结果产生明显变化所需要的时间);对控制信号而言,在一个控制周期内可以有多个信号周期,但是在一个控制周期内控制信号的参数保持不变。比如温度控制,温度的变化比较慢(与加热的功率和被加热的对象体积、比热、热传导速度有关),通常采用50Hz的220伏电源作为加热的能源。采用周期为1秒的控制信号,每秒钟有100个做功的周期,功率的控制精度可以达到1%,如果以2秒为周期可以达到0.5%. 为了实现高电压的隔离和减小对电网的污染,通常采用带过零检测的光耦合器件如MOC30XX,电路如图3.5所示。当控制信号为低电平时,光耦合导通,可控硅U7导通,负责电阻R3上获得功率发热,当控制信号为高电平时,R3中无电流,停止加热. 图3.5 带过零检测的交流高电压控制电路 PWM信号有两个参数,1是周期,2是占空比,对幅度的要求由外部电路决定,采用1个定时器可以实现PWM信号的输出,原理如图3。6所示。设T=2秒,占空比变化率为0.5%,占空比参数1—199之间变化,因为定时器的值不能设为“0”,定时器定时周期为50mS。用1个逻辑变量指示输出电平的高低。当输出逻辑1是,维持时间为:占空比的值,当输出低电平时,维持时间为:周期—占空比值,两次输出之和为控制信号的周期。 PWM: PUSH ACC CLR TR0 MOV TH0,#03CH MOV TL0,#0B0H SETB TR0 DJNZ 40H,PWM_END CPL 78H JNB 78H,PW0 PW1:MOV 40H,PWM AJMP PWM_END PW0:MOV A,#256H SUBB A,PWM MOV 40H,A PWM_END:POP ACC RETI 计数器0中断周期50mS PWM为占空比 40H 计数器 PWM输出参考程序 定时器初值重装 定时器中断 状态取反=1 计数值=占空比 高电平时间 计数值-1=0 计数值= 周期-占空比 低电平时间 中断返回 Y Y N N 图3.6PWM输出流程 当控制精度要求不是太高时,输出频率比较高的PWM信号,经过低通滤波可以得到直流电压信号,实现DAC的功能. 3。4 思考题 1 要实现对直流电机转速的控制PWM信号的频率应改选择多少比较合适。 2 要实现对交流电机转速的控制应该选择什么样的控制方法比较合适. 3 用单片机的引脚输出信号驱动一个12伏的继电器,设计并画出电路图。 实验4 数据串行输出接口 4。1 实验目的 1 了解多点数据传输原理; 2 掌握实现多机数据传输的编程方法; 4。2 实验内容 1 编写并调试数据串发送程序,数据串的长度可变,数据串以0X0D结束; 2 编写并调试串口的数据接收程序,接收数据串长度0-16字节可变; 3 组合以上两个程序的功能实现当接收到规定的字符串时发送数据; 4 增加控制功能,当接收到规定的字符串控制某引脚置位或复位。 5 增加地址识别功能,实现多点传输. 4.3 参考资料 1串行数据发送接收的基本流程 串口中断 保护现场 清除发送标志 RI=1? 发送数据 指针+1 发送出界? 发送结束? 恢复现场 中断返回 发送结束符 置结束标志 置结束标志 清除接收标志 接收结束? 接收出界? 接收数据处理 接收指针复位 保存接收数据 接收指针+1 Y Y Y Y Y 图4.1 串口中断字符串发送接收程序流程 设置发送缓冲区 16个字节,接收缓冲区16个字节,接收指针1字节,发送指针1字节。采用中断方式工作,中断程序程序流程如图4.1所示。 2 上位机与下位机的通信关系 上位机称为主机,下位机称为从机,上位机主动发出命令,下位机根据命令的要求在规定的时间内作出响应,上位机与下位机通信流程如图4。2所示,命令分析流程如图4.3所示. 开始 初始化 发送命令 发送采集命令 数据返回 设备号+1 设备号>N 设备号=1 错误处理 显示数据 显示界面 接收操作命令 其他命令 开始 初始化 采集并发送数据 采集并发送数据 自动发送数据 收到命令吗? 地址符合? 时间到? 数据采集命令? 其他命令 处理 A上位机 B下位机 N N N N N N N Y Y Y Y Y Y Y Y 图4。2 上位机-下位机通信流程 命令格式如下: 上位机发送命令结构: 地址代码1字节 命令代码1字节 数据n字节 结束符 0X0D 下位机发送数据结构: 地址代码1字节 状态代码1字节 数据n字节 结束符 0X0D 开始 地址符合? 通用地址? 命令=A 命令=R 命令=W 命令=空 输出应答信息 输出数据 接收数据 命令 RXX 命令WXX=DD 地址处理 地址处理 错误命令处理 返回 Y Y Y N N Y Y Y Y Y N N 图4.3 命令分析流程图 3 串行通信接口电路 单片机串行通信的物理层直接输出的是TTL的逻辑电平,位机是经过反相驱动的±12伏的逻辑电平.两者要实现连接必须进行反相和电平转换。常用的器件是MAX232,这个器件的特点是除具有信号逻辑的转换置位,还具有电源转换功能,将5伏电源变成±10的电源,大大简化了接口的供电电路。采用光耦合的转换电路,使主机和从机相互隔离,避免带电连接造成接口损坏,PC一侧的正电源来自接口的状态信号,负电源来自发送引脚的无信号状态,这就造成不能实现全双工的通信,即同时发送和接收,但是大多数的通信是主从应答方式,只需要半双工就可以了,由于光耦合的关闭时间较长,通信的波特率受到限制,经测试9600的波特率工作正常。 4。4a 串口逻辑电平转换电路 图4。4b 带隔离的串口逻辑转换电路 4 参考程序 串口中断程序说明:发送数据缓冲区40H-4FH,40H为发送指针,接收数据缓冲器50H—5FH,50H为接收指针,0DH为数据串结束控制符,因为串口每次中断只表示1个字符的发生和接收,所以设置为70H、71H为串标志,位71H=1表示正在发送之中,71H=0表示数据串发送结束;位70H=1表示数据串接收完成等待处理。 COM: PUSH 00 PUSH A JB RI,COMR CLR TI JNB 71H,TE1 MOV R0,40H CJNE R0,#4FH,COMT1 MOV SBUF,#0DH CLR 71H AJMP COME COMT1:MOV A,@R0 MOV SBUF,A INC 40H CJNE A,#0DH,TE1 MOV 40H,#41H CLR 71H TE1: AJMP COME COMR:CLR RI MOV A,SBUF MOV R0,50H MOV @R0,A INC 50H CJNE A,#0DH,COME MOV 50H,#51H SETB 70H COME:POP A POP 00H RETI 4。4 思考题 1 数据串的发送与字节发送相比,在编程时需要考虑哪些问题? 2 在1对多点通信与点对点的通信相比,在编程时需要考虑哪些问题? 3 PC机的串口输出信号和单片机的串口输出信号有什么差别? 实验5 计算机的并行接口 5。1实验目的 1、了解计算机并行接口的电路结构和接口信号特性。 2、掌握并行接口的寄存器读写方法. 3、学会并行接口的基本使用方法。 5。2实验内容 1、实现数据寄存器和控制寄存器的读写操作. 2、实现接口的外部数据输入操作。 3、实现状态寄存器的定时读操作。 5.3参考资料 1 计算机并行接口概述 并口的寄存器地址 序号 寄存器名 并口1地址 并口2地址 1 数据输出寄存器 378H 278H 2 数据输入寄存器 378H 278H 3 控制输出寄存器 37AH 27AH 4 状态输入寄存器 379H 279H 状态寄存器描述 D7 D6 D5 D4 D3 D2 D1 D0 BUS ACK PERROR SELECT FAULT IRQ 保留 保留 控制寄存器描述 D7 D6 D5 D4 D3 D2 D1 D0 保留 保留 DIR ACK SEL_IN INIT AUTOFD STROBE 并行接口信号描述 DB25引脚号 信号线名称 输出地址 输入地址 功能描述 1 STROBE# 37AH-D0 数据锁存 2-9 D0—D7 378H 378H 双向数据传输 10 ACK# 379H—D6 应答产生IRQ 11 BUSY 379H—D7 打印机忙状态 12 PERROR 379H-D5 打印机错误 13 SELECT 379H-D4 外设联机状态 14 AUTO FEED# 37AH-D1 自动换行 15 FAULT# 379H—D3 错误 16 INIT# 37AH—D2 初始化 17 SLCTIN# 37AH—D3 选择打印机 18-25 GND INIE中断允许 37AH-D4 中断使能信号 DIR 37AH-D5 线路/寄存器 2并行接口原理构框图 ISA 总线 双向 数据 缓冲 地址 译码 电路 数据 输出 寄存器 378 数据 输入 寄存器 378 控制 输出 寄存器 37A 控制 输入 寄存器 27A 状态 输入 寄存器379 1 13 12 25 D0-D7 A0-A9 IOR IOW DIR D0-D7 D1…D3 D3…D7 D5 DIR D4中断允许 D0-D7 IRQ 中断信号 D6 ACK AEN 写378 读378 写37A 读37A 读379 DB25 打印机接口 图5。1 打印机接口框图 3 并行接口的高级语言程序设计 1 驱动程序的生成 使用WINDRIVER(WD1000)驱动生成工具. A 安装后启动程序,在驱动对象选择ISA ParallelPort选项,选择界面如图5。2所示. B选择下一步产生测试界面,对接口功能进行测试; C选择快捷图标的第六个生成代码,选择语言类型和编译工具后,点击“OK”并输入程序名称即生成驱动程序。 图5.2 驱动接口选择界面 图5。3 代码生成选择界面 3 编辑程序 打开选中的编辑器,调入生成的驱动程序,即可看到基本的接口函数.如Viuasl Basic 语言程序如下:从端口读一个字节的函数 Function PP_ReadByte(hPP As PP_HANDLE, dwOffset As Long) As Byte Dim Trans As WD_Transfer Trans.dwPort = hPP。base_addr + dwOffset Trans.cmdTrans = RP_BYTE WD_Transfer hPP.hWD, Trans PP_ReadByte = Trans.dwLowDataTransfer End Function 写一个字节到端口的函数 Sub PP_WriteByte(hPP As PP_HANDLE, dwOffset As Long, Data As Byte) Dim Trans As WD_Transfer Trans.dwPort = hPP.base_addr + dwOffset Trans.dwLowDataTransfer = Data Trans.dwHighDataTransfer = 0 Trans。cmdTrans = WP_BYTE WD_Transfer hPP。hWD, Trans End Sub hPP。base_addr 接口基地址 dwOffset 端口寄存器地址偏移量 使用这两个函数就可以完成对端口寄存器的读和写操作。 如写一个数据到数据端口寄存器 Sub PP_WriteData(hPP As PP_HANDLE, Data As Byte) PP_WriteByte hPP, PP_data_OFFSET, Data End Sub 从数据端口寄存器读一个数据 Function PP_ReadData(hPP As PP_HANDLE) As Byte PP_ReadData = PP_ReadByte(hPP, PP_data_OFFSET) End Function 图5。4 并行接口测试操作界面 使用说明:选择测试打印口基地址378H 数据寄存器有写字节操作和+1操作两种方法,白色背景表示该位数据是“0”,蓝色表示该位数据是“1”。 控制端口有字节写操作和点击,当鼠标左键点击对应位时,该位的状态取反。 状态寄存器位只读. 从端口读一个字节 Function PORT_ReadByte(hPORT As PORT_HANDLE, addrSpace As Integer, dwOffset As Long) As Byte Dim data As Byte Dim pData As Long ’PBYTE If hPORT。cardReg.Card。Item(addrSpace)。Item = ITEM_MEMORY Then pData = (hPORT.cardReg.Card.Item(addrSpace)。dw4 + dwOffset) Call memcpy(VarPtr(data), pData, LenB(data)) ’ read from the memory mapped range directly Else Call PORT_ReadWriteBlock(hPORT, addrSpace, dwOffset, True, VarPtr(data), 1, PORT_MODE_BYTE) End If PORT_ReadByte = data End Function 向端口写一个字节 Sub PORT_WriteByte(hPORT As PORT_HANDLE, addrSpace As Integer, dwOffset As Long, data As Byte) Dim pData As Long ’PBYTE If hPORT。cardReg.Card.Item(addrSpace).Item = ITEM_MEMORY Then pData = (hPORT。cardReg.Card。Item(addrSpace)。dw4 + dwOffset) Call memcpy(pData, VarPtr(data), LenB(data)) ' write to the memory mapped range directly Else Call PORT_ReadWriteBlock(hPORT, addrSpace, dwOffset, False, VarPtr(data), 1, PORT_MODE_BYTE) End If End Sub 写字节函数的应用方法 Private Sub 写端口_Click() data = "&h" + Text7.Text Call PORT_WriteByte(hPORT, 0, &H2, data) End Sub 读端口函数的应用方法 Private Sub 读端口_Click() data = PORT_ReadByte(hPORT, 0, &H2) Text6。Text = Hex(data) End Sub 5.4 思考题 1 描述并行接口的数据数据输出过程和数据输入过程。 2 设计一个并行接口与51单片机的连接电路,实现双向数据传输. 3 设计一个并行接口与DAC0832的连接电路,说明数据输出过程。 实验6 计算机串行接口 6.1实验目的 1了解串行数据传输的基本原理 2认识串行口输出的RS-232编码波形。 3学会串行接口的基本使用方法。 6.2实验内容 1设计基本的用户操作界面; 2实现串行接口的波特率设置,测量1个字符的实际输出波形; 3实现串行接口的数据发送和收功能。 6.3参考资料 1.控件Mscomm基本描述 MSComm 控件通过串行端口传输和接收数据,为应用程序提供串行通讯功能。MSComm 控件提供下列两种处理通讯的方式: 第一种方式(中断方式) 事件驱动通讯是处理串行端口交互作用的一种非常有效的方法。在许多情况下,在事件发生时需要得到通知,例如,在 Carrier Detect (CD) 或 Request To Send (RTS) 线上一个字符到达或一个变化发生时。在这些情况下,可以利用 MSComm 控件的 OnComm 事件捕获并处理这些通讯事件。OnComm 事件还可以检查和处理通讯错误。 表6.1通讯错误表 常数 值 描述 comEventBreak 1001 接收到一个中断信号. comEventCTSTO 1002 Clear To Send 超时.在系统规定时间内传输一个字符时,Clear To Send 线为低电平. comEventDSRTO 1003 Data Set Ready 超时。在系统规定时间内传输一个字符时,Data Set Ready 线为低电平. comEventFrame 1004 帧错误。硬件检测到一帧错误。 comEventOverrun 1006 端口超速.没有在下一个字符到达之前从硬件读取字符,该字符丢失. comEventCDTO 1007 载波检测超时。在系统规定时间内传输一个字符时,Carrier Detect 线为低电平。Carrier Detect 也称为 Receive Line Signal Detect (RLSD)。 comEventRxOver 1008 接受缓冲区溢出。接收缓冲区没有空间。 comEventRxParity 1009 奇偶校验。硬件检测到奇偶校验错误 comEventTxFull 1010 传输缓冲区已满。传输字符时传输缓冲区已满 comEventDCB 1011 检索端口的设备控制块 (DCB) 时的意外错误 表6。2 通讯事件表 常数 值 描述 comEvSend 1 在传输缓冲区中有比 Sthreshold 数少的字符。 comEvReceive 2 收到 Rthreshold 个字符。该事件将持续产生直到用 Input 属性从接收缓冲区中删除数据。 comEvCTS 3 Clear To Send 线的状态发生变化。 comEvDSR 4 Data Set Ready 线的状态发生变化.该事件只在 DST 从 1 变到 0 时才发生。 comEvCD 5 Carrier Detect 线的状态发生变化。 comEvRing 6 检测到振铃信号.一些 UART(通用异步接收— 传输)可能不支持该事件。 comEvEOF 7 收到文件结束(ASCII 字符为 26)字符。 第二种方式(查询方式) 在程序的每个关键功能之后,可以通过检查 CommEvent 属性的值来查询事件和错误。如果应用程序较小,并且是自保持的,这种方法可能是更可取的。例如,如果写一个简单的电话拨号程序,则没有必要对每接收一个字符都产生事件,因为唯一等待接收的字符是调制解调器的“确定"响应。 每个使用的 MSComm 控件对应着一个串行端口。如果应用程序需要访问多个串行端口,必须使用多个 MSComm 控件。可以在 Windows“控制面板”中改变端口地址和中断地址. 表6.3 控件主要属性 属性 描述 CommPort 设置并返回通讯端口号。 Settings 以字符串的形式设置并返回波特率、奇偶校验、数据位、停止位. PortOpen 设置并返回通讯端口的状态。也可以打开和关闭端口. Input 从接收缓冲区返回和删除字符。 Output 向传输缓冲区写一- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 接口 技术 实验 指导书 V10
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【w****g】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【w****g】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【w****g】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【w****g】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文