#ifndef _MODBUS_H #define _MODBUS_H #include //#define uint8_t unsigned char //#define uint16_t unsigned short //#define uint32 unsigned int #define setBit(Add) gBitVar[(Add)>>3] |= (1<<((Add)&0x07)) #define clrBit(Add) gBitVar[(Add)>>3] &= ~(1<<((Add)&0x07)) //#define ModBusTxData uart1_tx extern uint16_t crc16(uint8_t *puchMsg, uint16_t usDataLen); extern int ModbusSlaveProcess(uint8_t *txbuf, uint8_t *rxbuf, uint16_t rxLen, int is_crc); int isBitHI(uint16_t Add); void xorBit(uint16_t Add); void WriteBit(uint16_t Add,uint8_t bit_value); #define gBIT_SIZE 128 #define gWORD_SIZE 512 extern uint8_t gBitVar[(gBIT_SIZE+7)/8]; extern uint16_t gWordVar[gWORD_SIZE]; extern uint16_t modbus_addr; // #include "usart.h" // #include "gpio.h" // #include "main.h" #define BUFFER_SIZE 2000 extern uint8_t rx_buffer[256]; extern uint8_t tx_buffer[256]; extern uint16_t rx_buff_len; // extern __IO uint8_t recv_end_flag; extern uint8_t recv_end_flag; extern void modbus_recv_mode(void); extern void usart2_dma_recv_start(void); extern void modbus_send(uint8_t *buf, uint8_t len); // extern void save_flow_cfg(void); extern int check_mastrt_recv(void); #endif // #ifndef _MODBUS_H // #define _MODBUS_H // #include // #define uint8_t unsigned char // #define uint16_t unsigned short // #define uint32 unsigned int // #define setBit(Add) gBitVar[(Add) >> 3] |= (1 << ((Add)&0x07)) // #define clrBit(Add) gBitVar[(Add) >> 3] &= ~(1 << ((Add)&0x07)) // //#define ModBusTxData uart1_tx // extern uint16_t crc16(uint8_t *puchMsg, uint16_t usDataLen); // extern int ModbusSlaveProcess(uint8_t *txbuf, uint8_t *rxbuf, uint16_t rxLen, int is_crc); // int isBitHI(uint16_t Add); // void xorBit(uint16_t Add); // void WriteBit(uint16_t Add, uint8_t bit_value); // #define gBIT_SIZE 128 // #define gWORD_SIZE 12288 // extern uint8_t gBitVar[(gBIT_SIZE + 7) / 8]; // extern uint16_t gWordVar[gWORD_SIZE]; // void modbus(void); // void rs485_send(void *buf, uint16_t len); // #endif