当前位置:文档之家› dSPACE串口通信.

dSPACE串口通信.


dSPACE 应用
• 建立dSPACE串口通讯程序
– 同样从库中把串口读模块CAN_TYPE1_SER_RX_M1_C1加入到仿 真程序中。如图所示。
dSPACE与PC串口数据通讯实例
• 建立dSPACE串口通讯程序
– 双击串口读模块,打开其选项设置窗口。如图所示。
第三行Data bits,即数据位数设置,可供选 择有5,6,7,8,此例中设为8。
第四行Stop bits,即停止位设置,可供选择 有1,1.5,2,此例中设为1。
dSPACE与PC串口数据通讯实例
第五行Parity,即奇偶校验位设置,可供 选 择 有 No,Odd,Even,Force parity one,Force Parity zero, 此例中设为No。
dSPACE与PC串口数据通讯实例
dSPACE 应用
• 准备工作
– PC机端串口通讯软件
• PC机端串口通讯软件负责从串口接收dSPACE发送来的数据,同时给 dSPACE发送数据。
• 为了调试的需要,我们不必要懂得如何在PC机上编写串口通讯软件, 也不必要从头开始编写。目前,比较常用的一个软件为“串口调试助 手”,该软件完全免费,功能齐全,容易使用,而且已经过大多数人 的测试及认可,是串口调试必不可少的一个工具。
dSPACE 应用
串口数据通讯方法与实例
dSPACE 应用
串口基本知识
• 串口端口有9针和15针两种形式。目前在控制领域最常用的是 9针的这种。
• 配对的两个串口有公口和母口之分,把有针的那个端口称为公 口,另一个称为母口。
• 9针串口的每根针都有指定的编号,在通讯过程中有不同的用 途。
• 常用的串口通信方式有RS232、 RS422、 RS485。
• (2)使用串口设置进行串口通讯设置
– 串口通讯设置模块包括了串口通讯模式、波特率、数据位、奇偶校验 位、停止位以及输入输出缓冲区大小的设置,其它一些设置与 dSPACE是否能与外界通讯成功也密切相关,将在实例讲解中详细讲 述。
– 串口通讯设置模块名称是Serial Setup。如果有其它的串口通讯模块存 在于模型中(比如读模块或写模块),则该模块必须存在,否则不能 通过编译。
• 串口调试助手只支持三线制的串口通讯,这已满足控制领域的需要。 串口调试助手能选择串口号,设置波特率、奇偶校验位、数据位、停 止位,支持十六进制发送和显示,支持定时发送和手动发送,支持文 件发送,对接收的数据保存成文件等功能。
dSPACE与PC串口数据通讯实例
• 串口调试助手界面
dSPACE 应用
dSPACE 应用
• dSPACE不同的版本对串口支持程度不同。
• DS1401只支持RS232一种串口通讯模式,不支持RS422和 RS485模式。
• 在 DS1401 中 , RS232 模 式 支 持 的 最 大 数 据 波 特 率 为 115.2kBd。
• 每种模式都支持可设置的数据位数、奇偶校验位、停止位 以及输入输出缓冲区大小。
– 该选项卡中还有一个专门针对接收缓冲区的设置,即RX SW FIFO,其中的 Overwrite mode是指当接收缓冲区中已经满了,新的数据又来了,该如何 处置原来缓冲区中的数据。这里提供了两种选择,Discard new data指丢弃 新的数据,不予接收,Replace old data with new data指用新的数据覆盖原 来的数据。当选择后者时,下面允许设置被覆盖块的大小。不同的选择会导 致dSPACE产生不的行为。这里采用默认设置,即Discard new data。
第六行为Copy data to RX SW FIFO after reception of ? bytes at latest,意为在收到 最近的多少个字节数据后,把这些数据 拷贝到输入缓冲区。可供选择的设置有1, 4,8,14。 , 此例中设为14。
dSPACE 应用
dSPACE 应用
dSPACE与PC串口数据通讯实例
dSPACE 应用
dSPACE与PC串口数据通讯实例
• 建立dSPACE串口通讯程序
– 选择其中的串口通讯设置模块DS1103SER_SETUP,并 拖动放入刚建立的空白仿真程序中,如图所示。
dSPACE与PC串口数据通讯实例
dSPACE 应用
• 建立dSPACE串口通讯程序
– 双击串口通讯设置模块,将弹出串口通讯设置选项窗口(注意, 此前必须先插入dSPACE加密狗,否则无法弹出该窗口),如 图所示。
该选项窗口中有四个选项卡, 每个选项均提供了对串口通 讯不同的设置,下面将详细 介绍各个设置内容及其对串 口通讯的影响。
dSPACE与PC串口数据通讯实例
dSPACE 应用
• 建立dSPACE串口通讯程序
– 第一个选项卡名称为Unit,意为“模块”,提供了一行文字说明,表达设置 该模块的意图为“为通用异步接收和传送接口设置全局选项”。用于选择串 口通道,在些两项均选“1”。(Channel Number为1时为串口通信,2时为 Lin通信)
该选项卡中有两个大的设置 组,其中第一个组为接收模 式设置,第二个组为接收字 节数设置。第二个组下面根 据所设置不同,有更多的子 选项。下面分别介绍。
dSPACE与PC串口数据通讯实例
dSPACE 应用
• 建立dSPACE串口通讯程序
– 在接收模式设置组中,可以设置当读缓冲区中的数据少于设定的接收字节数 时,如何处理。有两个选择项,其一为Read available any way,即无论缓冲 区中有多少数据,都读取并传送给用户。这时可能导致用户接收到的数据不 是设定的字节数。选项二为Skip read operation,即忽略读操作,直到缓冲区 的数据多于或等于设定的接收字节数时才执行读操作,这保证了用户接收到 的数据永远为指定的大小。
dSPACE与PC串口数据通讯实例
• 建立dSPACE串口通讯程序
– 第三个选项卡为高级设置选项,该选 项卡可以设置是否启用NumRXBytes 和Status输出口。NumRXBytes说明 本次接收到的字节数,即NumBytes 输出口中数据量的大小。Status输出 口说明了本次读操作是否成功或失败。 如果成功,该输出口的值为0,否则 为其它值,详细的说明请查阅 dSPACE帮助。在较复杂的控制程序 中,这两个值为下一步的程序逻辑提 供了依据。
dSPACE与PC串口数据通讯实例
dSPACE 应用
• 建立dSPACE串口通讯程序
– 第四个选项卡为Advanced,意为“高级设置”。在该选项卡里只有一个选 项,
Disable UART on termination, 意为在通讯结束时,禁用UART。 默认情况下被选择,不需要修改。
如图所示。
dSPACE与PC串口数据通讯实例
dSPACE 应用
• 建立dSPACE串口通讯程序
– 打开Matlab/Simulink,新建一个Simulink仿真程序。如图所示。
dSPACE与PC串口数据通讯实例
dSPACE 应用
• 建立dSPACE串口通讯程序
– 从Simulink模块库中选择dSPACE串口设置模块,其位置位于dSPACE RTI1401>DS1401 Standard I/O > SER TYPE1库中,如图所示。
– 在接收字节设置组中,有两个子选项组,在同一时刻,只允许其中一个是可 设置的。这通过Parameter flexibility,即参数的可变性选项来控制。如果该 选项设置为tunable,则指接收的字节数是可变的,其具体大小在运行的过程 中可通过模块的NumBytes接口输入(选中by input port选项),或在该模块 中指定大小,在程序运行时该值通过ControlDesk实时修改。如果设置为nontunable,则接收的字节大小将一直保持不变。无论以何种方式指定,其可接 收的最大字节数为串口设置模块中设定的输入输出缓冲区值减去一。
dSPACE 应用
串口基本知识
• 9针串口端口针脚编号及作用
– 1 - DCD,载波检测; – 2 - RXD,接收数据; – 3 - TXD,发出数据; – 4 - DTR,数据终端准备好; – 5 - GND,信号地线; – 6 - DSR,数据准备好; – 7 - RTS,请求发送; – 8 - CTS,清除发送; – 9 - RI,振铃指示。
dSPACE 应用
串口读模块选项设置窗口共 有三个选项卡,第一个选项 卡为Unit,与串口设置模块设 置窗口中的第一个选项卡一 样,填写方式也一致,这里 不详细解说。
dSPACE与PC串口数据通讯实例
dSPACE 应用
• 建立dSPACE串口通讯程序
– 第二个选项卡为RX Parameters,意思为接收参数。如图所示。
dSPACE 应用
• 这里通过实例演示利用dSPACE进行串口通讯的详细步 骤以及程序的编写方法。
• 实 例 例 演 示 了 dSPACE与 PC 机 之 间 互 相 通 讯 , 即 从 dSPACE发送数据给PC机,PC机同时给dSPACE发送 数据,它们之间接收数据和发送数据同时进行,互不影 响。
dSPACE与PC串口数据通讯实例
dSPACE 应用
第二个选项卡名称为UART,意为“通用异步接收和传送”,该选项卡包含了 大多数对串口正常通讯有着关键影响的设置。下面逐一解释各个选择的含义。
第一行Transceiver,即传输模式,根据UNIT 项的设定,此处自动为RS232,不能修改。
第二行Baud rate,即波特率设置,这里需要 输入一个值,最大可输入值为115200,此例 中设为57600。
• 建立dSPACE串口通讯程序
– 第三个选项卡名称为FIFO,意为“输入输出缓冲区”,在这里可以设置接 收或发出数据时缓冲区的大小,也可以对接收的缓冲区作更细致的设置。选 项中的SW FIFO size指输入输出缓冲区的大小,单位为字节。这里可以输 入一个数字,但是该数字必须是2的n次幂,否则不予接受。默认缓冲区的 大小为64字节。本例中,使用默认值64字节,不需要修改。
相关主题