esm335x系列工控主板支持5路高速串口,其中com2口支持硬件rts/cts流控功能,其rts/cts分别与esm335x的gpio1/gpio0复用,应用程序可以独立设置是否使能rts/cts功能。
rts(request-to-send)流量控制功能由串口参数结构体dcb的frtscontrol成员设置,该成员的可用值如下(针对esm335x):
值
说明
rts_control_disable
禁止rts功能,对应管脚可作为gpio使用
rts_control_handshake
启用rts握手功能。当串口硬件输入缓冲区字符数大于40时,rts输出高,小于24个字符时,rts输出低
rts_control_toggle
当发送数据时,rts信号线被驱动为低,缓冲区数据发送完后,rts信号为被驱动高
串口参数结构体dcb的foutxctsflow成员用于指定cts(clear-to-send)信号是否被监视并作为输出流量控制信号。如果此成员设置为true且cts管脚为高,则串口输出被挂起,直到cts被拉低后重新输出。如果此成员设置为false,对应管脚可作为gpio使用。
rts handshake与outxctsflow通常是同时使能或同时禁止的,下面是设置rts/cts的示例代码:
bool cceserial::sethandshake( bool bset )
{
dcb dcb;
getcommstate( m_hser, &dcb );
// purge any pending characters in the serial port.
purgecomm(m_hser, (purge_txabort|purge_rxabort |purge_txclear | purge_rxclear));
if( bset )
{
dcb.frtscontrol = rts_control_handshake;
dcb.foutxctsflow = true;
}
else
{
dcb.frtscontrol = rts_control_disable;
dcb.foutxctsflow = false;
}
returnsetcommstate(m_hser, &dcb);
}
除com2口支持硬件流控外,esm335x的所有串口(包括com2)还支持 rts toggle功能,rts toggle主要用于rs485电路的数据收发方向控制,应用程序可以选择esm335x 32位gpio中的任意一位做为rts信号线来实现rts toggle功能,下面是选择gpio作为串口rts信号并使能rts_control_toggle的示例代码:
bool cceserial::setrtstoggle( dword dwrtspin )
{
dcb dcb;
bool bret;
bret = deviceiocontrol(m_hser, // file handle to the driver
ioctl_set_uart_rts_pin, // i/o control code
&dwrtspin, // in buffer
sizeof(dword), // in buffer size
null, // out buffer
0, // out buffer size
null, // pointer to number of bytes returned
null); // ignored (=null)
if( !bret )
returnfalse;
getcommstate( m_hser, &dcb );
// purge any pending characters in the serial port.
purgecomm(m_hser, (purge_txabort |purge_rxabort |purge_txclear | purge_rxclear));
dcb.frtscontrol = rts_control_toggle;
setcommstate(m_hser, &dcb);
returntrue;
}
完整的串口例程请与英创工程师联系获取。
全球的50多名顶尖工程师被选为皇家工程院院士!华人院士共7名
无人超市降临西安!西安第一家无人超市开门营业!种类齐全快来尝鲜!
LTCC带通滤波器研制与实现
润和软件披露2022年半年报 与易华录达成战略合作
英特尔将在台北、上海和加利福尼亚Folsom建立雅典娜计划开放实验室的计划
英创信息技术ESM335x WEC7串口硬件流控使用说明
浅谈智能AOI视觉检测仪的未来发展
通信射频同轴互连解决方案详细介绍
LED平板灯闪烁的原因
利用Wi-Fi路由器为物联网装置进行无线充电
东莞市行政中心广场充电基础设施正式启用
2010年英特尔信息技术峰会4月首发北京
东芝光耦DIP8(LF5) 封装(包装)
运动控制器技术采用针式连接器会更加适合工业应用
俄罗斯无人驾驶机器人小车开始送餐,顾客用智能手机解锁机器人取餐
微软撤出华为总部 暂停一切业务往来
USBtype/Lightning苹果手机充电头数据线芯片焊点填充保护胶水
RISC-V和当前主流架构ARM如何共存
Intel发布采用10nm++工艺的处理器产品,主打低功耗嵌入式领域
西门子致力自动化和数字化解决方案,引领工业生产更进一步