当前位置:首页 » 存储配置 » 怎么进行串口协议配置

怎么进行串口协议配置

发布时间: 2022-07-22 15:33:27

A. 如何编写自己的串口通讯协议

所谓的串口通信协议,其实,就是串口通信时,相互的一种联系方式。
至于内容完全可以根据自己的需要来制定。
包括:首先确定波特率,是否有奇偶校验,一般都不用,比较麻烦,但可以加一个字节的校验和或校验字。
其次,多机通信时,要确定每个机器的地址,双机通信就不用了。
然后是联系方式,即通信时,是否用握手信息,互相交换联系信号,为了加密,还可以交换密码。
最简单的就是:发一帧数据时用几个字节,带不带校验和,起始字节是什么,结束字节是什么,关键的命令字是什么,数据字节是什么。命令字表示什么动作,数据表示状态。反正都是自己确定的,怎么编写协议都 行的。

B. CC2530的双串口在协议栈中怎么配置

一个口使用DMA方式,另一个口使用ISR方式,配置好初始化,修改hal_board_cfg.h内关于DMA和ISR的相关设置,修改代码如下
#if HAL_UART
// Always prefer to use DMA over ISR.
#if HAL_DMA
#ifndef HAL_UART_DMA
#if (defined ZAPP_P1) || (defined ZTOOL_P1)
#define HAL_UART_DMA 1
#elif (defined ZAPP_P2) || (defined ZTOOL_P2)
#define HAL_UART_DMA 2
#else
#define HAL_UART_DMA 1
#endif
#endif
#define HAL_UART_ISR 2
#else
#ifndef HAL_UART_ISR
#if (defined ZAPP_P1) || (defined ZTOOL_P1)
#define HAL_UART_ISR 1
#elif (defined ZAPP_P2) || (defined ZTOOL_P2)
#define HAL_UART_ISR 2
#else
#define HAL_UART_ISR 1
#endif
#endif
#define HAL_UART_DMA 0
#endif
这样就选择了port0 采用DMA方式,port1采用ISR方式。
接下来是在应用文件中初始化两个串口。

//==========================================================================
// 串口0初始化函数
//==========================================================================
static void FS_Uart_Init(void)
{
halUARTCfg_t uartConfig;

uartConfig.configured = TRUE; // 2x30 don't care - see uart driver.
uartConfig.baudRate = HAL_UART_BR_115200;
uartConfig.flowControl = FALSE;
uartConfig.flowControlThreshold = 256; // 2x30 don't care - see uart driver.
uartConfig.rx.maxBufSize = 70; // 2x30 don't care - see uart driver.
uartConfig.tx.maxBufSize = 256; // 2x30 don't care - see uart driver.
uartConfig.idleTimeout = 6; // 2x30 don't care - see uart driver.
uartConfig.intEnable = TRUE; // 2x30 don't care - see uart driver.
uartConfig.callBackFunc = FS_Uart_CallBack;
HalUARTOpen (HAL_UART_PORT_0, &uartConfig);
}
//==========================================================================
// 串口1初始化函数
//==========================================================================
static void FS_Uart1_Init(void)
{
halUARTCfg_t uartConfig;

uartConfig.configured = TRUE; // 2x30 don't care - see uart driver.
uartConfig.baudRate = HAL_UART_BR_115200;
uartConfig.flowControl = FALSE;
uartConfig.flowControlThreshold = 32; // 2x30 don't care - see uart driver.
uartConfig.rx.maxBufSize = 32; // 2x30 don't care - see uart driver.
uartConfig.tx.maxBufSize = 32; // 2x30 don't care - see uart driver.
uartConfig.idleTimeout = 6; // 2x30 don't care - see uart driver.
uartConfig.intEnable = TRUE; // 2x30 don't care - see uart driver.
uartConfig.callBackFunc = FS_Uart_CallBack; 指定串口回调函数
HalUARTOpen (HAL_UART_PORT_1, &uartConfig);
}
串口函数的读出
从以上初始化代码中很明显的看到,两个port口采用了两个初始化函数但去采用了同一个回调函数,实际上也只能采用这一个回调函数
串口的读出:
//====================================================================
// @brief 串口回调函数
//====================================================================
static void FS_Uart_CallBack(uint8 port,uint8 event)
{

int i ;
//(port == HAL_UART_PORT_0 )&&
if(( event & ( HAL_UART_RX_FULL | HAL_UART_RX_ABOUT_FULL | HAL_UART_RX_TIMEOUT ) ) )
{
if(port == HAL_UART_PORT_0)
{
HalUARTRead(HAL_UART_PORT_0, &i8_uart_buf[count], len); //读取串口数据到buf指向的内存
//此处添加数据解析函数
}
else//port == HAL_UART_PORT_1
{
i8_uart1_len = Hal_UART_RxBufLen(HAL_UART_PORT_1); //取出本次接收到的字符长度
HalUARTRead(HAL_UART_PORT_1, i8_uart1_buf, i8_uart1_len);
osal_set_event( GenericApp_TaskID, GENERICAPP_FS_UART1_CALLBACK );
}
}

}

C. 如何用协议串口通信

串口通信的概念非常简单,串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。
什么是串口
串口是计算机上一种非常通用的设备通信协议(不要与通用串行总线Universal SerialBus或者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码是0~127(7位)。扩展的ASCII码是0~255(8位)。如果数据使用简单的文本(标准ASCII码),那么每个数据包使用7位数据。每个包是指一个字节,包括开始/停止位,数据位和奇偶校验位。由于实际数据位取决于通信协议的选取,术语“包”指任何通信的情况。
c,停止位:用于表示单个包的最后一位。典型的值为1,1.5和2位。由于数据是在传输线上定时的,并且每一个设备有其自己的时钟,很可能在通信中两台设备间出现了小小的不同步。因此停止位不仅仅是表示传输的结束,并且提供计算机校正时钟同步的机会。适用于停止位的位数越多,不同时钟同步的容忍程度越大,但是数据传输率同时也越慢。
d,奇偶校验位:在串口通信中一种简单的检错方式。有四种检错方式:偶、奇、高和低。当然没有校验位也是可以的。对于偶和奇校验的情况,串口会设置校验位(数据位后面的一位),用一个值确保传输的数据有偶个或者奇个逻辑高位。例如,如果数据是011,那么对于偶校验,校验位为0,保证逻辑高的位数是偶数个。如果是奇校验,校验位为1,这样就有3个逻辑高位。高位和低位不真正的检查数据,简单置位逻辑高或者逻辑低校验。这样使得接收设备能够知道一个位的状态,有机会判断是否有噪声干扰了通信或者是否传输和接收数据是否不同步。

详情参考
http://ke..com/link?url=_n9oFTop1d9tnu2aGP_dJBUbIQDUq7X9pppRdzS6G-Top4zB0iwYv_

D. SecureCRT 用串口线连接交换机的时候该怎么设置

1、首先打开计算机,在计算机内打开SecureCRT。

(4)怎么进行串口协议配置扩展阅读

SecureCRT一款用于连接运行包括Windows、UNIX和VMS的理想工具。通过使用内含的VCP命令行程序可以进行加密文件的传输。

有流行CRTTelnet客户机的所有特点,包括:自动注册、对不同主机保持不同的特性、打印功能、颜色设置、可变屏幕尺寸、用户定义的键位图和优良的VT100,VT102,VT220和ANSI竞争.能从命令行中运行或从浏览器中运行。

其它特点包括文本手稿、易于使用的工具条、用户的键位图编辑器、可定制的ANSI颜色等。SecureCRT的SSH协议支持DES,3DES和RC4密码和密码与RSA鉴别。

广泛的终端仿真:

VT100,VT102,VT220,ANSI,SCO ANSI,Xterm,Wyse 50/60

和 Linux console 仿真(带有 ANSI 颜色)。

优秀的会话管理特性:

新的带标签的用户界面和 Activator 托盘工具,最小化桌面的杂乱。

会话设置可以保存在命名的会话中。

协议支持:

支持 SSH1,SSH2,Telnet,RLogin,Serial,和 TAPI 协议。

E. 请问labview如何设置串口通信协议的

我不知道你下位机用的是什么,但是,肯定是以下几步了:

1.Labview发不同的指令给下位机;

2.下位机收到指令,执行对应的命令,控制泵的流量。

所以,归结其来,就是labview通过串口给下位机发送数据。

设置通信协议可用“VISA配置串口”来设置通信协议,其他的串口读写也用VISA里面的模块。

我给你传个图,你就知道了,有问题可以和我联系。

F. SecureCRT串口怎么设置

点击下图红色箭头所指的按钮。 在出现的“Connect”界面中,点击下图红色箭头设置的按钮。 然后选择“Serial”选项。 接着,点击“下一步”按钮。 对照下面的参数,进行串口的配置。 对配置的串口连接进行命名。 然后点击下图红框中的“Connect”按钮。 如下图所示,就是已经连接到Cisco交换机上的图示。

G. 51单片机如何进行串口通信,并制定通信协议.

连线就是
交叉连接
A的TX到B的RX
A的RX到B的TX,还有一根地线
串口线就这三根就够用了
然后就是初始化A和B的串口,设置波特率,工作模式,开中断等等
A和B的通信,你先调试一台机器,比如A,和电脑连接,用串口调试助手(网上找)查看A的收发数据是否正常,然后A和B联调
串口通信距离不远一般不会出错,波特率较低,除了奇偶校验,你可以指定一个简单的通信协议,来验证是否数据正常
这类程序网上很多,你不清楚就搜索51串口程序,出来一大堆,找个有注释的看看,调试一下试一试
祝你顺利
在网上找了一下,这两个你参考一下,注释很详细
串口发送

热点内容
手机可以换内置存储 发布:2024-05-17 20:31:37 浏览:744
泛型编程stl 发布:2024-05-17 20:26:34 浏览:933
传智播客php韩顺平 发布:2024-05-17 20:09:52 浏览:819
android蓝牙打印打印图片 发布:2024-05-17 18:58:31 浏览:464
android年龄 发布:2024-05-17 18:51:33 浏览:198
termux安装python 发布:2024-05-17 18:44:55 浏览:655
手机流量上传 发布:2024-05-17 18:44:06 浏览:551
服务器怎么证明是好的 发布:2024-05-17 18:39:28 浏览:683
树莓派如何搭建mqtt服务器 发布:2024-05-17 18:27:38 浏览:437
门口机sip服务器ip是什么 发布:2024-05-17 17:38:27 浏览:554