基于DSP28335的Matlab/Simulink代码生成实验八:SCI通信

硬件部分

串口是MCU的重要外部接口,同时也是软件开发重要的调试手段,其重要性不言而喻。现在基本上所有的MCU都会带有串口,F28335自然也不例外。通常,大部分人把SCI、UART与RS232混为一谈,其实他们有本质上的差别。

SCI(Serial Communication Interface)意为“串行通信接口”,是相对于并行通信的,是串行通信技术的一种总称,最早由Motolora 公司提出的。

UART(Universal Asynchronous Receiver & Transmitter)即通用异步收发器,是串行通信的一种协议,它规定串行通信的波特率、起始/停止位、数据位、校验位等格式,以及各种异步握手信号。

RS232 是串行通信的一种物理接口电气标准,规定传输介质(电缆)、收发电平等。其实,RS232、RS422、RS485等都是SCI,其中两线制(仅RXD和TXD)的RS232与RS422和RS485的通信协议是相同的(只有波特率、起始/停止位、数据位、校验位等参数),仅传输介质和收发电平不同。

图10. 1SCI接口电路

SCITXDB接GPIO18引脚,SCITXDB接GPIO19引脚。本实验采用DB9接口,将“DB9USB”通信端口与上位机连接,通信引脚无需单独连接。

模型搭建 

代码生成SCI通信实验模型”,如下图:

图10. 2ADC采样实验模型

   用MATLAB/Simulink R2018b或者更高版本MATLAB/Simulink新建仿真模型。

“1”是中断模块,双击该模块打开参数对话框,根据图10. 3中断向量表,CPU中断序列选择9,PIE中断序列选择3,优先级选择30;

图10. 3中断向量表

 “2”是子系统,框选区域后,选择创建子系统;

图10. 4创建子系统

“3”是SCI通信接收模块,打开参数设置窗口,SCI模块选择B,开始符与终止符均去掉,采样时间-1,勾选等待收到数据,超时设置为0.019444,点击确定完成设置;

图10. 5配置SCI接收模块

“4”是是SCI通信发送模块,打开参数设置窗口,SCI模块选择B,去掉开始符与终止符,点击确定完成设置;

图10. 6配置SCI发送模块

“5”是函数调用模块,查找Trigger模块,选择触发器类型为“函数调用”,完成设置。

 

图10. 7函数调用模块

 

下载运行

第一步:DSP板上电

用MATLAB/Simulink R2018b或者更高版本MATLAB打开“Lab10_SCI_Experiment.slx”;

图10. 8 SCI通信实验模型

其中“1”为模型配置按钮,点击该按钮,弹出配置对话框,然后配置目标硬件的资源,在“Build Action”中设置编译选项,在“Target hardware resources”中的SCI_B栏,勾选“Post receive FIFO interrupt when data is received”,引脚分配分别选择GPIO18与GPIO19;

图10. 9 “Hardware Implementation”选项的设置

“2”是“Build,Deploy&Start”,模型编译下载按钮,点击该按钮,模型会自动编译,在matlab路径下生成目标代码,同时将程序下载至DSP核心板并自动运行。

 

第二步:观察实验结果

实验现象:发送单个字符“a”“b”“c”“d”如下图所示。

图10. 10 串口通信测试

串口调试软件4.5使用注意事项:以管理员身份运行串口调试软件,根据设备管理器中的串口设备号COM—选择端口号,波特率选择115200,取消勾选接收区和发送区1的16进制选项,可在发送区1手动发送数据。

图10. 11 串口调试软件设置

以上就是代码生成SCI通信实验的所有内容啦!大家点点收藏的同时,麻烦点点赞同哦,谢谢!   代码生成模型已在闲鱼(灼青云)上架,有需要的小伙伴可以看看。

此外,附上文中用到的串口调试软件“ComMonitor”。链接:https://pan.baidu.com/s/1XlyxYKaRJeukuVZHqqeUZA?pwd=sbee 
提取码:sbee

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值