Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
BaiXuePrincess
rt-thread
提交
125235c6
R
rt-thread
项目概览
BaiXuePrincess
/
rt-thread
与 Fork 源项目一致
Fork自
RT-Thread / rt-thread
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
rt-thread
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
125235c6
编写于
6月 25, 2018
作者:
L
liquanqing
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add freemodbus slave contorl pin config in Kconfig
上级
d188fa49
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
19 addition
and
7 deletion
+19
-7
components/net/freemodbus/Kconfig
components/net/freemodbus/Kconfig
+10
-0
components/net/freemodbus/port/portserial.c
components/net/freemodbus/port/portserial.c
+9
-4
components/net/freemodbus/port/user_mb_app.h
components/net/freemodbus/port/user_mb_app.h
+0
-3
未找到文件。
components/net/freemodbus/Kconfig
浏览文件 @
125235c6
...
...
@@ -12,6 +12,16 @@ config RT_USING_MODBUS
config RT_MODBUS_SLAVE_RTU
bool "RTU slave mode"
default n
if RT_MODBUS_SLAVE_RTU
config RT_MODBUS_SLAVE_USE_CONTROL_PIN
bool "Use Contorl Pin"
default n
if RT_MODBUS_SLAVE_USE_CONTROL_PIN
config MODBUS_SLAVE_RT_CONTROL_PIN_INDEX
int "pin index for RS485 TX/RX select"
default 10
endif
endif
endif
endmenu
components/net/freemodbus/port/portserial.c
浏览文件 @
125235c6
...
...
@@ -56,8 +56,9 @@ BOOL xMBPortSerialInit(UCHAR ucPORT, ULONG ulBaudRate, UCHAR ucDataBits,
* set 485 mode receive and transmit control IO
* @note MODBUS_SLAVE_RT_CONTROL_PIN_INDEX need be defined by user
*/
//rt_pin_mode(MODBUS_SLAVE_RT_CONTROL_PIN_INDEX, PIN_MODE_OUTPUT);
#if defined(RT_MODBUS_SLAVE_USE_CONTROL_PIN)
rt_pin_mode
(
MODBUS_SLAVE_RT_CONTROL_PIN_INDEX
,
PIN_MODE_OUTPUT
);
#endif
/* set serial name */
if
(
ucPORT
==
1
)
{
#if defined(RT_USING_UART1) || defined(RT_USING_REMAP_UART1)
...
...
@@ -127,12 +128,16 @@ void vMBPortSerialEnable(BOOL xRxEnable, BOOL xTxEnable)
/* enable RX interrupt */
serial
->
ops
->
control
(
serial
,
RT_DEVICE_CTRL_SET_INT
,
(
void
*
)
RT_DEVICE_FLAG_INT_RX
);
/* switch 485 to receive mode */
//rt_pin_write(MODBUS_SLAVE_RT_CONTROL_PIN_INDEX, PIN_LOW);
#if defined(RT_MODBUS_SLAVE_USE_CONTROL_PIN)
rt_pin_write
(
MODBUS_SLAVE_RT_CONTROL_PIN_INDEX
,
PIN_LOW
);
#endif
}
else
{
/* switch 485 to transmit mode */
//rt_pin_write(MODBUS_SLAVE_RT_CONTROL_PIN_INDEX, PIN_HIGH);
#if defined(RT_MODBUS_SLAVE_USE_CONTROL_PIN)
rt_pin_write
(
MODBUS_SLAVE_RT_CONTROL_PIN_INDEX
,
PIN_HIGH
);
#endif
/* disable RX interrupt */
serial
->
ops
->
control
(
serial
,
RT_DEVICE_CTRL_CLR_INT
,
(
void
*
)
RT_DEVICE_FLAG_INT_RX
);
}
...
...
components/net/freemodbus/port/user_mb_app.h
浏览文件 @
125235c6
...
...
@@ -25,9 +25,6 @@
/* salve mode: discrete's all address */
#define S_DI_RESERVE 0
/* slave mode: holding register"s startup address */
#define S_SYSTEM_START_ADDR 0x003A
#define S_SYSTEM_SLAVE_ID_ADDR 0x0040
#define S_SYSTEM_KEEP_TEMP 0x0009
/* -----------------------Master Defines -------------------------------------*/
#define M_DISCRETE_INPUT_START 1
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录