From e61d1595ebb1fa76b499cddec2df4bd66ec92b97 Mon Sep 17 00:00:00 2001
From: jinlicong <493886250@qq.com>
Date: Mon, 20 May 2024 20:02:47 +0800
Subject: [PATCH] 继续完善
---
Function/FLOW_METER_DATA_COLLECT/rs485_read_data.c | 15 ++++++++-------
1 files changed, 8 insertions(+), 7 deletions(-)
diff --git a/Function/FLOW_METER_DATA_COLLECT/rs485_read_data.c b/Function/FLOW_METER_DATA_COLLECT/rs485_read_data.c
index 51418db..c1bef8a 100644
--- a/Function/FLOW_METER_DATA_COLLECT/rs485_read_data.c
+++ b/Function/FLOW_METER_DATA_COLLECT/rs485_read_data.c
@@ -66,12 +66,12 @@
void RS485_read_data_RX_DMA_check(void)
{
uint16_t timeout_cnt = 0,dma_recv_cnt;
- uint32_t dma_mar_reg_read = DMA_CHxMAR_Read(DMA_CH3);
+ uint32_t dma_mar_reg_read = DMA_CHxMAR_Read(RS485_READ_DATA_DMA_CHX);
if(dma_mar_reg_read != (uint32)RS485_read_data_recv_buff){
delay_ms(2);
- while(dma_mar_reg_read != DMA_CHxMAR_Read(DMA_CH3)){
- dma_mar_reg_read = DMA_CHxMAR_Read(DMA_CH3);
+ while(dma_mar_reg_read != DMA_CHxMAR_Read(RS485_READ_DATA_DMA_CHX)){
+ dma_mar_reg_read = DMA_CHxMAR_Read(RS485_READ_DATA_DMA_CHX);
delay_ms(2);
if(timeout_cnt++ > 100)
break;
@@ -218,7 +218,7 @@
if(rs485_com_ctrl_pata_g.pwr_delay_time_out_cnt == 0) //��ʱ��0�Ϳ��Է��Ͷ�ȡָ��
{
//��������
- RS485_UART_GPIO_Init();
+// RS485_UART_GPIO_Init(); //uart_Init�Ѿ�������IO����
switch(flow_meter_para_g.baudrate_code ){
case BAUDRATE_1200:BaudRate = 1200; break;
case BAUDRATE_2400:BaudRate = 2400; break;
@@ -249,7 +249,7 @@
}
-#define RS485_READ_ERR_ALARM_TIMES 2 //����RS485_READ_ERR_ALARM_TIMES��ʧ�ܱ���RS485�쳣
+#define RS485_READ_ERR_ALARM_TIMES 1 //����RS485_READ_ERR_ALARM_TIMES��ʧ�ܱ���RS485�쳣
RS485_COM_STATUS_T rs485ComWaitAnswerHandle(void)
{
static uint8_t RS485_err_cnt =0 ; //��ȡʧ�ܼ���
@@ -263,6 +263,8 @@
rs485_com_uart_data_g.recv_flag =RESET;
read_ok = rs485ComDataAnalysis(rs485_com_uart_data_g,SIZHUMODBUSV2_0,1,rs485_com_ctrl_pata_g ) ;//?�豸���롢�ӻ���ַ���Ҫ��
+ memset(rs485_com_uart_data_g.recv_buf, 0, sizeof(rs485_com_uart_data_g.recv_buf)); //Ӧ�������ս���
+
}
if(read_ok==PASS){
@@ -301,7 +303,7 @@
RS485_UART_GPIO_sleep();
if(RS485_err_cnt < 250){
if( ++RS485_err_cnt >= RS485_READ_ERR_ALARM_TIMES)
- __SYS_STATUS_ALARM_BYTES_SET(RS485_err);
+ __SYS_STATUS_ALARM_BYTES_SET(RS485_err,ALARM_ID_READ_485_ABNORMAL);
}
return RS485_COM_IDLE;
@@ -326,7 +328,6 @@
rs485_com_ctrl_pata_g.status = RS485_COM_PWR_ON;
sys_fun_run_ctrl_p->rs485_ctrl_flag.running_flag = SET;
}
-
}
switch (rs485_com_ctrl_pata_g.status){
--
Gitblit v1.9.3