应用例程:串口自由口的发送与接收基本信息通过两块STM32F103RCT6核心板,演示如何进行串口数据的发送与接收。核心板B采集电位器的数据,转换为电压后,通过串口发送到核心板A,核心板A接收到数据后,将数据通过OLED屏显示出来。 视频下载暂无 实验硬件STM32F103RCT6核心板(2块)[ 购买 ]: CH340E通讯小板(2块)[ 购买 ]: Micro-USB通讯线(2根)[ 购买 ]: OLED屏SSD1306(1块)[ 购买 ]: 可调电位器模块(1块)[ 购买 ]: 电路参考
关键配置说明为了简化,这里STM32F103xC核心板A与核心板B采用同一套硬件配置。 添加Asc蓝图,在蓝图中添加Asc底层实现USART3_AscL。选择模块USART3_AscL,确认通讯使用的单片机的管脚为PB10、PB11。 选择模块Asc,在配置节点Device中,添加设备Device1,使用的底层实现为USART3_AscL。这里配置了发送使能管脚为PB12,因为使用使用的是TTL电平直连,并不需要发送使能管脚,因此也可以不配,保持为Null。 选择模块Asc_Fe,在配置节点Port中,添加用户端口Port1,使用Asc模块中的设备Device1。 选择模块Asc,在配置节点Job中,分别选择系统自动创建的任务Asc_Fe_Port1_JobTransmit、Asc_Fe_Port1_JobReceive、Asc_Fe_Port1_JobMaster,确认下通讯参数是否正确。 A/D转换器、OLED屏的配置可以参考以下两个例程: 应用程序梯形图(核心板A,接收并显示)NETWORK 0 用启动信号初始化串口,115200波特率,8位数据位,偶效验,1位停止位
NETWORK 1 用SM0.0驱动串口接收任务,一旦任务完成,下一个周期立即重新开启接收
NETWORK 2 当接收任务完成且没有错误时,统计总的报文和有效报文
液晶屏配置(核心板A,接收并显示)梯形图(核心板B,采集并发送)NETWORK 0 用启动信号初始化串口,115200波特率,8位数据位,偶效验,1位停止位
NETWORK 1 获取AIW0的变化情况,保存到变量VW2
NETWORK 2 如果不在发送冷却时间内,且数据变化大于4,则更新VW0,并设置因为数据变化需要发送的请求M0.0
NETWORK 3 如果不在发送冷却时间内,且超过1秒没有发送过数据了,设置因为超时需要发送的请求M0.1
NETWORK 4 若有发送请求M0.0或者是M0.1,处理下数据然后启动发送任务
NETWORK 5 统计发送成功的次数
实验步骤
指令说明相关下载
|