teste de publish
Dependencies: DS1820 HighSpeedAnalogIn devices mbed
modbusMaster1.h
- Committer:
- brunofgc
- Date:
- 2018-06-08
- Revision:
- 38:07d3907b74e5
- Parent:
- 32:7cf1fb8a8bf3
File content as of revision 38:07d3907b74e5:
#include "mbed.h" #include "cmsis_os.h" //Nucleo do Real Time Operational System #include "main.h" #ifndef _modbus_master_ #define _modbus_master_ #define maxLenBufModBus 850 namespace modBusMaster1{ extern Serial *serModBus; extern uint16_t T3_5; extern uint16_t T1_5; extern uint16_t MODBUS_SERIAL_BAUD; extern uint16_t MODBUS_TIMEOUT; extern DigitalOut *de; extern uint8_t buffer[maxLenBufModBus]; //Buffer in e out; extern uint16_t index; extern bool pacoteEmEspera; extern bool pacoteEmEsperaValido; extern bool startThreadModBusMaster; extern osTimerId timer_pacote; //Functions uint16_t CRC16(uint8_t*,uint16_t); //Ponteiro para buffer e len void modBusMaster(Serial *,uint32_t,DigitalOut *); //Objeto serial, objeto DigitalOut void setBaud(uint32_t); //Seta baudrate uint8_t readFloat(uint8_t,uint8_t,uint16_t,uint16_t,float*); //Endereço slave, funcCode, registrador, quantidade de registros,ponteiro para registros float uint8_t writeFloat(uint8_t,uint16_t,uint8_t,float*); //Endereço slave, registrador, quantidade de registros,ponteiro para registros float uint8_t writeRegister16BIT(uint8_t,uint16_t,uint16_t,uint16_t*); //Endereço slave, registrador, quantidade de registros,ponteiro para registros uint16_t uint8_t writeRegister32BIT(uint8_t,uint16_t,uint16_t,uint32_t*); //Endereço slave, registrador, quantidade de registros,ponteiro para registros uint32_t uint8_t readRegister16BIT(uint8_t,uint8_t,uint16_t,uint16_t,uint16_t*); //Endereço slave, funcao, registrador, quantidade de registros,ponteiro para registros uint16_t uint8_t readRegister32BIT(uint8_t,uint8_t,uint16_t,uint16_t,uint32_t*); //Endereço slave, funcao, registrador, quantidade de registros,ponteiro para registros uint32_t uint16_t sendFrame(uint16_t); //Quantidade de caracteres; uint8_t readCoils(uint8_t,uint16_t,uint16_t,bool*); //Endereço slave, registrador, quantidade de registros, ponteiro para bool uint8_t writeSingleCoil(uint8_t,uint16_t,bool); //Endereço slave, registrador, bool void processaCaractere(); void processaPacote(void const *); }; #endif