Compare commits
No commits in common. "no2" and "main" have entirely different histories.
|
|
@ -5,18 +5,18 @@
|
|||
备 注:变更引脚,由MX配置完成
|
||||
*******************/
|
||||
const T_HC595_PIN hc595 =
|
||||
{
|
||||
.sck_port = HC595_SRCLK_GPIO_Port,
|
||||
.sck_pin = HC595_SRCLK_Pin, // 数据输入时钟线
|
||||
{
|
||||
.sck_port = HC595_SRCLK_GPIO_Port,
|
||||
.sck_pin = HC595_SRCLK_Pin, //数据输入时钟线
|
||||
|
||||
.data_port = HC595_SER_GPIO_Port,
|
||||
.data_pin = HC595_SER_Pin, // 数据线
|
||||
.data_port = HC595_SER_GPIO_Port,
|
||||
.data_pin = HC595_SER_Pin, //数据线
|
||||
|
||||
.rck_port = HC595_RCLK_GPIO_Port,
|
||||
.rck_pin = HC595_RCLK_Pin, // 输出存储器锁存时钟线
|
||||
.rck_port = HC595_RCLK_GPIO_Port,
|
||||
.rck_pin = HC595_RCLK_Pin, //输出存储器锁存时钟线
|
||||
|
||||
.en_port = HC595_OE_GPIO_Port,
|
||||
.en_pin = HC595_OE_Pin // 芯片使能
|
||||
.en_port = HC595_OE_GPIO_Port,
|
||||
.en_pin = HC595_OE_Pin //芯片使能
|
||||
};
|
||||
|
||||
/******************************
|
||||
|
|
@ -28,7 +28,7 @@ const T_HC595_PIN hc595 =
|
|||
*******************************/
|
||||
void hc595_init(const T_HC595_PIN *pin)
|
||||
{
|
||||
LL_GPIO_ResetOutputPin(pin->en_port, pin->en_pin);
|
||||
LL_GPIO_ResetOutputPin(pin->en_port, pin->en_pin);
|
||||
LL_GPIO_SetOutputPin(HC595_SRCLR_GPIO_Port, HC595_SRCLR_Pin);
|
||||
}
|
||||
|
||||
|
|
@ -41,7 +41,7 @@ void hc595_init(const T_HC595_PIN *pin)
|
|||
*******************************/
|
||||
void hc595_deInit(const T_HC595_PIN *pin)
|
||||
{
|
||||
LL_GPIO_SetOutputPin(pin->en_port, pin->en_pin);
|
||||
LL_GPIO_SetOutputPin(pin->en_port, pin->en_pin);
|
||||
}
|
||||
|
||||
/******************************
|
||||
|
|
@ -50,156 +50,147 @@ void hc595_deInit(const T_HC595_PIN *pin)
|
|||
形 参:pin--引脚结构体 data--数据字节组 length--数据字节长度
|
||||
返回值:
|
||||
备 注:1、数据输出方向--高位先进,QH=高八位,QG,高七位,QF,高六位,依次下去。
|
||||
2、CLK:低电平->高电平 移位寄存器存储一个位
|
||||
RCK:低电平->高电平 输出移位寄存器中缓存的位。
|
||||
2、CLK:低电平->高电平 移位寄存器存储一个位
|
||||
RCK:低电平->高电平 输出移位寄存器中缓存的位。
|
||||
笔 记:这里用的是三级串联,根据HC595的特性,移位寄存器只能存储8个位,
|
||||
如果移位寄存器的8个位填满后,再往移位寄存器中塞一个,移位寄存器的最后一个位数据会被挤出去,
|
||||
这个数据会从引脚9(SQH)发送给下个HC595引脚14(SI)。
|
||||
如果移位寄存器的8个位填满后,再往移位寄存器中塞一个,移位寄存器的最后一个位数据会被挤出去,
|
||||
这个数据会从引脚9(SQH)发送给下个HC595引脚14(SI)。
|
||||
*******************************/
|
||||
void hc595_writeStr(const T_HC595_PIN *pin, uint8_t *data, uint16_t length)
|
||||
{
|
||||
uint16_t i;
|
||||
uint8_t byte;
|
||||
uint16_t i;
|
||||
uint8_t byte;
|
||||
|
||||
data += length - 1; // 等价于data[length - 1]
|
||||
while (length--)
|
||||
{
|
||||
byte = *data--; // 取数组data[length - 1]赋予byte,然后再--data[length - 1]。
|
||||
for (i = 0; i < 8; i++)
|
||||
{
|
||||
LL_GPIO_ResetOutputPin(pin->sck_port, pin->sck_pin); // clk = 0 保持缓存区状态
|
||||
if (byte & 0x80) // 从高位开始发送
|
||||
{
|
||||
LL_GPIO_SetOutputPin(pin->data_port, pin->data_pin); // data=1
|
||||
}
|
||||
else
|
||||
{
|
||||
LL_GPIO_ResetOutputPin(pin->data_port, pin->data_pin); // data=0
|
||||
}
|
||||
byte <<= 1;
|
||||
delay_tick(10); // us
|
||||
LL_GPIO_SetOutputPin(pin->sck_port, pin->sck_pin); // clk = 1 存储数据至缓存区
|
||||
delay_tick(10); // us
|
||||
}
|
||||
}
|
||||
LL_GPIO_ResetOutputPin(pin->rck_port, pin->rck_pin);
|
||||
delay_tick(10);
|
||||
LL_GPIO_SetOutputPin(pin->rck_port, pin->rck_pin); // 发送缓存区内容
|
||||
data += length - 1; //等价于data[length - 1]
|
||||
while(length--)
|
||||
{
|
||||
byte = *data--;//取数组data[length - 1]赋予byte,然后再--data[length - 1]。
|
||||
for(i = 0; i < 8; i++)
|
||||
{
|
||||
LL_GPIO_ResetOutputPin(pin->sck_port, pin->sck_pin); //clk = 0 保持缓存区状态
|
||||
if(byte & 0x80) //从高位开始发送
|
||||
{
|
||||
LL_GPIO_SetOutputPin(pin->data_port, pin->data_pin);//data=1
|
||||
}
|
||||
else
|
||||
{
|
||||
LL_GPIO_ResetOutputPin(pin->data_port, pin->data_pin);//data=0
|
||||
}
|
||||
byte <<= 1;
|
||||
delay_tick(10);//us
|
||||
LL_GPIO_SetOutputPin(pin->sck_port, pin->sck_pin); //clk = 1 存储数据至缓存区
|
||||
delay_tick(10);//us
|
||||
}
|
||||
}
|
||||
LL_GPIO_ResetOutputPin(pin->rck_port, pin->rck_pin);
|
||||
delay_tick(10);
|
||||
LL_GPIO_SetOutputPin(pin->rck_port, pin->rck_pin);//发送缓存区内容
|
||||
}
|
||||
|
||||
uint8_t iostate[8] = {0};
|
||||
void io_output(void)
|
||||
{
|
||||
// 电磁阀1,置0
|
||||
if ((CoilState[0] & 0x80))
|
||||
//电磁阀1,置0
|
||||
if((CoilState[0] & 0x80))
|
||||
{
|
||||
LL_GPIO_ResetOutputPin(DO1_GPIO_Port, DO1_Pin);
|
||||
LL_GPIO_ResetOutputPin(DO1_GPIO_Port,DO1_Pin);
|
||||
iostate[7] = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
LL_GPIO_SetOutputPin(DO1_GPIO_Port, DO1_Pin);
|
||||
LL_GPIO_SetOutputPin(DO1_GPIO_Port,DO1_Pin);
|
||||
iostate[7] = 1;
|
||||
}
|
||||
// 电磁阀2,置0
|
||||
if ((CoilState[0] & 0x40))
|
||||
//电磁阀2,置0
|
||||
if((CoilState[0] & 0x40))
|
||||
{
|
||||
LL_GPIO_ResetOutputPin(DO2_GPIO_Port, DO2_Pin);
|
||||
LL_GPIO_ResetOutputPin(DO2_GPIO_Port,DO2_Pin);
|
||||
iostate[6] = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
LL_GPIO_SetOutputPin(DO2_GPIO_Port, DO2_Pin);
|
||||
LL_GPIO_SetOutputPin(DO2_GPIO_Port,DO2_Pin);
|
||||
iostate[6] = 1;
|
||||
}
|
||||
// 电磁阀3,置0
|
||||
if ((CoilState[0] & 0x20))
|
||||
//电磁阀3,置0
|
||||
if((CoilState[0] & 0x20))
|
||||
{
|
||||
LL_GPIO_ResetOutputPin(DO3_GPIO_Port, DO3_Pin);
|
||||
LL_GPIO_ResetOutputPin(DO3_GPIO_Port,DO3_Pin);
|
||||
iostate[5] = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
LL_GPIO_SetOutputPin(DO3_GPIO_Port, DO3_Pin);
|
||||
LL_GPIO_SetOutputPin(DO3_GPIO_Port,DO3_Pin);
|
||||
iostate[5] = 1;
|
||||
}
|
||||
// 电磁阀4,置0
|
||||
if ((CoilState[0] & 0x10))
|
||||
//电磁阀4,置0
|
||||
if((CoilState[0] & 0x10))
|
||||
{
|
||||
LL_GPIO_ResetOutputPin(DO4_GPIO_Port, DO4_Pin);
|
||||
LL_GPIO_ResetOutputPin(DO4_GPIO_Port,DO4_Pin);
|
||||
iostate[4] = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
LL_GPIO_SetOutputPin(DO4_GPIO_Port, DO4_Pin);
|
||||
LL_GPIO_SetOutputPin(DO4_GPIO_Port,DO4_Pin);
|
||||
iostate[4] = 1;
|
||||
}
|
||||
// 电磁阀5,置0
|
||||
if ((CoilState[0] & 0x08))
|
||||
//电磁阀5,置0
|
||||
if((CoilState[0] & 0x08))
|
||||
{
|
||||
LL_GPIO_ResetOutputPin(DO5_GPIO_Port, DO5_Pin);
|
||||
LL_GPIO_ResetOutputPin(DO5_GPIO_Port,DO5_Pin);
|
||||
iostate[3] = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
LL_GPIO_SetOutputPin(DO5_GPIO_Port, DO5_Pin);
|
||||
LL_GPIO_SetOutputPin(DO5_GPIO_Port,DO5_Pin);
|
||||
iostate[3] = 1;
|
||||
}
|
||||
// 指示灯1(绿),置0
|
||||
if ((CoilState[0] & 0x04))
|
||||
//指示灯1(绿),置0
|
||||
if((CoilState[0] & 0x04))
|
||||
{
|
||||
LL_GPIO_ResetOutputPin(DO6_GPIO_Port, DO6_Pin);
|
||||
LL_GPIO_ResetOutputPin(DO6_GPIO_Port,DO6_Pin);
|
||||
iostate[2] = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
LL_GPIO_SetOutputPin(DO6_GPIO_Port, DO6_Pin);
|
||||
LL_GPIO_SetOutputPin(DO6_GPIO_Port,DO6_Pin);
|
||||
iostate[2] = 1;
|
||||
}
|
||||
// 指示灯2(黄),置0
|
||||
if ((CoilState[0] & 0x02))
|
||||
//指示灯2(黄),置0
|
||||
if((CoilState[0] & 0x02))
|
||||
{
|
||||
LL_GPIO_ResetOutputPin(DO7_GPIO_Port, DO7_Pin);
|
||||
LL_GPIO_ResetOutputPin(DO7_GPIO_Port,DO7_Pin);
|
||||
iostate[1] = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
LL_GPIO_SetOutputPin(DO7_GPIO_Port, DO7_Pin);
|
||||
LL_GPIO_SetOutputPin(DO7_GPIO_Port,DO7_Pin);
|
||||
iostate[1] = 1;
|
||||
}
|
||||
// 指示灯3(红,声光),置0
|
||||
if ((CoilState[0] & 0x01))
|
||||
//指示灯3(红,声光),置0
|
||||
if((CoilState[0] & 0x01))
|
||||
{
|
||||
LL_GPIO_ResetOutputPin(DO8_GPIO_Port, DO8_Pin);
|
||||
LL_GPIO_ResetOutputPin(DO8_GPIO_Port,DO8_Pin);
|
||||
iostate[0] = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
LL_GPIO_SetOutputPin(DO8_GPIO_Port, DO8_Pin);
|
||||
LL_GPIO_SetOutputPin(DO8_GPIO_Port,DO8_Pin);
|
||||
iostate[0] = 1;
|
||||
}
|
||||
// 流量计调零
|
||||
if (CoilState[1] & 0x01)
|
||||
//流量计调零
|
||||
if(CoilState[1] & 0x01)
|
||||
{
|
||||
flow_state = 0;
|
||||
CoilState[1] &= 0xFE;
|
||||
}
|
||||
// 激光调零
|
||||
if (CoilState[1] & 0x02)
|
||||
//激光调零
|
||||
if(CoilState[1] & 0x02)
|
||||
{
|
||||
laser_handle.state = 3;
|
||||
laser_handle.state = LASER_OPEN_STATUS;
|
||||
CoilState[1] &= 0xFD;
|
||||
}
|
||||
// 增量编码器调零
|
||||
if (CoilState[1] & 0x04)
|
||||
{
|
||||
LL_TIM_SetCounter(TIM4, 30000);
|
||||
CoilState[1] &= 0xFB;
|
||||
}
|
||||
// 绝对编码器调零
|
||||
if (CoilState[1] & 0x08)
|
||||
{
|
||||
// laser_handle.state = LASER_OPEN_STATUS;
|
||||
CoilState[1] &= 0xF7;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
#include <stdio.h>
|
||||
#include "laser.h"
|
||||
extern size_t strlen(const char *);
|
||||
// extern uart_t *uarts[UART_NUM_MAX];
|
||||
//extern uart_t *uarts[UART_NUM_MAX];
|
||||
|
||||
const char FRAME_HEAD_RSP = '$';
|
||||
const char FRAME_TAIL = '\r';
|
||||
|
|
@ -27,7 +27,7 @@ const char REQ_DISTANCE_READ[] = "RMD"; // 测定值读出
|
|||
const char REQ_ZERO_STATUS[] = "RZS"; // 调零状态查询
|
||||
const char REQ_ZERO_STATUS_WRITE[] = "WZS"; // 调零状态设置
|
||||
|
||||
// static uart_t *handle;
|
||||
//static uart_t *handle;
|
||||
static char request_buf[RS485_REC_LEN];
|
||||
static uint8_t uart_buf[RS485_REC_LEN];
|
||||
static uint8_t *response_ptr;
|
||||
|
|
@ -36,7 +36,7 @@ laser_t laser_handle;
|
|||
uint8_t res;
|
||||
int rx_count = 0;
|
||||
|
||||
// static void laser_rx_cb(uint8_t uart_index, uint8_t *data, uint16_t len);
|
||||
//static void laser_rx_cb(uint8_t uart_index, uint8_t *data, uint16_t len);
|
||||
|
||||
static void laser_send(uint8_t *data, uint8_t length)
|
||||
{
|
||||
|
|
@ -152,8 +152,8 @@ static void command_open_status_rsp(void)
|
|||
response_ptr_offset++; // 跳过符号
|
||||
osel_memcpy(status, response_ptr + response_ptr_offset, 5);
|
||||
const char *cs = FRAME_TRUE;
|
||||
const char *o_status = (char *)status;
|
||||
if (!strncmp(o_status, (cs + 1), 5))
|
||||
const char *o_status = (char *)status;
|
||||
if(!strncmp(o_status, (cs + 1), 5))
|
||||
{
|
||||
laser_handle.open_status = true;
|
||||
if (laser_handle.state != LASER_READY)
|
||||
|
|
@ -186,7 +186,7 @@ static void command_open_status_write_rsp(void)
|
|||
static float to_float(uint8_t *arr)
|
||||
{
|
||||
int num = arr[0] * 1000000 + arr[1] * 100000 + arr[2] * 10000 + arr[3] * 1000 + arr[4] * 100 + arr[5] * 10 + arr[6]; // 数字部分的值
|
||||
float result = (float)num / PRECISION; // 将数字部分和小数部分合并成浮点数
|
||||
float result = (float)num / PRECISION; // 将数字部分和小数部分合并成浮点数
|
||||
|
||||
return result;
|
||||
}
|
||||
|
|
@ -205,7 +205,7 @@ static void command_distance_read_rsp(void)
|
|||
f = -f;
|
||||
}
|
||||
|
||||
if ((laser_handle.state != LASER_READY) && (laser_handle.state != LASER_ZERO_STATUS_CLOSE))
|
||||
if (laser_handle.state != LASER_READY)
|
||||
{
|
||||
laser_handle.state = LASER_DISTANCE;
|
||||
}
|
||||
|
|
@ -218,8 +218,8 @@ static void command_zero_status_rsp(void)
|
|||
response_ptr_offset++; // 跳过符号
|
||||
osel_memcpy(status, response_ptr + response_ptr_offset, 5);
|
||||
const char *cs = FRAME_TRUE;
|
||||
const char *z_status = (char *)status;
|
||||
if (!strncmp(z_status, (cs + 1), 5))
|
||||
const char *z_status = (char *)status;
|
||||
if(!strncmp(z_status, (cs + 1), 5))
|
||||
{
|
||||
laser_handle.zero_status = true;
|
||||
}
|
||||
|
|
@ -255,12 +255,12 @@ static void _laser_ready(void)
|
|||
{
|
||||
laser_handle.state = LASER_READY;
|
||||
}
|
||||
// REGISTER_CMD(WC, command_device_connect_rsp, "");
|
||||
// REGISTER_CMD(RLR, command_open_status_rsp, "");
|
||||
// REGISTER_CMD(WLR, command_open_status_write_rsp, "");
|
||||
// REGISTER_CMD(RMD, command_distance_read_rsp, "");
|
||||
// REGISTER_CMD(RZS, command_zero_status_rsp, "");
|
||||
// REGISTER_CMD(WZS, command_zero_status_write_rsp, "");
|
||||
//REGISTER_CMD(WC, command_device_connect_rsp, "");
|
||||
//REGISTER_CMD(RLR, command_open_status_rsp, "");
|
||||
//REGISTER_CMD(WLR, command_open_status_write_rsp, "");
|
||||
//REGISTER_CMD(RMD, command_distance_read_rsp, "");
|
||||
//REGISTER_CMD(RZS, command_zero_status_rsp, "");
|
||||
//REGISTER_CMD(WZS, command_zero_status_write_rsp, "");
|
||||
|
||||
laser_event_t laser_event[] = {
|
||||
{LASER_IDEL, command_device_connect_req},
|
||||
|
|
@ -274,18 +274,18 @@ laser_event_t laser_event[] = {
|
|||
void uart2_init(void)
|
||||
{
|
||||
/*接收配置*/
|
||||
// 使能空闲中断
|
||||
//使能空闲中断
|
||||
LL_USART_EnableIT_IDLE(USART2);
|
||||
|
||||
/*发送配置*/
|
||||
// 设置外设地址,因为这个是DMA串口发送,
|
||||
LL_DMA_SetPeriphAddress(DMA1, LL_DMA_STREAM_6, (uint32_t)&USART2->DR);
|
||||
// 使能DMA串口发送
|
||||
//设置外设地址,因为这个是DMA串口发送,
|
||||
LL_DMA_SetPeriphAddress(DMA1,LL_DMA_STREAM_6,(uint32_t)&USART2->DR);
|
||||
//使能DMA串口发送
|
||||
LL_USART_EnableDMAReq_TX(USART2);
|
||||
// 使能DMA2发送完成中断
|
||||
LL_DMA_EnableIT_TC(DMA1, LL_DMA_STREAM_6);
|
||||
//使能DMA2发送完成中断
|
||||
LL_DMA_EnableIT_TC(DMA1,LL_DMA_STREAM_6);
|
||||
|
||||
LL_USART_EnableIT_RXNE(USART2); // 开启接收中断
|
||||
LL_USART_EnableIT_RXNE(USART2); //开启接收中断
|
||||
}
|
||||
|
||||
void laser_init(send_data_cb_t cb)
|
||||
|
|
@ -300,90 +300,94 @@ void laser_init(send_data_cb_t cb)
|
|||
laser_handle.command_zero_status_write_req = command_zero_status_write_req;
|
||||
}
|
||||
|
||||
// 串口接收中断回调函数,激光
|
||||
void laser_rx_cb(void) // uint8_t uart_index, uint8_t *data, uint16_t len
|
||||
//串口接收中断回调函数,激光
|
||||
void laser_rx_cb(void)//uint8_t uart_index, uint8_t *data, uint16_t len
|
||||
{
|
||||
|
||||
// 空闲中断,表明接收到了1帧所有的数据
|
||||
if (LL_USART_IsActiveFlag_IDLE(USART2))
|
||||
// 空闲中断,表明接收到了1帧所有的数据
|
||||
if(LL_USART_IsActiveFlag_IDLE(USART2))
|
||||
{
|
||||
// 清除空闲中断
|
||||
//清除空闲中断
|
||||
LL_USART_ClearFlag_IDLE(USART2);
|
||||
|
||||
laser_data_process(uart_buf, rx_count);
|
||||
rx_count = 0;
|
||||
laser_data_process(uart_buf,rx_count);
|
||||
rx_count = 0;
|
||||
|
||||
}
|
||||
|
||||
// Rx非空中断,表明接收到了一个字节
|
||||
// Rx非空中断,表明接收到了一个字节
|
||||
// 读取Rx可自动清除中断标志位
|
||||
if (LL_USART_IsActiveFlag_RXNE(USART2))
|
||||
{
|
||||
if(LL_USART_IsActiveFlag_RXNE(USART2))
|
||||
{
|
||||
// 如果数组长度大于设置的data最大长度,直接停止接收
|
||||
if (rx_count > 50)
|
||||
rx_count = 0; // wait for the next data
|
||||
uart_buf[rx_count] = LL_USART_ReceiveData8(USART2);
|
||||
rx_count++;
|
||||
if(rx_count > 50)
|
||||
rx_count = 0; // wait for the next data
|
||||
uart_buf[rx_count] = LL_USART_ReceiveData8(USART2);
|
||||
rx_count ++;
|
||||
}
|
||||
}
|
||||
|
||||
// 根据cmd指令执行相应程序
|
||||
|
||||
//根据cmd指令执行相应程序
|
||||
void cmd_parsing(char *str)
|
||||
{
|
||||
// if(strcmp(str, "WC") == 0)
|
||||
if (!strncmp(str, REQ_DEVICE_ONLINE, 2))
|
||||
command_device_connect_rsp();
|
||||
else if (!strncmp(str, REQ_OPEN_STATUS, 3))
|
||||
command_open_status_rsp();
|
||||
else if (!strncmp(str, REQ_OPEN_STATUS_WRITE, 3))
|
||||
command_open_status_write_rsp();
|
||||
else if (!strncmp(str, REQ_DISTANCE_READ, 3))
|
||||
command_distance_read_rsp();
|
||||
else if (!strncmp(str, REQ_ZERO_STATUS, 3))
|
||||
command_zero_status_rsp();
|
||||
else if (!strncmp(str, REQ_ZERO_STATUS_WRITE, 3))
|
||||
command_zero_status_write_rsp();
|
||||
//if(strcmp(str, "WC") == 0)
|
||||
if(!strncmp(str, REQ_DEVICE_ONLINE,2))
|
||||
command_device_connect_rsp();
|
||||
else if(!strncmp(str, REQ_OPEN_STATUS,3))
|
||||
command_open_status_rsp();
|
||||
else if(!strncmp(str, REQ_OPEN_STATUS_WRITE,3))
|
||||
command_open_status_write_rsp();
|
||||
else if(!strncmp(str, REQ_DISTANCE_READ,3))
|
||||
command_distance_read_rsp();
|
||||
else if(!strncmp(str, REQ_ZERO_STATUS,3))
|
||||
command_zero_status_rsp();
|
||||
else if(!strncmp(str, REQ_ZERO_STATUS_WRITE,3))
|
||||
command_zero_status_write_rsp();
|
||||
|
||||
}
|
||||
|
||||
// 激光传感器任务流程
|
||||
//激光传感器任务流程
|
||||
void laser_task(void)
|
||||
{
|
||||
// command_zero_status_open_req();
|
||||
if (laser_handle.state != LASER_READY)
|
||||
{
|
||||
if (it_50ms_falg == 1)
|
||||
//command_zero_status_open_req();
|
||||
if (laser_handle.state != LASER_READY)
|
||||
{
|
||||
if (laser_handle.state == LASER_IDEL)
|
||||
command_device_connect_req();
|
||||
else if (laser_handle.state == LASER_CONNECT)
|
||||
command_open_status_req();
|
||||
else if (laser_handle.state == LASER_OPEN_STATUS)
|
||||
command_zero_status_close_req();
|
||||
else if (laser_handle.state == LASER_ZERO_STATUS_CLOSE)
|
||||
command_zero_status_open_req();
|
||||
else if (laser_handle.state == LASER_ZERO_STATUS_OPEN)
|
||||
command_distance_read_req();
|
||||
else if (laser_handle.state == LASER_DISTANCE)
|
||||
_laser_ready();
|
||||
it_50ms_falg = 0;
|
||||
if(it_500ms_falg == 1)
|
||||
{
|
||||
if(laser_handle.state == LASER_IDEL)
|
||||
command_device_connect_req();
|
||||
else if(laser_handle.state == LASER_CONNECT)
|
||||
command_open_status_req();
|
||||
else if(laser_handle.state == LASER_OPEN_STATUS)
|
||||
command_zero_status_close_req();
|
||||
else if(laser_handle.state == LASER_ZERO_STATUS_CLOSE)
|
||||
command_zero_status_open_req();
|
||||
else if(laser_handle.state == LASER_ZERO_STATUS_OPEN)
|
||||
command_distance_read_req();
|
||||
else if(laser_handle.state == LASER_DISTANCE)
|
||||
_laser_ready();
|
||||
it_500ms_falg = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (it_10ms_falg == 1)
|
||||
{
|
||||
laser_handle.command_distance_read_req();
|
||||
if (laser_handle.distance >= 0)
|
||||
{
|
||||
InputReg[4] = laser_handle.distance;
|
||||
}
|
||||
else
|
||||
{
|
||||
int laser_num = -laser_handle.distance;
|
||||
|
||||
InputReg[4] = (uint16_t)((0xFFFF - laser_num) + 1);
|
||||
}
|
||||
it_10ms_falg = 0;
|
||||
// laser_handle.connect = true;
|
||||
}
|
||||
}
|
||||
// else
|
||||
// {
|
||||
// if(it_10ms_falg == 1)
|
||||
// {
|
||||
// laser_handle.command_distance_read_req();
|
||||
// if(laser_handle.distance >= 0)
|
||||
// {
|
||||
// InputReg[4] = laser_handle.distance;
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// int laser_num = -laser_handle.distance;
|
||||
//
|
||||
// InputReg[4] = (uint16_t)((0xFFFF - laser_num) + 1);
|
||||
// }
|
||||
// it_10ms_falg = 0;
|
||||
// //laser_handle.connect = true;
|
||||
// }
|
||||
// }
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -72,7 +72,7 @@ void sys_init()
|
|||
adc1_start_dma();
|
||||
laser_init(usart2_laser_send);
|
||||
io_output();
|
||||
encode_init();
|
||||
// encode_init();
|
||||
}
|
||||
|
||||
char step_cnt = 0;
|
||||
|
|
@ -85,8 +85,6 @@ uint16_t dis_temp = 0;//DI
|
|||
int flow_state = 0;
|
||||
int OVER_TIMES = 65535;
|
||||
|
||||
int encode_cnt = 0;
|
||||
|
||||
uint16_t press_array1[10] = {0};
|
||||
uint16_t press_array2[10] = {0};
|
||||
uint16_t press_array3[10] = {0};
|
||||
|
|
@ -97,10 +95,8 @@ int a1 = 0,a2 = 0,a3 = 0;
|
|||
|
||||
void sys_task(void)
|
||||
{
|
||||
io_output();//实时更新IO输出状态
|
||||
//ao1_set(8);
|
||||
//AO(0-25mA)输出,每当寄存器内数值更新时输出电流同步更新
|
||||
|
||||
if(!(AO1_data == (float)(HoldReg[0]) / 1000))
|
||||
{
|
||||
AO1_data = (float)(HoldReg[0]) / 1000;
|
||||
|
|
@ -128,6 +124,8 @@ void sys_task(void)
|
|||
|
||||
get_adc_value();//得到温度和AO反馈值
|
||||
|
||||
io_output();//实时更新IO输出状态
|
||||
|
||||
//DI数据存入离散量寄存器,气泡检测
|
||||
bub_flag = DisState[0] & 0x04;//获取气泡检测状态
|
||||
dis_temp =_74hc165_read_byte();
|
||||
|
|
@ -140,7 +138,7 @@ void sys_task(void)
|
|||
HoldReg[2] = 65500;
|
||||
}
|
||||
|
||||
InputReg[20] = LL_TIM_GetCounter(TIM4);
|
||||
|
||||
}
|
||||
/* USER CODE END 0 */
|
||||
|
||||
|
|
|
|||
|
|
@ -1,20 +1,20 @@
|
|||
/* USER CODE BEGIN Header */
|
||||
/**
|
||||
******************************************************************************
|
||||
* @file stm32f4xx_it.c
|
||||
* @brief Interrupt Service Routines.
|
||||
******************************************************************************
|
||||
* @attention
|
||||
*
|
||||
* Copyright (c) 2024 STMicroelectronics.
|
||||
* All rights reserved.
|
||||
*
|
||||
* This software is licensed under terms that can be found in the LICENSE file
|
||||
* in the root directory of this software component.
|
||||
* If no LICENSE file comes with this software, it is provided AS-IS.
|
||||
*
|
||||
******************************************************************************
|
||||
*/
|
||||
******************************************************************************
|
||||
* @file stm32f4xx_it.c
|
||||
* @brief Interrupt Service Routines.
|
||||
******************************************************************************
|
||||
* @attention
|
||||
*
|
||||
* Copyright (c) 2024 STMicroelectronics.
|
||||
* All rights reserved.
|
||||
*
|
||||
* This software is licensed under terms that can be found in the LICENSE file
|
||||
* in the root directory of this software component.
|
||||
* If no LICENSE file comes with this software, it is provided AS-IS.
|
||||
*
|
||||
******************************************************************************
|
||||
*/
|
||||
/* USER CODE END Header */
|
||||
|
||||
/* Includes ------------------------------------------------------------------*/
|
||||
|
|
@ -79,23 +79,23 @@ int it_1000ms_cnt = 0;
|
|||
/* Cortex-M4 Processor Interruption and Exception Handlers */
|
||||
/******************************************************************************/
|
||||
/**
|
||||
* @brief This function handles Non maskable interrupt.
|
||||
*/
|
||||
* @brief This function handles Non maskable interrupt.
|
||||
*/
|
||||
void NMI_Handler(void)
|
||||
{
|
||||
/* USER CODE BEGIN NonMaskableInt_IRQn 0 */
|
||||
|
||||
/* USER CODE END NonMaskableInt_IRQn 0 */
|
||||
/* USER CODE BEGIN NonMaskableInt_IRQn 1 */
|
||||
while (1)
|
||||
while (1)
|
||||
{
|
||||
}
|
||||
/* USER CODE END NonMaskableInt_IRQn 1 */
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles Hard fault interrupt.
|
||||
*/
|
||||
* @brief This function handles Hard fault interrupt.
|
||||
*/
|
||||
void HardFault_Handler(void)
|
||||
{
|
||||
/* USER CODE BEGIN HardFault_IRQn 0 */
|
||||
|
|
@ -109,8 +109,8 @@ void HardFault_Handler(void)
|
|||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles Memory management fault.
|
||||
*/
|
||||
* @brief This function handles Memory management fault.
|
||||
*/
|
||||
void MemManage_Handler(void)
|
||||
{
|
||||
/* USER CODE BEGIN MemoryManagement_IRQn 0 */
|
||||
|
|
@ -124,8 +124,8 @@ void MemManage_Handler(void)
|
|||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles Pre-fetch fault, memory access fault.
|
||||
*/
|
||||
* @brief This function handles Pre-fetch fault, memory access fault.
|
||||
*/
|
||||
void BusFault_Handler(void)
|
||||
{
|
||||
/* USER CODE BEGIN BusFault_IRQn 0 */
|
||||
|
|
@ -139,8 +139,8 @@ void BusFault_Handler(void)
|
|||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles Undefined instruction or illegal state.
|
||||
*/
|
||||
* @brief This function handles Undefined instruction or illegal state.
|
||||
*/
|
||||
void UsageFault_Handler(void)
|
||||
{
|
||||
/* USER CODE BEGIN UsageFault_IRQn 0 */
|
||||
|
|
@ -154,8 +154,8 @@ void UsageFault_Handler(void)
|
|||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles System service call via SWI instruction.
|
||||
*/
|
||||
* @brief This function handles System service call via SWI instruction.
|
||||
*/
|
||||
void SVC_Handler(void)
|
||||
{
|
||||
/* USER CODE BEGIN SVCall_IRQn 0 */
|
||||
|
|
@ -167,8 +167,8 @@ void SVC_Handler(void)
|
|||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles Debug monitor.
|
||||
*/
|
||||
* @brief This function handles Debug monitor.
|
||||
*/
|
||||
void DebugMon_Handler(void)
|
||||
{
|
||||
/* USER CODE BEGIN DebugMonitor_IRQn 0 */
|
||||
|
|
@ -180,8 +180,8 @@ void DebugMon_Handler(void)
|
|||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles Pendable request for system service.
|
||||
*/
|
||||
* @brief This function handles Pendable request for system service.
|
||||
*/
|
||||
void PendSV_Handler(void)
|
||||
{
|
||||
/* USER CODE BEGIN PendSV_IRQn 0 */
|
||||
|
|
@ -193,8 +193,8 @@ void PendSV_Handler(void)
|
|||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles System tick timer.
|
||||
*/
|
||||
* @brief This function handles System tick timer.
|
||||
*/
|
||||
void SysTick_Handler(void)
|
||||
{
|
||||
/* USER CODE BEGIN SysTick_IRQn 0 */
|
||||
|
|
@ -214,18 +214,18 @@ void SysTick_Handler(void)
|
|||
/******************************************************************************/
|
||||
|
||||
/**
|
||||
* @brief This function handles DMA1 stream3 global interrupt.
|
||||
*/
|
||||
* @brief This function handles DMA1 stream3 global interrupt.
|
||||
*/
|
||||
void DMA1_Stream3_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN DMA1_Stream3_IRQn 0 */
|
||||
if (LL_DMA_IsActiveFlag_TC3(DMA1))
|
||||
{
|
||||
// 清除Stream3 TC中断
|
||||
LL_DMA_ClearFlag_TC3(DMA1);
|
||||
// 关闭DMA1 Stream3
|
||||
LL_DMA_DisableStream(DMA1, LL_DMA_STREAM_3);
|
||||
}
|
||||
if(LL_DMA_IsActiveFlag_TC3(DMA1))
|
||||
{
|
||||
//清除Stream3 TC中断
|
||||
LL_DMA_ClearFlag_TC3(DMA1);
|
||||
//关闭DMA1 Stream3
|
||||
LL_DMA_DisableStream(DMA1,LL_DMA_STREAM_3);
|
||||
}
|
||||
/* USER CODE END DMA1_Stream3_IRQn 0 */
|
||||
|
||||
/* USER CODE BEGIN DMA1_Stream3_IRQn 1 */
|
||||
|
|
@ -234,16 +234,16 @@ void DMA1_Stream3_IRQHandler(void)
|
|||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles DMA1 stream6 global interrupt.
|
||||
*/
|
||||
* @brief This function handles DMA1 stream6 global interrupt.
|
||||
*/
|
||||
void DMA1_Stream6_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN DMA1_Stream6_IRQn 0 */
|
||||
if (LL_DMA_IsActiveFlag_TC6(DMA1))
|
||||
{
|
||||
LL_DMA_ClearFlag_TC6(DMA1); // 清除TC中断
|
||||
LL_DMA_DisableStream(DMA1, LL_DMA_STREAM_6); // 关闭DMA
|
||||
}
|
||||
if(LL_DMA_IsActiveFlag_TC6(DMA1))
|
||||
{
|
||||
LL_DMA_ClearFlag_TC6(DMA1);//清除TC中断
|
||||
LL_DMA_DisableStream(DMA1,LL_DMA_STREAM_6); //关闭DMA
|
||||
}
|
||||
/* USER CODE END DMA1_Stream6_IRQn 0 */
|
||||
|
||||
/* USER CODE BEGIN DMA1_Stream6_IRQn 1 */
|
||||
|
|
@ -252,85 +252,85 @@ void DMA1_Stream6_IRQHandler(void)
|
|||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles TIM3 global interrupt.
|
||||
*/
|
||||
* @brief This function handles TIM3 global interrupt.
|
||||
*/
|
||||
void TIM3_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN TIM3_IRQn 0 */
|
||||
if (LL_TIM_IsActiveFlag_UPDATE(TIM3) == SET)
|
||||
{
|
||||
it_5ms_cnt++;
|
||||
if (it_5ms_cnt > 4)
|
||||
{
|
||||
it_5ms_falg = 1;
|
||||
it_5ms_cnt = 0;
|
||||
}
|
||||
it_10ms_cnt++;
|
||||
if (it_10ms_cnt > 9)
|
||||
{
|
||||
// if (laser_handle.state == LASER_READY)
|
||||
//{
|
||||
// laser_handle.command_distance_read_req();
|
||||
// if(laser_handle.distance >= 0)
|
||||
//{
|
||||
// InputReg[4] = laser_handle.distance;
|
||||
//}
|
||||
// else
|
||||
//{
|
||||
// int laser_num = -laser_handle.distance;
|
||||
if(LL_TIM_IsActiveFlag_UPDATE(TIM3) == SET)
|
||||
{
|
||||
it_5ms_cnt++;
|
||||
if(it_5ms_cnt > 4)
|
||||
{
|
||||
it_5ms_falg = 1;
|
||||
it_5ms_cnt = 0;
|
||||
}
|
||||
it_10ms_cnt++;
|
||||
if(it_10ms_cnt > 9)
|
||||
{
|
||||
if (laser_handle.state == LASER_READY)
|
||||
{
|
||||
laser_handle.command_distance_read_req();
|
||||
if(laser_handle.distance >= 0)
|
||||
{
|
||||
InputReg[4] = laser_handle.distance;
|
||||
}
|
||||
else
|
||||
{
|
||||
int laser_num = -laser_handle.distance;
|
||||
|
||||
// InputReg[4] = (uint16_t)((0xFFFF - laser_num) + 1);
|
||||
//}
|
||||
//}
|
||||
it_10ms_falg = 1;
|
||||
it_10ms_cnt = 0;
|
||||
}
|
||||
it_25ms_cnt++;
|
||||
if (it_25ms_cnt > 24)
|
||||
{
|
||||
it_25ms_falg = 1;
|
||||
it_25ms_cnt = 0;
|
||||
}
|
||||
it_50ms_cnt++;
|
||||
if (it_50ms_cnt > 49)
|
||||
{
|
||||
it_50ms_falg = 1;
|
||||
it_50ms_cnt = 0;
|
||||
}
|
||||
it_100ms_cnt++;
|
||||
if (it_100ms_cnt > 99)
|
||||
{
|
||||
it_100ms_cnt = 0;
|
||||
if (flow_state == 6)
|
||||
{
|
||||
mf_read();
|
||||
}
|
||||
else
|
||||
{
|
||||
mf_clear();
|
||||
}
|
||||
}
|
||||
it_300ms_cnt++;
|
||||
if (it_300ms_cnt > 299)
|
||||
{
|
||||
it_300ms_falg = 1;
|
||||
it_300ms_cnt = 0;
|
||||
}
|
||||
it_500ms_cnt++;
|
||||
if (it_500ms_cnt > 499)
|
||||
{
|
||||
it_500ms_falg = 1;
|
||||
it_500ms_cnt = 0;
|
||||
}
|
||||
it_1000ms_cnt++;
|
||||
if (it_1000ms_cnt > 999)
|
||||
{
|
||||
it_1000ms_falg = 1;
|
||||
it_1000ms_cnt = 0;
|
||||
}
|
||||
InputReg[4] = (uint16_t)((0xFFFF - laser_num) + 1);
|
||||
}
|
||||
}
|
||||
//it_10ms_falg = 1;
|
||||
it_10ms_cnt = 0;
|
||||
}
|
||||
it_25ms_cnt++;
|
||||
if(it_25ms_cnt > 24)
|
||||
{
|
||||
it_25ms_falg = 1;
|
||||
it_25ms_cnt = 0;
|
||||
}
|
||||
it_50ms_cnt++;
|
||||
if(it_50ms_cnt > 49)
|
||||
{
|
||||
it_50ms_falg = 1;
|
||||
it_50ms_cnt = 0;
|
||||
}
|
||||
it_100ms_cnt++;
|
||||
if(it_100ms_cnt > 99)
|
||||
{
|
||||
it_100ms_cnt = 0;
|
||||
if(flow_state == 6)
|
||||
{
|
||||
mf_read();
|
||||
}
|
||||
else
|
||||
{
|
||||
mf_clear();
|
||||
}
|
||||
}
|
||||
it_300ms_cnt++;
|
||||
if(it_300ms_cnt > 299)
|
||||
{
|
||||
it_300ms_falg = 1;
|
||||
it_300ms_cnt = 0;
|
||||
}
|
||||
it_500ms_cnt++;
|
||||
if(it_500ms_cnt > 499)
|
||||
{
|
||||
it_500ms_falg = 1;
|
||||
it_500ms_cnt = 0;
|
||||
}
|
||||
it_1000ms_cnt++;
|
||||
if(it_1000ms_cnt > 999)
|
||||
{
|
||||
it_1000ms_falg = 1;
|
||||
it_1000ms_cnt = 0;
|
||||
}
|
||||
|
||||
LL_TIM_ClearFlag_UPDATE(TIM3);
|
||||
}
|
||||
LL_TIM_ClearFlag_UPDATE(TIM3);
|
||||
}
|
||||
|
||||
/* USER CODE END TIM3_IRQn 0 */
|
||||
/* USER CODE BEGIN TIM3_IRQn 1 */
|
||||
|
|
@ -339,8 +339,8 @@ void TIM3_IRQHandler(void)
|
|||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles USART1 global interrupt.
|
||||
*/
|
||||
* @brief This function handles USART1 global interrupt.
|
||||
*/
|
||||
void USART1_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN USART1_IRQn 0 */
|
||||
|
|
@ -352,12 +352,12 @@ void USART1_IRQHandler(void)
|
|||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles USART2 global interrupt.
|
||||
*/
|
||||
* @brief This function handles USART2 global interrupt.
|
||||
*/
|
||||
void USART2_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN USART2_IRQn 0 */
|
||||
laser_rx_cb();
|
||||
laser_rx_cb();
|
||||
|
||||
/* USER CODE END USART2_IRQn 0 */
|
||||
/* USER CODE BEGIN USART2_IRQn 1 */
|
||||
|
|
@ -366,12 +366,12 @@ void USART2_IRQHandler(void)
|
|||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles USART3 global interrupt.
|
||||
*/
|
||||
* @brief This function handles USART3 global interrupt.
|
||||
*/
|
||||
void USART3_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN USART3_IRQn 0 */
|
||||
modbus_callback();
|
||||
modbus_callback();
|
||||
/* USER CODE END USART3_IRQn 0 */
|
||||
/* USER CODE BEGIN USART3_IRQn 1 */
|
||||
|
||||
|
|
@ -379,12 +379,12 @@ void USART3_IRQHandler(void)
|
|||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles TIM7 global interrupt.
|
||||
*/
|
||||
* @brief This function handles TIM7 global interrupt.
|
||||
*/
|
||||
void TIM7_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN TIM7_IRQn 0 */
|
||||
modbus_tim_callback();
|
||||
modbus_tim_callback();
|
||||
/* USER CODE END TIM7_IRQn 0 */
|
||||
/* USER CODE BEGIN TIM7_IRQn 1 */
|
||||
|
||||
|
|
@ -392,29 +392,29 @@ void TIM7_IRQHandler(void)
|
|||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles DMA2 stream0 global interrupt.
|
||||
*/
|
||||
* @brief This function handles DMA2 stream0 global interrupt.
|
||||
*/
|
||||
void DMA2_Stream0_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN DMA2_Stream0_IRQn 0 */
|
||||
if (LL_DMA_IsActiveFlag_TC0(DMA2))
|
||||
{
|
||||
ADC_TC_Flag = 1;
|
||||
}
|
||||
if(LL_DMA_IsActiveFlag_TC0(DMA2))
|
||||
{
|
||||
ADC_TC_Flag = 1;
|
||||
}
|
||||
/* USER CODE END DMA2_Stream0_IRQn 0 */
|
||||
|
||||
/* USER CODE BEGIN DMA2_Stream0_IRQn 1 */
|
||||
LL_DMA_ClearFlag_TC0(DMA2);
|
||||
if (LL_DMA_IsActiveFlag_TE0(DMA2) != 0)
|
||||
{
|
||||
LL_DMA_ClearFlag_TE0(DMA2);
|
||||
}
|
||||
LL_DMA_ClearFlag_TC0(DMA2);
|
||||
if (LL_DMA_IsActiveFlag_TE0(DMA2) != 0)
|
||||
{
|
||||
LL_DMA_ClearFlag_TE0(DMA2);
|
||||
}
|
||||
/* USER CODE END DMA2_Stream0_IRQn 1 */
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles DMA2 stream1 global interrupt.
|
||||
*/
|
||||
* @brief This function handles DMA2 stream1 global interrupt.
|
||||
*/
|
||||
void DMA2_Stream1_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN DMA2_Stream1_IRQn 0 */
|
||||
|
|
@ -427,18 +427,18 @@ void DMA2_Stream1_IRQHandler(void)
|
|||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles DMA2 stream6 global interrupt.
|
||||
*/
|
||||
* @brief This function handles DMA2 stream6 global interrupt.
|
||||
*/
|
||||
void DMA2_Stream6_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN DMA2_Stream6_IRQn 0 */
|
||||
if (LL_DMA_IsActiveFlag_TC6(DMA2))
|
||||
{
|
||||
// 清除Stream3 TC中断
|
||||
LL_DMA_ClearFlag_TC6(DMA2);
|
||||
// 关闭DMA1 Stream3
|
||||
LL_DMA_DisableStream(DMA2, LL_DMA_STREAM_6);
|
||||
}
|
||||
if(LL_DMA_IsActiveFlag_TC6(DMA2))
|
||||
{
|
||||
//清除Stream3 TC中断
|
||||
LL_DMA_ClearFlag_TC6(DMA2);
|
||||
//关闭DMA1 Stream3
|
||||
LL_DMA_DisableStream(DMA2,LL_DMA_STREAM_6);
|
||||
}
|
||||
/* USER CODE END DMA2_Stream6_IRQn 0 */
|
||||
|
||||
/* USER CODE BEGIN DMA2_Stream6_IRQn 1 */
|
||||
|
|
@ -447,12 +447,12 @@ void DMA2_Stream6_IRQHandler(void)
|
|||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles USART6 global interrupt.
|
||||
*/
|
||||
* @brief This function handles USART6 global interrupt.
|
||||
*/
|
||||
void USART6_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN USART6_IRQn 0 */
|
||||
mf_rx_cb();
|
||||
mf_rx_cb();
|
||||
/* USER CODE END USART6_IRQn 0 */
|
||||
/* USER CODE BEGIN USART6_IRQn 1 */
|
||||
|
||||
|
|
|
|||
|
|
@ -79,18 +79,18 @@ void MX_TIM4_Init(void)
|
|||
PB7 ------> TIM4_CH2
|
||||
PB8 ------> TIM4_CH3
|
||||
*/
|
||||
GPIO_InitStruct.Pin = ENCODER_A_Pin|ENCODER_B_Pin;//|LL_GPIO_PIN_8;
|
||||
GPIO_InitStruct.Pin = ENCODER_A_Pin|ENCODER_B_Pin|LL_GPIO_PIN_8;
|
||||
GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE;
|
||||
GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_LOW;
|
||||
GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL;
|
||||
GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;//LL_GPIO_PULL_NO;
|
||||
GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
|
||||
GPIO_InitStruct.Alternate = LL_GPIO_AF_2;
|
||||
LL_GPIO_Init(GPIOB, &GPIO_InitStruct);
|
||||
|
||||
/* USER CODE BEGIN TIM4_Init 1 */
|
||||
|
||||
/* USER CODE END TIM4_Init 1 */
|
||||
TIM_InitStruct.Prescaler = 1;
|
||||
TIM_InitStruct.Prescaler = 0;
|
||||
TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP;
|
||||
TIM_InitStruct.Autoreload = 65535;
|
||||
TIM_InitStruct.ClockDivision = LL_TIM_CLOCKDIVISION_DIV1;
|
||||
|
|
@ -99,18 +99,18 @@ void MX_TIM4_Init(void)
|
|||
LL_TIM_SetEncoderMode(TIM4, LL_TIM_ENCODERMODE_X4_TI12);
|
||||
LL_TIM_IC_SetActiveInput(TIM4, LL_TIM_CHANNEL_CH1, LL_TIM_ACTIVEINPUT_DIRECTTI);
|
||||
LL_TIM_IC_SetPrescaler(TIM4, LL_TIM_CHANNEL_CH1, LL_TIM_ICPSC_DIV1);
|
||||
LL_TIM_IC_SetFilter(TIM4, LL_TIM_CHANNEL_CH1, LL_TIM_IC_FILTER_FDIV1_N8);
|
||||
LL_TIM_IC_SetFilter(TIM4, LL_TIM_CHANNEL_CH1, LL_TIM_IC_FILTER_FDIV1);
|
||||
LL_TIM_IC_SetPolarity(TIM4, LL_TIM_CHANNEL_CH1, LL_TIM_IC_POLARITY_RISING);
|
||||
LL_TIM_IC_SetActiveInput(TIM4, LL_TIM_CHANNEL_CH2, LL_TIM_ACTIVEINPUT_DIRECTTI);
|
||||
LL_TIM_IC_SetPrescaler(TIM4, LL_TIM_CHANNEL_CH2, LL_TIM_ICPSC_DIV1);
|
||||
LL_TIM_IC_SetFilter(TIM4, LL_TIM_CHANNEL_CH2, LL_TIM_IC_FILTER_FDIV1_N8);
|
||||
LL_TIM_IC_SetFilter(TIM4, LL_TIM_CHANNEL_CH2, LL_TIM_IC_FILTER_FDIV1);
|
||||
LL_TIM_IC_SetPolarity(TIM4, LL_TIM_CHANNEL_CH2, LL_TIM_IC_POLARITY_RISING);
|
||||
LL_TIM_SetTriggerOutput(TIM4, LL_TIM_TRGO_RESET);
|
||||
LL_TIM_DisableMasterSlaveMode(TIM4);
|
||||
// LL_TIM_IC_SetActiveInput(TIM4, LL_TIM_CHANNEL_CH3, LL_TIM_ACTIVEINPUT_DIRECTTI);
|
||||
// LL_TIM_IC_SetPrescaler(TIM4, LL_TIM_CHANNEL_CH3, LL_TIM_ICPSC_DIV1);
|
||||
// LL_TIM_IC_SetFilter(TIM4, LL_TIM_CHANNEL_CH3, LL_TIM_IC_FILTER_FDIV1);
|
||||
// LL_TIM_IC_SetPolarity(TIM4, LL_TIM_CHANNEL_CH3, LL_TIM_IC_POLARITY_RISING);
|
||||
LL_TIM_IC_SetActiveInput(TIM4, LL_TIM_CHANNEL_CH3, LL_TIM_ACTIVEINPUT_DIRECTTI);
|
||||
LL_TIM_IC_SetPrescaler(TIM4, LL_TIM_CHANNEL_CH3, LL_TIM_ICPSC_DIV1);
|
||||
LL_TIM_IC_SetFilter(TIM4, LL_TIM_CHANNEL_CH3, LL_TIM_IC_FILTER_FDIV1);
|
||||
LL_TIM_IC_SetPolarity(TIM4, LL_TIM_CHANNEL_CH3, LL_TIM_IC_POLARITY_RISING);
|
||||
/* USER CODE BEGIN TIM4_Init 2 */
|
||||
|
||||
/* USER CODE END TIM4_Init 2 */
|
||||
|
|
@ -138,7 +138,7 @@ void MX_TIM7_Init(void)
|
|||
/* USER CODE END TIM7_Init 1 */
|
||||
TIM_InitStruct.Prescaler = 16799;
|
||||
TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP;
|
||||
TIM_InitStruct.Autoreload = 19;
|
||||
TIM_InitStruct.Autoreload = 9;
|
||||
LL_TIM_Init(TIM7, &TIM_InitStruct);
|
||||
LL_TIM_EnableARRPreload(TIM7);
|
||||
LL_TIM_SetTriggerOutput(TIM7, LL_TIM_TRGO_RESET);
|
||||
|
|
@ -155,11 +155,8 @@ void encode_init(void)
|
|||
{
|
||||
LL_TIM_CC_EnableChannel(TIM4,LL_TIM_CHANNEL_CH1);
|
||||
LL_TIM_CC_EnableChannel(TIM4,LL_TIM_CHANNEL_CH2);
|
||||
|
||||
LL_TIM_EnableCounter(TIM4);
|
||||
// LL_TIM_EnableIT_UPDATE(TIM4);//TIM6¸üÐÂʹÄÜ
|
||||
LL_TIM_SetCounter(TIM4,30000);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -389,7 +389,7 @@ void modbus_init(void)
|
|||
usart3.rx_size = 0;
|
||||
usart3.rx_flag = 0;
|
||||
|
||||
usart3.tx_buf = usart3_tx_buf; //发送数据变量初始化
|
||||
usart3.tx_buf = usart3_rx_buf; //发送数据变量初始化
|
||||
usart3.tx_buf_cnt = USART3_TXSIZE;
|
||||
usart3.tx_size = 0;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,9 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<component_viewer schemaVersion="0.1" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="Component_Viewer.xsd">
|
||||
|
||||
<component name="EventRecorderStub" version="1.0.0"/> <!--name and version of the component-->
|
||||
<events>
|
||||
</events>
|
||||
|
||||
</component_viewer>
|
||||
|
|
@ -10,7 +10,7 @@
|
|||
<aExt>*.s*; *.src; *.a*</aExt>
|
||||
<oExt>*.obj</oExt>
|
||||
<lExt>*.lib</lExt>
|
||||
<tExt>*.txt; *.h; *.inc; *.md</tExt>
|
||||
<tExt>*.txt; *.h; *.inc</tExt>
|
||||
<pExt>*.plm</pExt>
|
||||
<CppX>*.cpp</CppX>
|
||||
<nMigrate>0</nMigrate>
|
||||
|
|
@ -78,6 +78,68 @@
|
|||
<IsCurrentTarget>1</IsCurrentTarget>
|
||||
</OPTFL>
|
||||
<CpuCode>18</CpuCode>
|
||||
<Books>
|
||||
<Book>
|
||||
<Number>0</Number>
|
||||
<Title>MCBSTM32F400 Quick Start Guide (MCBSTM32F400)</Title>
|
||||
<Path>D:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.12.0\MDK/Boards/Keil/MCBSTM32F400/Documentation/MCBSTM32F400_QSG.pdf</Path>
|
||||
</Book>
|
||||
<Book>
|
||||
<Number>1</Number>
|
||||
<Title>User Manual (MCBSTM32F400)</Title>
|
||||
<Path>D:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.12.0\MDK/Boards/Keil/MCBSTM32F400/Documentation/mcbstm32f200.chm</Path>
|
||||
</Book>
|
||||
<Book>
|
||||
<Number>2</Number>
|
||||
<Title>Schematics V1.1 (MCBSTM32F400)</Title>
|
||||
<Path>D:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.12.0\MDK/Boards/Keil/MCBSTM32F400/Documentation/mcbstm32f400-schematics.pdf</Path>
|
||||
</Book>
|
||||
<Book>
|
||||
<Number>3</Number>
|
||||
<Title>Schematics V1.2 (MCBSTM32F400)</Title>
|
||||
<Path>D:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.12.0\MDK/Boards/Keil/MCBSTM32F400/Documentation/mcbstm32f400-schematics_V1.2.pdf</Path>
|
||||
</Book>
|
||||
<Book>
|
||||
<Number>4</Number>
|
||||
<Title>STM32F4-Discovery Quick Start Guide (STM32F4-Discovery)</Title>
|
||||
<Path>D:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.12.0\MDK/Boards/ST/STM32F4-Discovery/Documentation/32F4-DISCOVERY_QSG.pdf</Path>
|
||||
</Book>
|
||||
<Book>
|
||||
<Number>5</Number>
|
||||
<Title>Getting Started (STM32F4-Discovery)</Title>
|
||||
<Path>D:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.12.0\MDK/Boards/ST/STM32F4-Discovery/Documentation/DM00037368.pdf</Path>
|
||||
</Book>
|
||||
<Book>
|
||||
<Number>6</Number>
|
||||
<Title>User Manual (STM32F4-Discovery)</Title>
|
||||
<Path>D:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.12.0\MDK/Boards/ST/STM32F4-Discovery/Documentation/DM00039084.pdf</Path>
|
||||
</Book>
|
||||
<Book>
|
||||
<Number>7</Number>
|
||||
<Title>Bill of Materials (STM32F4-Discovery)</Title>
|
||||
<Path>D:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.12.0\MDK/Boards/ST/STM32F4-Discovery/Documentation/stm32f4discovery_bom.zip</Path>
|
||||
</Book>
|
||||
<Book>
|
||||
<Number>8</Number>
|
||||
<Title>Gerber Files (STM32F4-Discovery)</Title>
|
||||
<Path>D:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.12.0\MDK/Boards/ST/STM32F4-Discovery/Documentation/stm32f4discovery_gerber.zip</Path>
|
||||
</Book>
|
||||
<Book>
|
||||
<Number>9</Number>
|
||||
<Title>Schematics (STM32F4-Discovery)</Title>
|
||||
<Path>D:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.12.0\MDK/Boards/ST/STM32F4-Discovery/Documentation/stm32f4discovery_sch.zip</Path>
|
||||
</Book>
|
||||
<Book>
|
||||
<Number>10</Number>
|
||||
<Title>MCBSTM32F400 Evaluation Board Web Page (MCBSTM32F400)</Title>
|
||||
<Path>http://www.keil.com/mcbstm32f400/</Path>
|
||||
</Book>
|
||||
<Book>
|
||||
<Number>11</Number>
|
||||
<Title>STM32F4-Discovery Web Page (STM32F4-Discovery)</Title>
|
||||
<Path>http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1199/PF252419</Path>
|
||||
</Book>
|
||||
</Books>
|
||||
<DebugOpt>
|
||||
<uSim>0</uSim>
|
||||
<uTrg>1</uTrg>
|
||||
|
|
@ -100,10 +162,7 @@
|
|||
<tRSysVw>1</tRSysVw>
|
||||
<sRunDeb>0</sRunDeb>
|
||||
<sLrtime>0</sLrtime>
|
||||
<bEvRecOn>1</bEvRecOn>
|
||||
<bSchkAxf>0</bSchkAxf>
|
||||
<bTchkAxf>0</bTchkAxf>
|
||||
<nTsel>4</nTsel>
|
||||
<nTsel>6</nTsel>
|
||||
<sDll></sDll>
|
||||
<sDllPa></sDllPa>
|
||||
<sDlgDll></sDlgDll>
|
||||
|
|
@ -140,17 +199,17 @@
|
|||
<SetRegEntry>
|
||||
<Number>0</Number>
|
||||
<Key>JL2CM3</Key>
|
||||
<Name>-U59610079 -O78 -S0 -A0 -C0 -JU1 -JI127.0.0.1 -JP0 -RST0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8001 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -TB1 -TFE0 -FO15 -FD20000000 -FC1000 -FN1 -FF0STM32F4xx_1024.FLM -FS08000000 -FL0100000 -FP0($$Device:STM32F407VGTx$CMSIS\Flash\STM32F4xx_1024.FLM)</Name>
|
||||
<Name>-U59610079 -O78 -S0 -A0 -C0 -JU1 -JI127.0.0.1 -JP0 -RST0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8001 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -TB1 -TFE0 -FO15 -FD20000000 -FC1000 -FN1 -FF0STM32F4xx_1024.FLM -FS08000000 -FL0100000 -FP0($$Device:STM32F407VGTx$CMSIS/Flash/STM32F4xx_1024.FLM)</Name>
|
||||
</SetRegEntry>
|
||||
<SetRegEntry>
|
||||
<Number>0</Number>
|
||||
<Key>UL2CM3</Key>
|
||||
<Name>UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32F4xx_1024 -FS08000000 -FL0100000 -FP0($$Device:STM32F407VGTx$CMSIS\Flash\STM32F4xx_1024.FLM))</Name>
|
||||
<Name>UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32F4xx_1024 -FS08000000 -FL0100000 -FP0($$Device:STM32F407VGTx$CMSIS/Flash/STM32F4xx_1024.FLM))</Name>
|
||||
</SetRegEntry>
|
||||
<SetRegEntry>
|
||||
<Number>0</Number>
|
||||
<Key>ST-LINKIII-KEIL_SWO</Key>
|
||||
<Name>-U-O142 -O2254 -S0 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F4xx_1024.FLM -FS08000000 -FL0100000 -FP0($$Device:STM32F407VGTx$CMSIS\Flash\STM32F4xx_1024.FLM)</Name>
|
||||
<Name>-U-O142 -O2254 -S0 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F4xx_1024.FLM -FS08000000 -FL0100000 -FP0($$Device:STM32F407VG$CMSIS\Flash\STM32F4xx_1024.FLM)</Name>
|
||||
</SetRegEntry>
|
||||
</TargetDriverDllRegistry>
|
||||
<Breakpoint/>
|
||||
|
|
@ -295,16 +354,6 @@
|
|||
<WinNumber>1</WinNumber>
|
||||
<ItemText>usart6_rx_buf</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>28</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>encode_cnt,0x0A</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>29</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>TIM4</ItemText>
|
||||
</Ww>
|
||||
</WatchWindow1>
|
||||
<Tracepoint>
|
||||
<THDelay>0</THDelay>
|
||||
|
|
@ -337,20 +386,8 @@
|
|||
</DebugFlag>
|
||||
<LintExecutable></LintExecutable>
|
||||
<LintConfigFile></LintConfigFile>
|
||||
<bLintAuto>0</bLintAuto>
|
||||
<bAutoGenD>0</bAutoGenD>
|
||||
<LntExFlags>0</LntExFlags>
|
||||
<pMisraName></pMisraName>
|
||||
<pszMrule></pszMrule>
|
||||
<pSingCmds></pSingCmds>
|
||||
<pMultCmds></pMultCmds>
|
||||
<pMisraNamep></pMisraNamep>
|
||||
<pszMrulep></pszMrulep>
|
||||
<pSingCmdsp></pSingCmdsp>
|
||||
<pMultCmdsp></pMultCmdsp>
|
||||
<DebugDescription>
|
||||
<Enable>1</Enable>
|
||||
<EnableFlashSeq>0</EnableFlashSeq>
|
||||
<EnableLog>0</EnableLog>
|
||||
<Protocol>2</Protocol>
|
||||
<DbgClock>10000000</DbgClock>
|
||||
|
|
@ -369,6 +406,7 @@
|
|||
<FileNumber>1</FileNumber>
|
||||
<FileType>2</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>startup_stm32f407xx.s</PathWithFileName>
|
||||
|
|
@ -389,6 +427,7 @@
|
|||
<FileNumber>2</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Core/Src/main.c</PathWithFileName>
|
||||
|
|
@ -401,6 +440,7 @@
|
|||
<FileNumber>3</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Core/Src/gpio.c</PathWithFileName>
|
||||
|
|
@ -413,6 +453,7 @@
|
|||
<FileNumber>4</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Core/Src/adc.c</PathWithFileName>
|
||||
|
|
@ -425,6 +466,7 @@
|
|||
<FileNumber>5</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Core/Src/dma.c</PathWithFileName>
|
||||
|
|
@ -437,6 +479,7 @@
|
|||
<FileNumber>6</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Core/Src/spi.c</PathWithFileName>
|
||||
|
|
@ -449,6 +492,7 @@
|
|||
<FileNumber>7</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Core/Src/tim.c</PathWithFileName>
|
||||
|
|
@ -461,6 +505,7 @@
|
|||
<FileNumber>8</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Core/Src/stm32f4xx_it.c</PathWithFileName>
|
||||
|
|
@ -473,6 +518,7 @@
|
|||
<FileNumber>9</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Core/Src/usart.c</PathWithFileName>
|
||||
|
|
@ -485,6 +531,7 @@
|
|||
<FileNumber>10</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Core/Src/stm32f4xx_hal_msp.c</PathWithFileName>
|
||||
|
|
@ -505,6 +552,7 @@
|
|||
<FileNumber>11</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_ll_gpio.c</PathWithFileName>
|
||||
|
|
@ -517,6 +565,7 @@
|
|||
<FileNumber>12</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_ll_adc.c</PathWithFileName>
|
||||
|
|
@ -529,6 +578,7 @@
|
|||
<FileNumber>13</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_ll_dma.c</PathWithFileName>
|
||||
|
|
@ -541,6 +591,7 @@
|
|||
<FileNumber>14</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_ll_rcc.c</PathWithFileName>
|
||||
|
|
@ -553,6 +604,7 @@
|
|||
<FileNumber>15</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_ll_utils.c</PathWithFileName>
|
||||
|
|
@ -565,6 +617,7 @@
|
|||
<FileNumber>16</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_ll_exti.c</PathWithFileName>
|
||||
|
|
@ -577,6 +630,7 @@
|
|||
<FileNumber>17</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.c</PathWithFileName>
|
||||
|
|
@ -589,6 +643,7 @@
|
|||
<FileNumber>18</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc_ex.c</PathWithFileName>
|
||||
|
|
@ -601,6 +656,7 @@
|
|||
<FileNumber>19</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash.c</PathWithFileName>
|
||||
|
|
@ -613,6 +669,7 @@
|
|||
<FileNumber>20</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash_ex.c</PathWithFileName>
|
||||
|
|
@ -625,6 +682,7 @@
|
|||
<FileNumber>21</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash_ramfunc.c</PathWithFileName>
|
||||
|
|
@ -637,6 +695,7 @@
|
|||
<FileNumber>22</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c</PathWithFileName>
|
||||
|
|
@ -649,6 +708,7 @@
|
|||
<FileNumber>23</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma_ex.c</PathWithFileName>
|
||||
|
|
@ -661,6 +721,7 @@
|
|||
<FileNumber>24</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c</PathWithFileName>
|
||||
|
|
@ -673,6 +734,7 @@
|
|||
<FileNumber>25</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_pwr.c</PathWithFileName>
|
||||
|
|
@ -685,6 +747,7 @@
|
|||
<FileNumber>26</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_pwr_ex.c</PathWithFileName>
|
||||
|
|
@ -697,6 +760,7 @@
|
|||
<FileNumber>27</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.c</PathWithFileName>
|
||||
|
|
@ -709,6 +773,7 @@
|
|||
<FileNumber>28</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c</PathWithFileName>
|
||||
|
|
@ -721,6 +786,7 @@
|
|||
<FileNumber>29</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_exti.c</PathWithFileName>
|
||||
|
|
@ -733,6 +799,7 @@
|
|||
<FileNumber>30</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_spi.c</PathWithFileName>
|
||||
|
|
@ -745,6 +812,7 @@
|
|||
<FileNumber>31</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_ll_spi.c</PathWithFileName>
|
||||
|
|
@ -757,6 +825,7 @@
|
|||
<FileNumber>32</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.c</PathWithFileName>
|
||||
|
|
@ -769,6 +838,7 @@
|
|||
<FileNumber>33</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c</PathWithFileName>
|
||||
|
|
@ -781,6 +851,7 @@
|
|||
<FileNumber>34</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_ll_tim.c</PathWithFileName>
|
||||
|
|
@ -793,6 +864,7 @@
|
|||
<FileNumber>35</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_ll_usart.c</PathWithFileName>
|
||||
|
|
@ -804,7 +876,7 @@
|
|||
|
||||
<Group>
|
||||
<GroupName>Drivers/CMSIS</GroupName>
|
||||
<tvExp>1</tvExp>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<cbSel>0</cbSel>
|
||||
<RteFlg>0</RteFlg>
|
||||
|
|
@ -813,6 +885,7 @@
|
|||
<FileNumber>36</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Core/Src/system_stm32f4xx.c</PathWithFileName>
|
||||
|
|
@ -833,6 +906,7 @@
|
|||
<FileNumber>37</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>..\Modbus\Src\modbus.c</PathWithFileName>
|
||||
|
|
@ -853,6 +927,7 @@
|
|||
<FileNumber>38</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>..\Board\Src\ads1256.c</PathWithFileName>
|
||||
|
|
@ -865,6 +940,7 @@
|
|||
<FileNumber>39</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>..\Board\Src\hc595.c</PathWithFileName>
|
||||
|
|
@ -877,6 +953,7 @@
|
|||
<FileNumber>40</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>..\Board\Src\hc165.c</PathWithFileName>
|
||||
|
|
@ -889,6 +966,7 @@
|
|||
<FileNumber>41</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>..\Board\Src\dac7311.c</PathWithFileName>
|
||||
|
|
@ -901,6 +979,7 @@
|
|||
<FileNumber>42</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>..\Board\Src\ms5803.c</PathWithFileName>
|
||||
|
|
@ -913,6 +992,7 @@
|
|||
<FileNumber>43</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>..\Board\Src\laser.c</PathWithFileName>
|
||||
|
|
@ -925,6 +1005,7 @@
|
|||
<FileNumber>44</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<Focus>0</Focus>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>..\Board\Src\mf.c</PathWithFileName>
|
||||
|
|
|
|||
|
|
@ -10,13 +10,12 @@
|
|||
<TargetName>FM_CCJY</TargetName>
|
||||
<ToolsetNumber>0x4</ToolsetNumber>
|
||||
<ToolsetName>ARM-ADS</ToolsetName>
|
||||
<uAC6>0</uAC6>
|
||||
<TargetOption>
|
||||
<TargetCommonOption>
|
||||
<Device>STM32F407VGTx</Device>
|
||||
<Vendor>STMicroelectronics</Vendor>
|
||||
<PackID>Keil.STM32F4xx_DFP.3.1.1</PackID>
|
||||
<PackURL>https://www.keil.com/pack/</PackURL>
|
||||
<PackID>Keil.STM32F4xx_DFP.2.12.0</PackID>
|
||||
<PackURL>http://www.keil.com/pack</PackURL>
|
||||
<Cpu>IRAM(0x20000000-0x2001BFFF) IRAM2(0x2001C000-0x2001FFFF) IROM(0x8000000-0x80FFFFF) CLOCK(25000000) FPU2 CPUTYPE("Cortex-M4")</Cpu>
|
||||
<FlashUtilSpec></FlashUtilSpec>
|
||||
<StartupFile></StartupFile>
|
||||
|
|
@ -85,8 +84,6 @@
|
|||
<UserProg2Name></UserProg2Name>
|
||||
<UserProg1Dos16Mode>0</UserProg1Dos16Mode>
|
||||
<UserProg2Dos16Mode>0</UserProg2Dos16Mode>
|
||||
<nStopA1X>0</nStopA1X>
|
||||
<nStopA2X>0</nStopA2X>
|
||||
</AfterMake>
|
||||
<SelectedForBatchBuild>0</SelectedForBatchBuild>
|
||||
<SVCSIdString></SVCSIdString>
|
||||
|
|
@ -125,6 +122,47 @@
|
|||
<HexOffset>0</HexOffset>
|
||||
<Oh166RecLen>16</Oh166RecLen>
|
||||
</OPTHX>
|
||||
<Simulator>
|
||||
<UseSimulator>0</UseSimulator>
|
||||
<LoadApplicationAtStartup>1</LoadApplicationAtStartup>
|
||||
<RunToMain>1</RunToMain>
|
||||
<RestoreBreakpoints>1</RestoreBreakpoints>
|
||||
<RestoreWatchpoints>1</RestoreWatchpoints>
|
||||
<RestoreMemoryDisplay>1</RestoreMemoryDisplay>
|
||||
<RestoreFunctions>1</RestoreFunctions>
|
||||
<RestoreToolbox>1</RestoreToolbox>
|
||||
<LimitSpeedToRealTime>0</LimitSpeedToRealTime>
|
||||
<RestoreSysVw>1</RestoreSysVw>
|
||||
</Simulator>
|
||||
<Target>
|
||||
<UseTarget>1</UseTarget>
|
||||
<LoadApplicationAtStartup>1</LoadApplicationAtStartup>
|
||||
<RunToMain>1</RunToMain>
|
||||
<RestoreBreakpoints>1</RestoreBreakpoints>
|
||||
<RestoreWatchpoints>1</RestoreWatchpoints>
|
||||
<RestoreMemoryDisplay>1</RestoreMemoryDisplay>
|
||||
<RestoreFunctions>1</RestoreFunctions>
|
||||
<RestoreToolbox>1</RestoreToolbox>
|
||||
<RestoreTracepoints>1</RestoreTracepoints>
|
||||
<RestoreSysVw>1</RestoreSysVw>
|
||||
</Target>
|
||||
<RunDebugAfterBuild>0</RunDebugAfterBuild>
|
||||
<TargetSelection>6</TargetSelection>
|
||||
<SimDlls>
|
||||
<CpuDll></CpuDll>
|
||||
<CpuDllArguments></CpuDllArguments>
|
||||
<PeripheralDll></PeripheralDll>
|
||||
<PeripheralDllArguments></PeripheralDllArguments>
|
||||
<InitializationFile></InitializationFile>
|
||||
</SimDlls>
|
||||
<TargetDlls>
|
||||
<CpuDll></CpuDll>
|
||||
<CpuDllArguments></CpuDllArguments>
|
||||
<PeripheralDll></PeripheralDll>
|
||||
<PeripheralDllArguments></PeripheralDllArguments>
|
||||
<InitializationFile></InitializationFile>
|
||||
<Driver>Segger\JL2CM3.dll</Driver>
|
||||
</TargetDlls>
|
||||
</DebugOption>
|
||||
<Utilities>
|
||||
<Flash1>
|
||||
|
|
@ -183,16 +221,12 @@
|
|||
<hadXRAM>0</hadXRAM>
|
||||
<uocXRam>0</uocXRam>
|
||||
<RvdsVP>2</RvdsVP>
|
||||
<RvdsMve>0</RvdsMve>
|
||||
<RvdsCdeCp>0</RvdsCdeCp>
|
||||
<nBranchProt>0</nBranchProt>
|
||||
<hadIRAM2>1</hadIRAM2>
|
||||
<hadIROM2>0</hadIROM2>
|
||||
<StupSel>8</StupSel>
|
||||
<useUlib>0</useUlib>
|
||||
<EndSel>0</EndSel>
|
||||
<uLtcg>0</uLtcg>
|
||||
<nSecure>0</nSecure>
|
||||
<RoSelD>3</RoSelD>
|
||||
<RwSelD>3</RwSelD>
|
||||
<CodeSel>0</CodeSel>
|
||||
|
|
@ -326,15 +360,7 @@
|
|||
<uThumb>0</uThumb>
|
||||
<uSurpInc>0</uSurpInc>
|
||||
<uC99>1</uC99>
|
||||
<uGnu>0</uGnu>
|
||||
<useXO>0</useXO>
|
||||
<v6Lang>3</v6Lang>
|
||||
<v6LangP>3</v6LangP>
|
||||
<vShortEn>1</vShortEn>
|
||||
<vShortWch>1</vShortWch>
|
||||
<v6Lto>0</v6Lto>
|
||||
<v6WtE>0</v6WtE>
|
||||
<v6Rtti>0</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define>STM32F407xx,USE_FULL_LL_DRIVER,USE_HAL_DRIVER</Define>
|
||||
|
|
@ -352,7 +378,6 @@
|
|||
<NoWarn>0</NoWarn>
|
||||
<uSurpInc>0</uSurpInc>
|
||||
<useXO>0</useXO>
|
||||
<ClangAsOpt>1</ClangAsOpt>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -440,15 +465,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -496,15 +513,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -572,15 +581,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -633,15 +634,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -689,15 +682,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -745,15 +730,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -801,15 +778,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -857,15 +826,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -913,15 +874,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -969,15 +922,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -1025,15 +970,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -1081,15 +1018,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -1137,15 +1066,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -1193,15 +1114,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -1249,15 +1162,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -1305,15 +1210,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -1361,15 +1258,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -1417,15 +1306,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -1473,15 +1354,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -1529,15 +1402,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -1585,15 +1450,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -1641,15 +1498,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -1697,15 +1546,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -1753,15 +1594,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -1809,15 +1642,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -1865,15 +1690,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -1921,15 +1738,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
@ -1977,15 +1786,7 @@
|
|||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -1,14 +0,0 @@
|
|||
/*
|
||||
* UVISION generated file: DO NOT EDIT!
|
||||
* Generated by: uVision version 5.40.0.0
|
||||
*
|
||||
* Project: 'FM_CCJY'
|
||||
* Target: 'FM_CCJY'
|
||||
*/
|
||||
|
||||
#ifndef RTE_COMPONENTS_H
|
||||
#define RTE_COMPONENTS_H
|
||||
|
||||
|
||||
|
||||
#endif /* RTE_COMPONENTS_H */
|
||||
File diff suppressed because it is too large
Load Diff
|
|
@ -20,19 +20,19 @@
|
|||
|
||||
|
||||
#define COIL_ADD_MIN 0x10
|
||||
#define COIL_ADD_MAX 0x5F
|
||||
#define COIL_ADD_MAX 0x1F
|
||||
#define MAX_COIL_NUM ((COIL_ADD_MAX) - (COIL_ADD_MIN) + 1)
|
||||
|
||||
#define DIS_ADD_MIN 0x00
|
||||
#define DIS_ADD_MAX 0x5F
|
||||
#define DIS_ADD_MAX 0x0F
|
||||
#define MAX_DIS_NUM ((DIS_ADD_MAX) - (DIS_ADD_MIN) + 1)
|
||||
|
||||
#define INPUT_REG_ADD_MIN 0x00
|
||||
#define INPUT_REG_ADD_MAX 0x5F
|
||||
#define INPUT_REG_ADD_MAX 0x18
|
||||
#define MAX_INPUT_REG_NUM ((INPUT_REG_ADD_MAX) - (INPUT_REG_ADD_MIN) + 1)
|
||||
|
||||
#define HOLD_REG_ADD_MIN 0x00
|
||||
#define HOLD_REG_ADD_MAX 0x5F
|
||||
#define HOLD_REG_ADD_MAX 0x0F
|
||||
#define MAX_HOLD_REG_NUM ((HOLD_REG_ADD_MAX) - (HOLD_REG_ADD_MIN) + 1)
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
#define MODBUS_UART usart3 //将串口改成相应的变量即可,例如用到UART1,此处改为uart1
|
||||
#define MODBUS_HUART USART3 //将串口改成相应的变量即可,例如用到UART1,此处改为huart1
|
||||
|
||||
uint8_t CoilState[(MAX_DIS_NUM + 7) / 8] = {0x00,0x00};//线圈寄存器
|
||||
uint8_t CoilState[(MAX_DIS_NUM + 7) / 8] = {0x00};//线圈寄存器
|
||||
uint8_t DisState [(MAX_DIS_NUM + 7) / 8] = {0xAA};//离散量寄存器
|
||||
uint16_t InputReg[MAX_INPUT_REG_NUM] = {0xAA55,0x55AA};//输入寄存器
|
||||
uint16_t HoldReg[MAX_HOLD_REG_NUM] = {0x0000, 0x0000,0x0000,0x0001};//保持寄存器
|
||||
|
|
@ -75,7 +75,7 @@ void ReadCoilStateFUNC(uint8_t * upRxdbuf, uint16_t wRxdLen)
|
|||
{
|
||||
uint16_t wCoilStartAddr,wCoilNum,wTotalCoilNum,CRC16Temp;
|
||||
uint8_t i,k,uCommIndexNum = 0,uByteCount,uCoilVal,uErrorCode,uExit = 0;
|
||||
uint8_t upTxdbuf[200] = {0};
|
||||
uint8_t upTxdbuf[50] = {0};
|
||||
|
||||
wCoilStartAddr = MAKEWORD(upRxdbuf[1], upRxdbuf[0]); //获取线圈起始地址
|
||||
wCoilNum = MAKEWORD(upRxdbuf[3], upRxdbuf[2]); //获取线圈个数
|
||||
|
|
@ -169,7 +169,7 @@ void ReadDisInputStateFUNC(uint8_t * upRxdbuf, uint16_t wRxdLen)
|
|||
{
|
||||
uint16_t wDisStartAddr,wDisNum,wTotalDisNum,CRC16Temp;
|
||||
uint8_t i,k,uCommIndexNum = 0,uByteCount,uDisVal,uErrorCode,uExit = 0;
|
||||
uint8_t upTxdbuf[200];
|
||||
uint8_t upTxdbuf[50];
|
||||
|
||||
wDisStartAddr = MAKEWORD(upRxdbuf[1], upRxdbuf[0]); //获取离散量起始地址
|
||||
wDisNum = MAKEWORD(upRxdbuf[3], upRxdbuf[2]); //获取离散量个数
|
||||
|
|
@ -261,7 +261,7 @@ void ReadHoldRegFUNC(uint8_t * upRxdbuf, uint16_t wRxdLen)
|
|||
{
|
||||
uint16_t wRegStartAdd, wRegLen, i, wRegValue, CRC16Temp;
|
||||
uint8_t uErrorCode, uCommIndexNum = 0;
|
||||
uint8_t upTxdbuf[200];
|
||||
uint8_t upTxdbuf[50];
|
||||
|
||||
if(upRxdbuf == NULL) return;
|
||||
|
||||
|
|
@ -336,7 +336,7 @@ void ReadInputRegFUNC(uint8_t * upRxdbuf, uint16_t wRxdLen)
|
|||
{
|
||||
uint16_t wRegStartAdd, wRegLen, i, wRegValue, CRC16Temp;
|
||||
uint8_t uErrorCode, uCommIndexNum = 0;
|
||||
uint8_t upTxdbuf[200];
|
||||
uint8_t upTxdbuf[50];
|
||||
|
||||
if(upRxdbuf == NULL) return;
|
||||
|
||||
|
|
@ -409,7 +409,7 @@ void WriteSingleRegFUNC(uint8_t * upRxdbuf, uint16_t wRxdLen)
|
|||
{
|
||||
uint16_t wRegAddr, wRegValue, CRC16Temp;
|
||||
uint8_t uCommIndexNum = 0, uErrorCode;
|
||||
uint8_t upTxdbuf[200];
|
||||
uint8_t upTxdbuf[50];
|
||||
|
||||
if(upRxdbuf == NULL) return;
|
||||
|
||||
|
|
@ -453,7 +453,7 @@ void WriteMultiRegFUNC(uint8_t * upRxdbuf, uint16_t wRxdLen)
|
|||
{
|
||||
uint16_t i, wRegStartAdd, wRegNum, CRC16Temp, uErrorCode, wRegValue;
|
||||
uint8_t uCommIndexNum = 0, uByteNum;
|
||||
uint8_t upTxdbuf[200];
|
||||
uint8_t upTxdbuf[50];
|
||||
|
||||
if(upRxdbuf == NULL) return;
|
||||
|
||||
|
|
@ -529,7 +529,7 @@ void WriteSingleCoilFUNC(uint8_t * upRxdbuf, uint16_t wRxdLen)
|
|||
{
|
||||
uint16_t wCoilAddr, wCoilValue, CRC16Temp;
|
||||
uint8_t uCommIndexNum = 0, uErrorCode;
|
||||
uint8_t upTxdbuf[200];
|
||||
uint8_t upTxdbuf[50];
|
||||
|
||||
wCoilAddr = MAKEWORD(upRxdbuf[1], upRxdbuf[0]); //获取线圈地址
|
||||
wCoilValue = MAKEWORD(upRxdbuf[3], upRxdbuf[2]); //获取线圈数据
|
||||
|
|
@ -581,7 +581,7 @@ void WriteMultiCoilFUNC(uint8_t * upRxdbuf, uint16_t wRxdLen)
|
|||
{
|
||||
uint16_t wCoilStartAddr,wCoilNum,wCoilVal,wTotalCoilNum,CRC16Temp;
|
||||
uint8_t i,k,uCommIndexNum = 0,uByteNum,uByteVal,uExit = 0,uErrorCode;
|
||||
uint8_t upTxdbuf[200];
|
||||
uint8_t upTxdbuf[50];
|
||||
|
||||
wCoilStartAddr = MAKEWORD(upRxdbuf[1], upRxdbuf[0]); //获取线圈地址
|
||||
wCoilNum = MAKEWORD(upRxdbuf[3], upRxdbuf[2]); //获取线圈个数
|
||||
|
|
@ -658,7 +658,7 @@ void MODBUS_ERRFunction(uint8_t uCmdCode, uint8_t uErrorCode)
|
|||
{
|
||||
uint8_t uCommIndexNum = 0;
|
||||
uint16_t CRC16Temp = 0;
|
||||
uint8_t upTxdbuf[200];
|
||||
uint8_t upTxdbuf[50];
|
||||
|
||||
upTxdbuf[uCommIndexNum ++] = LOCAL_ADDRESS;
|
||||
upTxdbuf[uCommIndexNum ++] = uCmdCode | 0x80;
|
||||
|
|
|
|||
Loading…
Reference in New Issue