📄 relay.txt
字号:
void TASK2 (void *pdata)
{
uint8 cmd[4]; // 命令寄存器
pdata = pdata;
EMCInit(); // 初始化外部总线
MISAInit(); // 外部函数
// 继电器输出演示
cmd[0] = 0xfF; // 使能继电器RE0~RE4
cmd[2] = 0x01; // 禁能继电器命令
while(1)
{
OSTimeDly(300); // 等待板卡复位
WriteCmd8016A(cmd, BoardB0); // 调用写命令函数
if (cmd[2] != 0x01) // 出错处理
{
// 添加出错处理代码
}
cmd[0] = 0x00; // 使能继电器RE0~RE4
cmd[2] = 0x01; // 禁能继电器命令
OSTimeDly(300); // 等待板卡复位
WriteCmd8016A(cmd, BoardB0); // 调用写命令函数
if (cmd[2] != 0x01) // 出错处理
{
// 添加出错处理代码
}
while (1)
{
cmd[0] = 0x01; // 使能继电器RE0
cmd[2] = 0x01; // 禁能继电器命令
WriteCmd8016A(cmd, BoardB0); // 调用写命令函数
OSTimeDly(100); // 等待板卡复位
cmd[0] = 0x02; // 使能继电器RE0
cmd[2] = 0x01; // 禁能继电器命令
WriteCmd8016A(cmd, BoardB0); // 调用写命令函数
OSTimeDly(100); // 等待板卡复位
cmd[0] = 0x04; // 使能继电器RE0
cmd[2] = 0x01; // 禁能继电器命令
WriteCmd8016A(cmd, BoardB0); // 调用写命令函数
OSTimeDly(100); // 等待板卡复位
cmd[0] = 0x08; // 使能继电器RE0
cmd[2] = 0x01; // 禁能继电器命令
WriteCmd8016A(cmd, BoardB0); // 调用写命令函数
OSTimeDly(100); // 等待板卡复位
cmd[0] = 0x10; // 使能继电器RE0
cmd[2] = 0x01; // 禁能继电器命令
WriteCmd8016A(cmd, BoardB0); // 调用写命令函数
OSTimeDly(100); // 等待板卡复位
cmd[0] = 0x20; // 使能继电器RE0
cmd[2] = 0x01; // 禁能继电器命令
WriteCmd8016A(cmd, BoardB0); // 调用写命令函数
OSTimeDly(100); // 等待板卡复位
cmd[0] = 0x40; // 使能继电器RE0
cmd[2] = 0x01; // 禁能继电器命令
WriteCmd8016A(cmd, BoardB0); // 调用写命令函数
OSTimeDly(100); // 等待板卡复位
cmd[0] = 0x80; // 使能继电器RE0
cmd[2] = 0x01; // 禁能继电器命令
WriteCmd8016A(cmd, BoardB0); // 调用写命令函数
OSTimeDly(100); // 等待板卡复位
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -