




已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
硬件课程设计串口通信项目设计方案第一章 课题背景1.1 引言在通信领域内,有两种数据通信方式:并行通信和串行通信。随着计算机网络化和微机分级分布式应用系统的发展,通信的功能越来越重要。通信是指计算机与外界的信息传输,既包括计算机与计算机之间的传输,也包括计算机与外部设备,如终端、打印机和磁盘等设备之间的传输。 在PC 机的主板上,有一种类型的接口可能为我们所忽视,那就是RS-232C 串行接口,在微软的Windows 系统中称其为COM。我们可以通过设备管理器来查看COM 的硬件参数设置,如图1。迄今为止,几乎每一台PC 都包含COM。本质而言,COM 是PC 为和外界通信所提供的一种串行数据传输的接口。COM接口是指Component Object Mode接口,是微软定义的标准接口。串口叫做串行接口,现在的PC机一般有两个串行口COM 1和COM 2。串行口不同于并行口之处在于它的数据和控制信息是一位接一位地传送出去的。虽然这样速度会慢一些,但传送距离较并行口更长,因此若要进行较长距离的通信时,应使用串行口。通常COM 1使用的是9针D形连接器,也称之为RS-232接口,而COM 2有的使用的是老式的DB25针连接器,也称之为RS-422接口,这种接口目前已经很少使用。作为一种物理通信的途径和设备,它和目前风靡的另一种串行接口USB 所提供的功能是一致的。不过RS-232C 显然已经开始被后起之秀USB 赶超,因为USB 的传输速率已经远远超过了RS-232C。尽管如此,RS-232C 仍然具有非常广泛的应用,在相对长的一段时间里,难以被USB 等接口取代。RS-232C 接口(又称EIA RS-232C),1970 年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定,全名是数据终端设备(DTE)和数据通讯设备(DCE)之间串行二进制数据交换接口技术标准。硬件原理众所周知,CPU 与存储芯片和I/O 芯片的通信是并行的(并行传输的最大位数依赖于CPU 的字长、数据总线的宽度),一种叫做UART(通用异步收发器,Universal Asynchronous Receiver/Transmitter)的芯片提供了并行数据传输和RS-232C 串行数据传输方式的转换。1.2串行通信的基本概念在微型计算机中,通信(数据交换)有两种方式:串行通信和并行通信。串行通信是指计算机与I/O设备之间仅通过一条传输线交换数据,数据的各位是按顺序依次一位接一位进行传送。并行通信是指计算机与I/O设备之间通过多条传输线交换数据,数据的各位同时进行传送。应该理解所谓的并行和串行,仅是指I/O接口与I/O设备之间数据交换(通信)是并行或串行。无论怎样CPU与I/O接口之间数据交换总是并行。二者比较:串行通信的速度慢,但使用的传输设备成本低,可利用现有的通信手段和通信设备,适合于计算机的远程通信;并行通信的速度快,但使用的传输设备成本高,适合于近距离的数据传送。1异步串行通信所谓异步通信,是指数据传送以字符为单位,字符与字符间的传送是完全异步的,位与位之间的传送基本上是同步的。异步串行通信的特点可以概括为:以字符为单位传送信息。相邻两字符间的间隔是任意长。接收时钟和发送时钟只要相近就可以。异步方式特点简单的说就是:字符间异步,字符内部各位同步。2同步串行通信所谓同步通信,是指数据传送是以数据块(一组字符)为单位,字符与字符之间、字符内部的位与位之间都同步。同步串行通信的特点可以概括为: 以数据块为单位传送信息。 在一个数据块(信息帧)内,字符与字符间无间隔。接收时钟与发送进钟严格同步。3.波特率、波特率因子、位周期波特率是指单位时间传输二进制数据的位数,其单位为位/秒(B/S)或波特。它是一个用以衡量数据传送速率的量。一般串行异步通行的传送速度为5019200波特,串行同步通信的传送速度可达500千波特。波特率因子是指时钟脉冲频率与波特率的比。位周期Td是指每个数据位传送所需要的时间,它与波特率的关系是:Td=1/波特率。它用以反映连续二次采样数据之间的间隔时间1.3串口的基本概念串口是计算机上一种非常通用设备通信的协议(不要与通用串行总线Universal Serial Bus或者USB混淆)。大多数计算机包含两个基于RS232的串口。串口同时也是仪器仪表设备通用的通信协议;很多GPIB兼容的设备也带有RS-232口。同时,串口通信协议也可以用于获取远程采集设备的数据。 串口通信的概念非常简单,串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。比如IEEE488定义并行通行状态时,规定设备线总常不得超过20米,并且任意两个设备间的长度不得超过2米;而对于串口而言,长度可达1200米。 典型地,串口用于ASCII码字符的传输。通信使用3根线完成:(1)地线,(2)发送,(3)接收。由于串口通信是异步的,端口能够在一根线上发送数据同时在另一根线上接收数据。其他线用于握手,但是不是必须的。串口通信最重要的参数是波特率、数据位、停止位和奇偶校验。对于两个进行通行的端口,这些参数必须匹配: a,波特率:这是一个衡量通信速度的参数。它表示每秒钟传送的bit的个数。例如300波特表示每秒钟发送300个bit。当我们提到时钟周期时,我们就是指波特率例如如果协议需要4800波特率,那么时钟是4800Hz。这意味着串口通信在数据线上的采样率为4800Hz。通常电话线的波特率为14400,28800和36600。波特率可以远远大于这些值,但是波特率和距离成反比。高波特率常常用于放置的很近的仪器间的通信,典型的例子就是GPIB设备的通信。 b,数据位:这是衡量通信中实际数据位的参数。当计算机发送一个信息包,实际的数据不会是8位的,标准的值是5、7和8位。如何设置取决于你想传送的信息。比如,标准的ASCII码是0127(7位)。扩展的ASCII码是0255(8位)。如果数据使用简单的文本(标准 ASCII码),那么每个数据包使用7位数据。每个包是指一个字节,包括开始/停止位,数据位和奇偶校验位。由于实际数据位取决于通信协议的选取,术语“包”指任何通信的情况。 c,停止位:用于表示单个包的最后一位。典型的值为1,1.5和2位。由于数据是在传输线上定时的,并且每一个设备有其自己的时钟,很可能在通信中两台设备间出现了小小的不同步。因此停止位不仅仅是表示传输的结束,并且提供计算机校正时钟同步的机会。适用于停止位的位数越多,不同时钟同步的容忍程度越大,但是数据传输率同时也越慢。 d,奇偶校验位:在串口通信中一种简单的检错方式。有四种检错方式:偶、奇、高和低。当然没有校验位也是可以的。对于偶和奇校验的情况,串口会设置校验位(数据位后面的一位),用一个值确保传输的数据有偶个或者奇个逻辑高位。例如,如果数据是011,那么对于偶校验,校验位为0,保证逻辑高的位数是偶数个。如果是奇校验,校验位位1,这样就有3个逻辑高位。高位和低位不真正的检查数据,简单置位逻辑高或者逻辑低校验。这样使得接收设备能够知道一个位的状态,有机会判断是否有噪声干扰了通信或者是否传输和接收数据是否不同步1.4 RS232标准介绍RS-232-C接口(又称 EIA RS-232-C)是目前最常用的一种串行通讯接口。它是在1970年由美国电子工业协会(EIA)联合贝尔系统、 调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标 准。它的全名是“数据终端设备(DTE)和数据通讯设备(DCE)之间 串行二进制数据交换接口技术标准”该标准规定采用一个25个脚的 DB25连接器,对连接器的每个引脚的信号内容加以规定,还对各种信 号的电平加以规定。(1)接口的信号内容实际上RS-232-C的25条引线中有许多是很少使用的,在计算机与终端通讯中一般只使用3-9条引线。RS-232-C最常用的9条引线的信号内容见附表1所示 (2)接口的电气特性在RS-232-C中任何一条信号线的电压均为负逻辑关系。即:逻 辑“1”,-5 -15V;逻辑“0” +5 +15V 。噪声容限为2V。即 要求接收器能识别低至+3V的信号作为逻辑“0”,高到-3V的信号 作为逻辑“1” (3)接口的物理结构RS-232-C接口连接器一般使用型号为DB-25的25芯插头座,通常插头在DCE端,插座在DTE端. 一些设备与PC机连接的RS-232-C接口,因为不使用对方的传送控制信号,只需三条接口线,即“发送数据”、“接收数据”和“信号地”。所以采用DB-9的9芯插头座,传输线采用屏蔽双绞线。 (4)传输电缆长度由RS-232C标准规定在码元畸变小于4%的情况下,传输电缆长度应为50英尺,其实这个4%的码元畸变是很保守的,在实际应用中,约有99%的用户是按码元畸变10-20%的范围工作的,所以实际使用中最大距离会远超过50英尺,美国DEC公司曾规定允许码元畸变为10%而得出附表2 的实验结果。其中1号电缆为屏蔽电缆,型号为DECP.NO.9107723 内有三对双绞线,每对由22# AWG 组成,其外覆以屏蔽网。2号电缆为不带屏蔽的电缆。型号为DECP.NO.9105856-04是22#AWG的四芯电缆。 1.RS-232-C是美国电子工业协会EIA(Electronic Industry Association)制定的一种串行物理接口标准。RS是英文“推荐标准”的缩写,232为标识号,C表示修改次数。RS-232-C总线标准设有25条信号线,包括一个主通道和一个辅助通道,在多数情况下主要使用主通道,对于一般双工通信,仅需几条信号线就可实现,如一条发送线、一条接收线及一条地线。RS-232-C标准规定的数据传输速率为每秒50、75、100、150、300、600、1200、2400、4800、9600、19200波特。RS-232-C标准规定,驱动器允许有2500pF的电容负载,通信距离将受此电容限制,例如,采用150pF/m的通信电缆时,最大通信距离为15m;若每米电缆的电容量减小,通信距离可以增加。传输距离短的另一原因是RS-232属单端信号传送,存在共地噪声和不能抑制共模干扰等问题,因此一般用于20m以内的通信。 第二章 设计简介及设计方案论述2.1 串口通信原理串口通信原理:所谓串行通信是指外设和计算机间使用一根数据信号线,数据在一根数据信号线上按位进行传输,每一位数据都占据一个固定的时间长度。这种通信方式使用的数据线少,在远距离通信中可以节约通信成本,当然,其传输速度比并行传输慢。相比之下,由于高速率的要求,处于计算机内部的CPU与串口之间的通讯仍然采用并行的通讯方式,所以串行口的本质就是实现CPU与外围数据设备的数据格式转换(或者称为串并转换器),即当数据从外围设备输入计算机时,数据格式由位 (bit)转化为字节数据;反之,当计算机发送下行数据到外围设备时,串口又将字节数据转化为位数据。 串行端口的本质功能是作为CPU和串行设备间的编码转换器。当数据从 CPU经过串行端口发送出去时,字节数据转换为串行的位。在接收数据时,串行的位被转换为字节数据。 在Windows环境下,串口是系统资源的一部分。 应用程序要使用串口进行通信,必须在使用之前向操作系统提出资源申请要求(打开串口),通信完成后必须释放资源(关闭串口)。串口信号线的一个完整的RS-232C接口有22根线,采用标准的25芯插头座(或者9芯插头座)。25芯和9芯的主要信号线相同。以下的介绍是以25芯的RS-232C为例。 主要信号线定义: 2脚:发送数据TXD; 3脚:接收数据RXD; 4脚:请求发送RTS; 5脚:清除发送CTS; 6脚:数据设备就绪DSR;20脚:数据终端就绪DTR; 8脚:数据载波检测DCD; 1脚:保护地; 7脚:信号地。 DB9和DB25的常用信号脚说明如下:表2-19针串口(DB9)25针串口(DB25)针号功能说明缩写针号功能说明缩写1数据载波检测DCD8数据载波检测DCD2接收数据RXD3接收数据RXD3发送数据TXD2发送数据TXD4数据终端准备DTR20数据终端准备DTR5信号地GND7信号地GND6数据设备准备好DSR6数据准备好DSR7请求发送RTS4请求发送RTS8清除发送CTS5清除发送CTS9振铃指示DELL22振铃指示DELL电气特性: 数据传输速率最大可到20K bps,最大距离仅15m. 注:看了微软的MSDN 6.0,其Windows API中关于串行通讯设备(不一定都是串口RS-232C或RS-422或RS-449)速率的设置,最大可支持到RS_256000,即256K bps! 也不知道到底是什么串行通讯设备?但不管怎样,一般主机和单片机的串口通讯大多都在9600 bps,可以满足通讯需求。 接口的典型应用: 大多数计算机应用系统与智能单元之间只需使用3到5根信号线即可工作。这时,除了TXD、RXD以外,还需使用RTS、CTS、DCD、DTR、DSR等信号线。(当然,在程序中也需要对相应的信号线进行设置。) 以上接法,在设计程序时,直接进行数据的接收和发送就可以了,不需要对信号线的状态进行判断或设置。(如果应用的场合需要使用握手信号等,需要对相应的信号线的状态进行监测或设置。“并行通信”是把一个字符的各数位用几条线同时进行传输,传输速度快,信息率高。但它比串行通信所用的电缆多,故常用在传输距离较短(几米至几十米)、数据传输率较高的场合。 实现并行通信的接口就是并行接口。 并行接口可设计为只作为输入/输出接口,也可设计为既作为输入又作为输出的接口。它可以用两种方法实现,一种是利用同一个接口中的两个通路,一个作输入通路,一个作输出通路;另一种使用同一个双向通路,既作为输入又作为输出。 连接设备接口有PS/2,PATA,LPT等 串行通信是指数据一位一位地依次传输,每一位数据占据一个固定的时间长度。其只要少数几条线就可以在系统间交换信息,特别适用于计算机与计算机、计算机与外设之间的远距离通信, 连接设备接口有SATA,USB等。 串口是计算机上一种非常通用设备通信的协议(不要与通用串行总线Universal Serial Bus或者USB混淆)。大多数计算机包含两个基于RS232的串口。串口同时也是仪器仪表设备通用的通信协议;很多GPIB兼容的设备也带有RS- 232口。同时,串口通信协议也可以用于获取远程采集设备的数据。串口通信的概念非常简单,串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。比如IEEE488定义并行通行状态时,规定设备线总常不得超过20米,并且任意两个设备间的长度不得超过2米;而对于串口而言,长度可达1200米。 2.2 Microsoft Communications Control控件简介Visual C+为我们提供了一种好用的ActiveX控件Microsoft Communications Control(MSComm)来支持应用程序对串口的访问,在应用程序中插入MSComm控件后就可以较为方便地实现对通过计算机串口收发数据。 要使用ActiveX控件MSComm,程序员必须将其添加入工程,其方法是:(1)单击主菜单project的子菜单Add To project的Components and Controls选项;(2)在弹出的Components and Controls Gallery对话框中选择Registered ActiveX Controls文件夹中的Microsoft Communications Control,version 6.0选项,如下图:图2-1基本上,MSComm的诸多接口可以分为如下几类: (1)打开与设置串口接口函数; (2)获得串口设置和串口状态接口函数; (3)设置串口发送数据方式、缓冲区接口及发送数据接口函数; (4)设置串口接收数据方式、缓冲区接口及接收数据接口函数;(5)设置与获取串口上发生的事件接口函数。以下介绍设置中遇到的几个相关函数。SetCommPort:指定使用的串口。GetCommPort:得到当前使用的串口。SetSettings:指定串口的参数。一般设为默认参数9600,N,8,1。这样方便与其他串口进行通讯。GetSettings:取得串口参数。SetPortOpen:打开或关闭串口,当一个程序打开串口时,另外的程序将无法使用该串口。GetPortOpen:取得串口状态。GetInBufferCount:输入缓冲区中接受到的字符数。SetInPutLen:一次读取输入缓冲区的字符数。设置为0时,程序将读取缓冲区的全部字符。GetInPut:读取输入缓冲区。GetOutBufferCount:输出缓冲区中待发送的字符数。SetOutPut:写入输出缓冲区。一般而言,使用上述函数和属性就可以进行串口通讯了。2.3 串口通信基本步骤实现串口通信的基本步骤如下流程图所示:图2-2弄清了程序的流程,下面的步骤就是编写程序。第三章 详细设计3.1 建立工程与使用控件打开VC+6.0建立基于对话框的MFC应用程序mytest,如图3-1图3-1在项目中插入MSComm控件工程-增加到工程-Components and Controls-双击Registered ActiveX Controls-选择Microsoft Communications Control, version 6.0-Insert,按默认值添加,多了个电话图标,这是增加后串口通信控件。如图3-2图3-23.2程序界面布局删除确认、取消和提示框,添加“电话”、静态文本、按钮、编辑框,拖动添加的控件,根据喜好布局。如下图3-3所示图3-33.3初始化串口查看-建立类向导MFC ClassWizard-Member Viariable,选择ClassName为CmytestDlg的类,Control ID为MSCOMM1,双击它,为它添加控制变量m_ctrlComm类似的,选择其它项修改,改后如图3.4。图3-4对CMytestDlg:OnInitDialog()函数中写入对串口的初始化语句,串口初始化语句由IDC_MSCOMM1的CMSComm控制变量m_ctrlComm来设置串口控件属性。代码如下:BOOL CMytestDlg:OnInitDialog()CDialog:OnInitDialog();/ TODO: Add extra initialization here m_ctrlComm.SetCommPort(4); /选择COM4m_ctrlComm.SetInputMode(1); /输入方式为二进制方式m_ctrlComm.SetInBufferSize(1024); /设置输入缓冲区大小m_ctrlComm.SetOutBufferSize(512); /设置输出缓冲区大小/波特率9600,无校验,8个数据位,1个停止位 m_ctrlComm.SetSettings(9600,n,8,1); if(!m_ctrlComm.GetPortOpen()m_ctrlComm.SetPortOpen(TRUE);/打开串口m_ctrlComm.SetRThreshold(1); /参数1表示每当串口接收缓冲区中有多于/或等于1个字符时将引发一个接收数据的OnComm事件m_ctrlComm.SetInputLen(0); /设置当前接收区数据长度为0m_ctrlComm.GetInput(); /先预读缓冲区以清除残留数据return TRUE; / return TRUE unless you set the focus to a control3.4添加串口事件消息处理函数查看-建立类向导MFC ClassWizard-Message Maps,在Class Name中选择类CmytestDlg,再在Object IDs 中选择IDC_MSCOMM1,然后在Message中双击消息OnCom,在弹出的对话框中将函数名改为OnComm(好记),单击“OK”,就加入了串口事件的消息处理函数,如图3-5图3-5然后编写OnComm()中的代码,主要任务是从串口接收数据并显示在接收编辑框中。void CMytestDlg:OnComm() / TODO: Add your control notification handler code hereVARIANT variant_inp;COleSafeArray safearray_inp;LONG len,k;BYTE rxdata2048; /设置BYTE数组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;klen;k+)safearray_inp.GetElement(&k,rxdata+k);/转换为BYTE型数组for(k=0;kMessage Maps,选择类CMytestDlg,选中IDC_BUTTON_MANUALSEND,双击BN_CLICKED添加OnButtonManualsend()函数,如图3-6图3-6然后在函数中添加代码如下:void CMytestDlg:OnButtonManualsend() / TODO: Add your control notification handler code hereUpdateData(TRUE); /读取编辑框内容m_ctrlComm.SetOutput(COleVariant(m_strEditTXData);/发送数据程序编好了,下面的问题就是选择数据传输的介质问题,可以使用串口线,也可用虚拟串口。3.6 RS232串口通信接线方法(三线制)实际应用中,电子工程师在设计计算机与外围设备的通信时,通常在9针的基础再进行简化,只用其中的2、3、5三个管脚进行通信。这三个管脚分别是接收线、发送线和地线,在一般情况下即可满足通讯的要求,计算机和外部通讯的接线方法如图3-7: 图3-7值得注意的是,图3-7中2、3两脚是交叉互联的,这很容易理解,因为一个设备的发送线必须联接到另外一台设备的接收线上,反之亦然。另外说明一下,232信号的有效通讯距离是15M。首先,串口传输数据只要有接收数据针脚和发送针脚就能实现:同一个串口的接收脚和发送脚直接用线相连,两个串口相连或一个串口和多个串口相连 同一个串口的接收脚和发送脚直接用线相连 对9针串口和25针串口,均是2与3直接相连; 两个不同串口(不论是同一台计算机的两个串口或分别是不同计算机的串口) 表3-19针9针25针25针9针25针233222322333557757上面表格是对微机标准串行口而言的,还有许多非标准设备,如接收GPS数据或电子罗盘数据,只要记住一个原则:接收数据针脚(或线)与发送数据针脚(或线)相连,彼些交叉,信号地对应相接。3.7 串口通信中需要注意的几点1.不同编码机制不能混接,如RS232C不能直接与RS422接口相连,市面上专门的各种转换器卖,必须通过转换器才能连接; 2.线路焊接要牢固,不然程序没问题,却因为接线问题误事; 3.串口调试时,准备一个好用的调试工具,如串口调试助手、串口精灵等,有事半功倍之效果; 4.强烈建议不要带电插拨串口,插拨时至少有一端是断电的,否则串口易损坏。 3.8 RS232串口的代替品现在的大多数笔记本电脑中多数都不配备串口,但是串口通信如RS232在单片机等一系列科技产品中依然存在广泛的应用,所以寻找RS232串口的代替解决方案就成为当务之急,而主要存在以下两种解决方案。1.虚拟串口软件VSPM的使用由于现在大多数笔记本电脑没有串口,所以可以使用虚拟串口软件代替物理串口。VSPM软件的主要功能用途其实是通过网络IP映射成相应的端口号。打开虚拟串口软件VSPM,由于软件已设置好,一打开就建立COM3-COM6共4个虚拟串口。这些虚拟串口是相互连通的COM3COM4;COM5COM6。图3-72USB转串口转接卡由于通用USB接口依然是串口通信,市面上提供了一种称之为USB转接串口RS232的转接卡设备,且一并提供了驱动程序,将USB口转换成了RS232串口.这样也可以实现串口通信。第四章 设计结果及分析4.1 程序结果在使用串口调试助手的情况下,程序发送字符串的效果如图4-1所示:图4-1程序基本实现了老师要求的相关功能。4.2 设计反思程序虽然完成了老师要求的相关功能但还存在以下几点不足之处:1. 界面不够美观。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025签订购房合同注意事项
- 2025年财产保险合同的法律规定
- 考场心态的CAD工程师考试试题及答案
- 酒店资产管理知识点试题及答案
- 2025写字楼租赁合同模板打印
- 2025音响设备租赁合同
- 2025广东省第二人民医院信息系统维护服务合同
- 验证智慧交通理论的案例考题试题及答案
- 酒店品牌推广手段试题及答案
- 质量工程师技术创新试题及答案
- 成品检验记录表
- DB33-T 2196-2019水利工程标识牌设置规范
- 基于前药原理的药物设计解析课件
- 2022年上海海洋大学食品科学复试资料
- 病例报告表(CRF)模板
- Q∕GDW 12158-2021 国家电网有限公司重大活动电力安全保障工作规范
- 我把没有送给你(课堂版)(1)
- 杭汽HNKS50-63-28型汽轮机大修施工方案
- Q∕GDW 12113-2021 边缘物联代理技术要求
- 刘半农雨散文的特点
- 潍柴发动机WD615系列分解图册
评论
0/150
提交评论