版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、百度文库-让每个人平等地提升自我1嵌入式技术基础与实践(第二版)1目录第1章 概述 习题参考答案.2第10章 集成电路互连总线” I2C习题参考答案 5第11章 模数转换模块/A/D习题参考答案 7第12章 系统开发其他模块应用习题参考答案 8第13章JM60的USB开发方法 习题参考答案 10第14章DZ60的CAN总线开发方法 习题参考答案 14I第1章概述习题参考答案一1 .嵌入式系统的基本含义是什么?为什么说单片机是典型的嵌入式系统?答:即MCU的含义是:在一块芯片上集成了中央处理单元 (CPU)、存储器(RAM/ROM 等)、 定时器/计数器及多种输入输出(I/O)接口的比较完整的数
2、字处理系统。大部分嵌入式系统以 MCU为核心进行设计。/ MCU从体系结构到指令系统都是按照嵌入式系统的应用特点专门设 计的,它能很好地满足应用系统的嵌入、面向测控对象、现场可靠运行等方面的要求。因此 以MCU为核心的系统是应用最广的嵌入式系统。2 .简述嵌入式系统的特点以及应用领域。答:嵌入式系统属于计算机系统,但不单独以通用计算机的面目出现;嵌入式系统开发需要专用工具和特殊方法;使用MCU设计嵌入式系统,数据与程序空间采用不同存储介质 ;开发嵌入 式系统涉及软件、硬件及应用领域的知识;嵌入式系统的其他特点,比如紧张的资源,较高稳定性要求,低功耗,低成本等。一般用于工业控制,智能家电,日常电
3、子等领域。3 .比较MCU与CPU的区别与联系。答:CPU是一个单独的 PC处理器。而 MCU,则有微处理器,存储器( RAM/ROM 等)、定 时器/计数器及多种输入输出(I/O)接口的比较完整的数字处理系统。所以可以这么说,MCU是一个包含微处理器的嵌入式系统,而 CPU紧紧是一个处理器而已。4 .举例说明嵌入式系统在日常生活中的应用。答:日常数码产品:手机, MP3, U盘,相机等。日常工业类:冰箱,空调,微波炉,汽车等。5 . C语言的那些特性使得它成为嵌入式系统中使用频率最高的高级语言。答:相比底端汇编,更简单易学;与高级语言如(C+, C#, java等)相比,执行效率高,编译后的
4、编码体积小,而且支持好的编译器还支持嵌入汇编代码;对位的操纵能力很强。6 .阅读光盘中【第01章(概述)阅读资料】中的“嵌入式 C语言工程简明规范”, 用一页纸给出嵌入式C语言工程简明规范的要点。/答:此规范主要针对单片机编程语言和08编译器而言,包括命名、注释、编码规范性等内容。建议在一个工程或者一个项目中尽量遵循相同的代码规范,而不是说你只能拥有一个代码规 范。(1)命名规则:命名清晰明了,有明确含义,使用完整单词或约定俗成的缩写。通常,较短 的单词可通过去掉元音字母形成缩写;较长的单词可取单词的头几个字母形成缩写。即"见名知意";命名风格要自始至终保持一致;命名中若使
5、用特殊约定或缩写,要有注释说明; 为了代码复用,命名中应避免适用与具体项目相关的前缀;应使用英语命名。(2)注释:注释基本原则就是有助于对程序的阅读理解,说明程序在“做什么",解释代码的目的、功能和采用的方法。一般情况源程序有效注释量在 / 30%左右。 注释语言必须准确、易 懂、简洁。边写代码边注释,修改代码同时修改相应的注释,不再有用的注释要删除。汇编和C中都用"19文件),它是Freescale MCU的机器码文件,通过写入程序可将机器码下载到 目标MCU内的Flash存储器,也可以通过光盘中苏州大学嵌入式系统研发中心开发的独立写入软件SD-Programmer-S0
6、8读出写入到 Flash的S19的内容,观察实际写入到Flash的内容是否和S19的游铀凰园遂S屣国联于Flash。目标代码文件是以S记录格式表示的机器码文件。S记录格融摊escae,关哪1中六遍制目标代码文件,它将目标程序和数据以ASCII码格式表示,可直掇则羯血唧上晒岷而蹄晌增呻琳定S记录构成,每行S记录可以用CR/LF/NUL 结尾。-行sg!U靠跳段鼬瓶幡除考书中。9 OFIO.h 即用粉Z临由FD+MI JliJtfli 1 h指部曲一种林一文科6.举例给出Nw C,瞧点工程文件的组织结构图。答:以下是控制/龊鼠底的中通WW域心语言工程文件的组织结构图?§&前&qu
7、ot; - 一出外机程序A,ft> 更GenerilFm s前用谪附 S MCUInit. c芯片初射化密MC9S(KA>60, C A明藤4够也;1棚X.位.定义力日二QP两ent_C软件构件:-1 GFIO. c通用输入,输出比巴构件程序文件T*l Licht c指一才I (1>1油更料TOLik摩史件 ansi is. libT0Fr,J叱t Settings< :和设者支件>|mtai-tup Code1 St«rU>a,c L-J自动女科-Lifik&r Fil«s <比丧宜ft>, burner. bbl!
8、' J Fi ojeel. px-nii“用 Froj t:Et. m4p£1工程说明.t,:tr就说明文h7 .分析文件的功能。答:文件主要实现了芯片的RAM和ROM的定义,初始化 RAM中的变量。初始化堆栈的大小。定义复位向量,即应用程序的默认入口。还包含了启动代码,是硬件复位后的函数入口。8 .如何查看一个文件.LST文件,举例分析一个LST文件。答:利用 Freescale Codewarrior打开控制小灯闪烁工程文件,通过 edit-standard settings-target -compiler for HC08-option-output-generate
9、 Listing File 点击确定编译连接可以生成.LST 文件。然后在该工程的 bin文件夹中可以找.LST文件,通过Freescale Codewarrior打开文件。看下面的一段代码:26:Light_Init(Light_Run_PORT,Light_Run,Light_OFF); IRQ ST 文件中查得。(2) 一次后除后未及写入过的区域可以再次调用写入子程序写入,但写入过的区域,未经擦 除不能重写。(3)由于擦除是每次擦除一页(512字节),所以数据应合理安排,避免误擦。(4)页首地址的定义须遵照保护寄存器FLBPR定义的规则。(5)在线编程时使用的 Flash存储区域应在程序
10、 Flash存储区域之前,因为 Flash保护区为 FLBPR决定的地址至末尾。8. AW60芯片如何加密?如何解除密码?答:1.为了防止Flash中的程序被非法读出,就要将MCU设置为保密状态,下面提供两种加密Flash方法。方法一:通过修改文件文件中的安全配置域(即修改FOPT寄存器,地址0xFFBF的值和密钥地址0xFFB0 0xFFB7的值)实现加密。例如,若要设置密码0x338,则只要将这1 8字节数据依次写到地址 0xFFB00xFFB7处即可,该密码即为字符串。方法二:在程序运行中,通过调用自定义函数修改 Flash相关地址处的内容来加密Flash。通过修改NVOPT地址的内容,
11、复位后,该寄存器的值将自动载入FOPT中。2. S08系列芯片在加密后,需要重新写入程序,必须先解除密码。这里提供2种解除密码方法。 方法一:通过将写入器的 BDM接口,对已经加密的芯片进行整体擦除,具体使用方法参见光 盘中“S08/S12/ColdFire三合一写入器使用说明 ”。方法二:在芯片中驻留擦除密码或擦除Flash的操作接口,通过调用Flash_KEY_Match函数实现。用户可以选择一种 后门”机制,假如寄存器 NVOPT/FOPT的KEYEN位为0时,后门机制无 效,但是如果 KEYEN位为1时,用户按照如下的方法取消MCU的保密状态:(1)将 FCNFG 的 KEYACC 位
12、置 1。(2)向NVBACKKEY NVBACKKEY+7 的位置(Flash中$FFB0$FFB7)依次写入 8个字节, 由于第(1)步的操作,MCU会将该写入操作理解为是密码比较操作,这 8个字节被看作是 后门的钥匙。(3)将 FCNFG的KEYACC 位置 0,如果用户写入的8个字节和 NVBACKKEY NVBACKKEY+7 的位置的8个字节是匹配的, MCU会将SEC01: SEC00改写成1: 0,从而 取消MCU的保密性。/这种保密钥匙只能从保密的存储器中写入,所以在没有用户程序的配合下,背景调试命令也 不可以进入的。当然如果不知道后门钥匙,使用这种方法也是无法取消MCU的保密
13、态。第10章 集成电路互连总线I2C习题参考答案1 .简述I2C总线的特点。/答:I2C主要特点总结如下。(1)在硬件上,二线制的 I2C串行总线使得各IC只需最简单的连接,而且总线接口都集成在IC中,不需另加总线接口电路。电路的简化省去了电路板上的大量走线,减少了电路板的面积,提高了可靠性,降低了成本。在I2C总线上,各IC除了个别中断引线外,相互之间没有其他连线,用户常用的IC基本上与系统电路无关,故极易形成用户自己的标准化、模块化 设计。(2) I2C总线还支持多主控(multi-mastering ),如果两个或更多主机同时初始化数据传输, 可以通过冲突检测和仲裁防止数据被破坏。其中任
14、何能够进行发送和接收的设备都可以成为 主机。一个主机能够控制信号的传输和时钟频率。当然在任何时间点上只能有一个主机。、(3)串行的8位双向数据传输位速率在标准模式下可达100kbps (S08AW系列的I2C模块只支持标准模式),快速模式下可达 400kbps,高速模式下可达。(4)连接到相同总线的IC数量只受到总线最大电容(400pf)的限制。但如果在总线中加上82B715总线远程驱动器可以把总线电容限制扩展十倍,传输距离可增加到15m。2 .简述I2C总线的数据传输过程。答:在物理结构上,I2C系统由一条串行数据线 SDA和一条串行时钟线 SCL组成。主机按一 定的通信协议向从机寻址并进行
15、信息传输。在数据传输时,由主机初始化一次数据传输,主机使数据在SDA线上传输的同时还通过 SCL线传输时钟。信息传输的对象和方向以及信息传 输的开始和终止均由主机决定。每个器件都有唯一的地址,且可以是单接收的器件(例如 LCD驱动器),或者是可以接 收也可以发送的器件(例如存储器)。发送器或接收器可在主或从模式下操作,这取决于芯片是否必须启动数据的传输还是仅仅被寻址。3 .简述AW60的I2C主机从从机读一个字节数据的过程,并加以理解。答:当主机要从从机读1个字节数据时,主机首先产生 START信号,然后紧跟着发送一个从机地址,注意此时该地址的第 8位为0,表明是向从机写命令,这时候主机等待从
16、机的应答信号(ACK),当主机收到应答信号时,发送要访问的地址,继续等待从机的应答信号,当主机收 / 到应答信号后,主机要改变通信模式(主机将由发送变为接收,从机将由接收变为发送)丁 ,所以主机发送重新开始信号,然后紧跟着发送一个从机地址,注意此时该地址的第8位为1,表明将主机设置成接收模式开始读取数据,这时主机等待从机的应答信号,当主机收到应答信号时,就可以接收 1个字节的数据,当接收完成后,主机发送非应答信号,表示不再接收数 据,主机进而产生停止信号,结束传送过程。4 .从从机的接入、时钟控制、数据传输速度、是否可以实现多主控、作用领域等方面比较SPI和I2C。/答:I2C需要有双向I/O
17、的支持,而且使用上拉电阻,一般用于同一板卡上芯片之间的通信,较少用于远距离通信。SPI实现要简单一些。I2C的速度比SPI慢一点,协议比SPI复杂一点, 但是连线也比标准的 SPI要少。在实际应用中,应该根据需要使用 SPI接口或者是I2C接口。5 .用AW60的通用I/O 口模拟实现I2C通信,编写规范的收发数据的子程序 答:略6 .构建一个多设备的I2C总线系统。答:如图图10-1 I2C总线的典型连接在物理结构上,I2C系统由一条串行数据线 SDA和一条串行时钟线 SCL组成。主机按一 定的通信协议向从机寻址并进行信息传输。在数据传输时,由主机初始化一次数据传输,主 机使数据在SDA线上
18、传输的同时还通过SCL线传输时钟。信息传输的对象和方向以及信息传输的开始和终止均由主机决定。每个器件都有唯一的地址,且可以是单接收的器件(例如 LCD驱动器),或者是可以接 收也可以发送的器件(例如存储器)。发送器或接收器可在主或从模式下操作,这取决于芯片是否必须启动数据的传输还是仅仅被寻址。7 .简述SPI与I2C的区别。答:SPI协议没有定义寻址机制,需通过外部SS信号线选择设备,当出现多 slave应用时,需要多根SS信号线,实施起来较 I2C要复杂。此外,SPI总线不支持总线控制权仲裁,故只能 用在单Master的场合;而I2C可以支持多Master的应用。 SPI协议相对I2C要简单
19、,没有握手机制,数据传输效率高,速率也更快,通常应用中可达几Mbps;此外SPI是全双工通信,可同时发送和接收数据,因此, SPI比较适合用于数据 传输的场合。比如需要较大批量数据传输的场合(比如 MMC/SD卡的数据传输就支持 SPI模 式),或者无需寻址传输的场合。而I2C协议功能较丰富,但也相对复杂,多用在传输一些控制命令字等有意义数据的场/合° °SPI接口属于一种非常基本的外设接口,但是应用却很广泛。Motorola还推出了扩展功能的QSPI (Queued SPI)接口,应用更为广泛。第11章 模数转换模块A/D习题参考答案1 .若A/D转换的参考电压为5V,要
20、能区分的电压,则要求采样位数为多少?答:因为5/212=,则要求采样位数为 12位。2 .为什么要对采集的数据进行滤波,除了中值滤波和均值滤波外,还有什么滤波 方法?答:为了使采样的数据更准确,必须对采样的数据进行筛选去掉误差较大的毛刺。通常我们 采用滤波来提高采样精度。除了中值滤波和均值滤波外,还有一阶滞后滤波,限幅滤波法等。3 .简述AW60的A/D转换模块的主要特性。答:AW60 ADC的主要特性总结如下:(1)具有10位分辨率的线性逐次逼近算法。(2)高达28个模拟输入。(3) 10位或8位右对齐输出格式。(4)单次转换或连续转换(单次转换后自动返回空闲状态 )。(5)采样时间和转换速
21、度/功率可配置。(6)最多可选择4个输入时钟源。(7)在等待或stop3模式下实现了低噪音运行。(8)异步时钟源实现了低噪音运行。(9)可选的异步硬件转换触发。(10)与小于,大于或等于可编程值自动比较的中断。(11)内置温度传感器与 AD26通道相连。4 .若总线时钟频率为20MHz,当ADC1CFG寄存器的ADCLK位被设置为01, ADIV位被设置为10时,A/D采样的频率为多少?答:因为 ADCLK位被设置为 01,则时钟源=总线时钟/2=10MHz ;又因为 ADIV 位被设置为 10,则选择ADC生成内部时钟 ADCK所使用的分频率为 4分频输入时钟,则 A/D采样的频 率=10/
22、4=。5 .使用AW60的A/D转换模块采集一路数据,然后用中值滤波和一阶滞后滤波法 (取a=0100,本次滤波结果二(100-a) X本次采样值+aX上次滤波结果)/100滤波,最终显示在PC端。/答:略第12章 系统开发其他模块应用习题参考答案1.简要描述AW60的ICG结构与外部连接。答:ICG有四个功能模块组成,即振荡器模块、内部参考发生器模块、锁频环模块与时钟选择 模块。振荡器引脚用来给 MCU.提供一个外部时钟,在低功耗模式中振荡器的振幅被限制在大 约1V,高峰到高峰。主要有两个引脚用来连接,即 EXTAL与XTAL。2,简要描述AW60的ICG的操作模式。答:*II式1 一关模式
23、(Of)。在此模式下输出时钟 ICGOUT关闭。'模式2自时钟模式(SCM)。在复位后立即进入该默认操作模式。模式3FLL使能内部参考时钟模式(FEI)。/ 模式 4绕过 FLL 模式(FLL bypassed external, FBE)。模式5 FLL使能外部参考时钟模式(FLL engaged external, FEE)。、3 .说明AW60的ICG模块有哪些编程寄存器,简要说明各自的作用。答:AW60的ICG模块的编程模块有六个,分别是 ICGC1 (ICG控制寄存器1), ICGC2 (ICG 控制寄存器2), ICG状态寄存器1(ICGS1) , ICG状态寄存器2 (I
24、CGS2) , ICG过滤寄存器 (ICGFLTU , ICGFLTL) , ICG修正寄存器(ICGTRM)。 ICG控制寄存器主要用于一些功能的初 始化,主要功能是:高增益震荡选择、频率选择、外部参考时钟选择、时钟模式选择、启用或禁止时钟丢失检测、设置倍增因子与分频因子等。ICG状态寄存器主要显示ICG的状态。ICG过滤寄存器(ICGFLTU , ICGFLTL)组成的12位位过滤值,决定当前用来控制 DCO频率的 过滤值。ICG修正寄存器(ICGTRM)用于修正内部晶振。4 .无外部晶振,请编程将总线频率设为fBUS= 0答:略5 .简述AW60有哪些通用中断。答:除了各个模块具体中断之
25、外,AW60还有IRQ、RTI、BRK及SWI等中断资源可供开发者使用。6 . AW60有哪些复位源?7 :AW60系列有如下的七个复位源:(1)上电复位(POR)(2)低电压检测(LVD)(3)计算机运行正确(COP)定时器/(4)非法的操作码检测/(5)后台调试强制复位(6)复位引脚(RESET)/(7)时钟发生器的锁丢失和时钟复位丢失/7 .简述AW60防止低电压系统。/答:AW60系列包括一个防止低电压的系统,以便在电源电压不稳时保护存储器内容、控制MCU系统状态。该系统由加电复位( POR)电路和LVD电路组成,其中LVD电路带脱扣电 压用于警告和检测。 当SPMSC1中的LVDE设
26、置为1时,LVD电路使能。当进入停止模式时,LVD禁止,除非 SPMSC1中设置了 LVDSE。如果同时设置了 LVDSE和LVDE ,那么 MCU 不能进入stop2模式(进入stop3模式),LVD激活的stop3模式更耗电。8 .简述AW60的操作模式。/答:AW60提供了四种操作模式供用户选择,分别为运行模式,激活后台模式,等待模式,停 止模式。9 .简述看门狗COP功能。答:当应用软件与期望的运行不相符时,COP看门狗试图强制系统复位。为防止系统从COP计数器复位,应用软件必须周期性地重置 COP计数器。如果应用程序丢失和在 COP计数器到 达中止时间之前重置 COP计数器失败,将产
27、生一个系统复位,强制系统回到一个已知的起始 点。SOPT1中的COPE设置为使能COP看门狗,COP计数器通过对SRS的地址写任何值被 重置。这个写操作对只读的 SRS没有任何影响,而是被解码为发送给COP计数器的一个复位信号。10 .简述MCLK输出。答:PTA0脚与MCLK时钟输出复用。如果 MCSEL位都是0, MCLK时钟禁止。若 MCSEL 的任意一个位被置1,无论该管脚的端口数据方向控制位的状态如何,都会导致PTA0脚输出内部MCU总线时钟分频时钟。分频比率由MCSEL位决定。管脚的斜率和驱动强度分别由PTASE0和PTADS0控制。如果斜率控制功能被打开,最大时钟输出频率将会受到
28、限制。PTC2脚与MCLK时钟输出复用。置位引脚使能位 MPE,导致PTC2脚输出一个内部 MCU 总线时钟的分频时钟。分频率由MCSEL位决定。当MPE被置位,不论该引脚的端口数据方向控制位的状态如何,PTC2引脚被强制作为一个输出管脚。如果 MCSEL位全是0,该引脚输出低电平。引脚的转换率和驱动强度分别由PTCSE2和PTCDS2位控制。17第13章JM60的USB开发方法/习题参考答案1. 差分信号的优点有哪些?/答:差分信号的第一个好处是,因为你在控制基准'电压,所以能够很容易地识别小信号。在 一个地做基准,单端信号方案的系统里,测量信号的精确值依赖系统内地'的一致性
29、。信号源和信号接收器距离越远,他们局部地的电压值之间有差异的可能性就越大。从差分信号恢复 的信号值在很大程度上与地'的精确值无关,而在某一范围内。'差分信号的第二个好处是,它对外部电磁干扰( EMI )是高度免疫的。一个干扰源几乎相 同程度地影响差分信号对的每一端。既然电压差异决定信号值,这样将忽视在两个导体上出 现的任何同样干扰。除了对干扰不大灵敏外,差分信号比单端信号生成的EMI还要少。差分信号的第三个好处是,在一个单电源系统,能够从容精确地处理双极'信号。为了处理单端,单电源系统的双极信号,我们必须在地和电源干线之间某任意电压处(通常是中点) 建立一个虚地。用高于
30、虚地的电压来表示正极信号,低于虚地的电压来表示负极信号。接下 来,必须把虚地正确地分布到整个系统里。而对于差分信号,不需要这样一个虚地,这就使 我们处理和传播双极信号有一个高真度,而无须依赖虚地的稳定性。2. USB设备分类及设备描述符作用是什么。答:USB对一些具有相似特点并提供相似功能的设备进行抽象,进而将USB设备分成多种标准类,包括音频、通信、人机接口设备 HID、显示、海量存储、电源、打印、集线器设备类 等。设备类驱动程序通常由操作系统提供,开发人员可以直接使用,不必自己编写。设备描 述符和接口描述符中的类代码、子类代码及协议代码指定了USB设备或其接口所属的设备类及相关信息,并定位
31、合适的设备类驱动程序。3. USB设备、配置、接口和端点的含义是什么?答:设备描述符用于说明设备的总体信息,包括描述设备的类型、设备支持的协议类型、供应商ID (VID)、产品ID (PID)、设备版本号、供应商名称、产品名称及设备所支持的配置数 等,目的是让主机获取插入的 USB设备的属性,以便加载合适的驱动程序。一个USB设备只能有一个设备描述符,固定为18字节的长度,它是主机向设备请求的第一个描述符。配置描述符用于说明 USB设备中各个配置的特性,包括配置信息的总长度、配置所支持接口的个数、配置值、配置的属性及设备可以从总线提取的最大电流等。一个USB设备可以包含一个或多个配置(如USB
32、设备的低速模式和高速模式可分别对应一个配置) 。每一个配置 都对应一个配置描述符,长度固定为9字节。接口描述符用于说明 USB设备中各个接口的特性,包括接口号、接口使用的端点数、所 属的设备类及其子类等。一个配置可以包含一个或多个接口,每个接口都必须有一个接口描 述符。如对一个光驱来说,当用于文件传输时使用其大容量存储接口;而当用于播放CD时,使用其音频接口。接口是端点的集合,可以包含一个或多个可替换设置,用户能够在USB处于配置状态时,改变当前接口所含的个数和特性。所有的传输都是传送到设备端点( endpoint),或是从设备端点发出。这种端点实际上就 是一个能够存储多个字节的缓冲器。端点通
33、常是一个数据存储器区块,或是控制器芯片中的 一个寄存器,端点所存储的数据可能是收到的数据,或是等待发送的数据。端点所支持的传 输类型和传输方向等信息,都在端点描述符中定义。每个端点的描述符总是作为配置描述符 的一部分返回,端点 0无描述符。端点描述符长度为7字节。4. USB传输速度的分类和区别方式是什么?答:根据USB协议有3种数据传输模式:低速、全速和高速。'' V ccUSB主机11SUBV- DUSB 低速设备GNDGND【注】:(1)图中两个灰色上拉电阻的阻值均为Q;两个白色下拉电阻的阻值均为15kQ。(2) Vbus为 +5V, Vc为 +。USB设备上电时,如果主
34、机检测到D+线上为高电压,说明连接上的是高速/全速设备;若检测到D-线上为高电压,说明连接上的是低速设备。高速设备在连接起始时需要以全速速率与主机进行通信,以完成其配置操作。在复位(主机将D+和D-都拉低,使数据线处于SE0状态,并保持至少10ms。在后设备将识别复位条件。 该复位要与微处理器的上电复位区别开来,它是USB协议复位,是为了使设备的USB信号开始时是一个已知状态)期间,支持高速的设备发送一个K状态(这是由集成在 USB设备接口芯片的内部的软件控制开关完成的),具有高速能力的 HUB检测到总线上的该状态并响应一 个K和J的交替状态序列。以后设备就将全速提高为高速通信。如果HUB不响
35、应设备的K状态,那么设备就用全速通信。5. USB协议中通信的基本单元是包,请问有几种类型的包?答:包有4种类型,包括令牌、数据、握手或特殊四种包类型。包类型PID3:0令牌包OUT0001BIN1001BSETUP1101BSOF0101B含义主机向设备发送数据主机向设备要数据主机到设备,用于控制传输帧的起始标记,标志着一个 时间片的开始,表明接下来 安排数据传输格式8位7位4位5位PIDPIDADDRENDPCRC58位11位5位PIDPID帧序列号CRC5数据包DATA0 0011B第偶数次发送的包DATA1 1011B第奇数次发送的包8立01024字节/16位PIDPID数据二CRC1
36、6握手包特殊包ACKNAKSTALLPRE0010B1010B1110B1100B接收器收到无错误的包 接收器无法接收数据或 发射器无法送出数据端点产生停滞的状况使能下游端口的 USB总线 的数据传输切换到低速的 设备8位PIDPID6. JM60支持几个端点?作用是什么?答:7个端点,其中端点 0、5和6是双缓冲。端点 0用于配置设备。其他可用于数据传输。7. 什么是GUID,作用是什么?/答:GUID (Globally Unique Identifier,全球唯一标识符八是一个 128位的字母数字标识符, 用于指示产品的唯一性安装。在许多流行软件应用程序(例如' Web浏览器和媒
37、体播放器)中, 都使用GUID。/GUID 的标准格式为"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx ”,将 GUID 分成 5 个类别 的十六进制字符,类别之间以连字号“-”隔开,其中x是0-9或A-F范围内的一个十六进制的数字。世界上任何两台计算机都不会生成重复的GUID值。GUID主要用于在拥有多个节点、 多台计算机的网络或系统中,分配具有唯一性的标识符。在 Windows平台上,GUID应用非常 广泛:注册表、类及接口标识、数据库、甚至自动生成的机器名、目录名等。8. JM60编程的基本要点?答:编写JM60的USB通信时,需包含和两个文件。编写
38、代码时按如下几步:1 .修改USB的相关字符串描述符。具体见中的注释并做相应的修改。主要的有以下几种:(1)供应商描述符字符串(2)设备序列描述符字符串(3)产品描述符字符串(4)接口描述符字符串(5)配置描述符字符串2 .修改设备的PID和VID。根据USB规范的规定,所有的 USB设备都有供应商ID (VID)和产品识别码(PID), 主机通过不同的 VID和PID来区别不同的设备,VID和PID都是两个字节长,其中,供应商ID (VID )由供应商向USB执行论坛申请(USB应用厂商论坛,每个供应商的 VID是唯一的, PID由供应商自行决定。正规厂家只需要申请 VID , PID由厂家
39、自行确定,所以存在相同型号 的产品,可能采用了不同的主控(商业需要,很正常),而他们的PID是一样的,基于上述原因通过VID和PID就不能准确识别 USB设备的主控型号,这个问题大家在使用USB设备的过程中需要注意。对于不同产品需要不同的PID和VID ,即修改设备描述符中的PID和VID字段。3 .编程时按以下步骤:/(1)初始化USB模块;、/INT8U USBInit(void);(2)发送数据;/INT8U USBReceiveData(INT8U ep,INT8U* data);(3)接收数据。/void USBSendData(INT8U ep,INT8U* data,INT8U
40、length);具体的函数描述见和。注意:程序中数据接收需设备主动获取。具体见示例程序主函数。9. PC方(C#)编程基本要点是什么?答:PC方的USB通信程序是用 C#实现的。使用网上提供的开源dll 。示例程序中已经封装好了USB通信编程,提供了相应接口。编程按以下步骤进行:1 .安装EXE文件/2 .添加文件。3 .导入文件名为“”的库(文件在第一步中安装目录里)。4 .在代码中添加引用using USBComponent;using LibUsbDotNet;using ;using ;using ;using ;5 .编写代码时按以下步骤:(1)新建USB类对象;如:USB usbT
41、est = new USB(myVID,myPID);其中 myVID 和 myPID 是 USB 的两个主要参 数 vid 和 pid。(2)如果使用事件接收需做如下设置;+= OnRxEndPointData;其中OnRxEndPointData是用来处理数据接收事件的函数。(3)如果需要获取设备的接入和拔出需要做如下设置;+= OnDeviceNotifyEvent;其中OnDeviceNotifyEvent是用来处理设备的接入和拔出的函数。4)发送数据public bool sendData(string sendData);public bool sendData(byte send
42、Data,int count);返回值是bool型(TRUE成功,FALSE失败)。/(5)接收数据(主动获取)public string recData();public byte口 recData(byte 口temp);10.编写一个USB高低端通信的实例。/答:见附件。第14章DZ60的CAN总线开发方法 习题参考答案1 .什么是现场总线,主流现场总线有哪些类型?答:现场总线是连接智能现场设备和自动化系统的全数字、双向、多站的通信系统。主 要解决工业现场的智能化仪器仪表、控制器、执行机构等现场设备间的数字通信以及这些现场控制设备和高级控制系统之间的信息传递问题。主流现场总线类型:(1)
43、基金会现场总线(FoundationFieldbus 简称FF)。它以ISO/OSI开放系统互连模型为基础,取其物理层、数据链路层、应用层为FF通信模型的相应层次,并在应用层上增加了用户层。(2) CAN ( ControllerAreaNetwork控制器局域网)。CAN 协议分为二层:物理层和数据链路层。CAN的信号传输采用短帧结构,传输时间短,具有自动关闭功能,具有较强的抗干扰能力。(3) LonWorks 。它采用ISO/OSI模型的全部 7层通讯协议,采用面向对象的设 计方法,通过网络变量把网络通信设计简化为参数设置。(4) PROFIBUS 。由 PROFIBUS-DP 、PROF
44、IBUS FMS、PROFIBUS PA 系列组 成。DP用于分散外设间高速数据传输,适用于加工自动化领域。FMS适用于纺织、楼宇自动化、可编程控制器、低压开关等。PA用于过程自动化的总线类型。PROFIBUS支持主-从系统、纯主站系统、多主多从混合系统等几种传输方式。(5) HART。其特点是在现有模拟信号传输线上实现数字信号通信,属于模拟系统 向数字系统转变的过渡产品。其通信模型采用物理层、数据链路层和应用层三层,支持 点对点主从应答方式和多点广播方式。2 .给出CAN总线硬件最简单接法。答:明的CAN硬件连接方法如图, 所有的CANTX线路经过快速二极管(如1N4148等)连接至 数据线
45、(以免输出引脚短路),CANRX输入直接连接到这条数据线,数据线由一个上拉电阻 拉至+5V,以产生所需要的“ 1”电平。注意该电路中各节点的地是接在一起的。这个电路最 大线长限制在1m左右。主要用于在电磁干扰较弱环境下的近距离通信。3 .根据CAN总线最简单接法阐述CAN的通信机制(仲裁方式)答:总线空闲时,总线上任何节点都可以开始发送报文,若同时有两个或两个以上节点开始发送,总线访问冲突运用逐位仲裁规则,借助于标识符ID解决。仲裁期间,每一个发送器都对发送位电平与总线上检测到的电平进行比较,若相同,则该节点继续发送。当发送的是一“1”而监视到的是一 “ 0”,则该节点失去仲裁,退出发送状态。举例说明,若某一时刻有两
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026事业单位工勤技能-山西-山西工程测量员五级(初级工)历年参考题库含答案详解
- 2026事业单位工勤技能-山东-山东收银员四级(中级工)历年参考题库含答案详解
- 2026事业单位工勤技能-宁夏-宁夏计算机信息处理员五级初级历年参考题库含答案详解
- 2026事业单位工勤技能-四川-四川水生产处理工五级(初级工)历年参考题库含答案详解
- 2026事业单位工勤技能-吉林-吉林计算机操作员三级(高级工)历年参考题库含答案详解
- 2026事业单位工勤技能-吉林-吉林不动产测绘员一级(高级技师)历年参考题库含答案详解
- 2026事业单位工勤技能-云南-云南水利机械运行维护工一级(高级技师)历年参考题库含答案详解
- 2026事业单位工勤技能-上海-上海检验员二级(技师)历年参考题库含答案详解
- 2026中级卫生职称-主治医师-急诊医学(中级)代码:392历年参考题库含答案详解
- 2026年南县中小学幼儿园教师招聘笔试备考试题及答案解析
- 消防安全知识考试题库及答案
- 中国肩周炎疼痛诊疗指南(2025版)
- 全冠修复标准化操作流程
- 2026商业银行企业级运营体系的内涵与建设路径研究报告-
- (正式版)DB35∕T 2311-2026 茶文化研学旅行基地建设要求
- ICU患者气管插管应急预案演练脚本
- 医院物业管理项目投标书
- 实习生录用通知书标准范本
- 2024年第41届全国中学生物理竞赛初赛试题及解答
- 2026年河南省平顶山市重点学校小升初入学分班考试数学考试试题及答案
- 2026年植保无人机考试题库含答案
评论
0/150
提交评论