teste de publish
Dependencies: DS1820 HighSpeedAnalogIn devices mbed
modbusMaster1.h@32:7cf1fb8a8bf3, 2018-05-26 (annotated)
- Committer:
- brunofgc
- Date:
- Sat May 26 14:17:55 2018 +0000
- Revision:
- 32:7cf1fb8a8bf3
- Parent:
- 26:c246eacf6815
Esta revis?o ja conta com Dispositivo ?nico, maquina de modbus concertada com retentativas, erro de reset concertado, alarmes-schedules-exceptions-reads em area de memoria extendida.; ; Faltando reposicionar config.bin e devices.cfg para FLASH ROM
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
brunofgc | 0:1c0a769988ee | 1 | #include "mbed.h" |
brunofgc | 0:1c0a769988ee | 2 | #include "cmsis_os.h" //Nucleo do Real Time Operational System |
brunofgc | 0:1c0a769988ee | 3 | #include "main.h" |
brunofgc | 0:1c0a769988ee | 4 | #ifndef _modbus_master_ |
brunofgc | 0:1c0a769988ee | 5 | #define _modbus_master_ |
brunofgc | 0:1c0a769988ee | 6 | |
brunofgc | 0:1c0a769988ee | 7 | #define maxLenBufModBus 850 |
brunofgc | 0:1c0a769988ee | 8 | |
brunofgc | 25:a6da63ed025b | 9 | |
brunofgc | 0:1c0a769988ee | 10 | |
brunofgc | 0:1c0a769988ee | 11 | namespace modBusMaster1{ |
brunofgc | 0:1c0a769988ee | 12 | extern Serial *serModBus; |
brunofgc | 26:c246eacf6815 | 13 | extern uint16_t T3_5; |
brunofgc | 26:c246eacf6815 | 14 | extern uint16_t T1_5; |
brunofgc | 0:1c0a769988ee | 15 | extern uint16_t MODBUS_SERIAL_BAUD; |
brunofgc | 25:a6da63ed025b | 16 | extern uint16_t MODBUS_TIMEOUT; |
brunofgc | 0:1c0a769988ee | 17 | extern DigitalOut *de; |
brunofgc | 0:1c0a769988ee | 18 | extern uint8_t buffer[maxLenBufModBus]; //Buffer in e out; |
brunofgc | 0:1c0a769988ee | 19 | extern uint16_t index; |
brunofgc | 0:1c0a769988ee | 20 | extern bool pacoteEmEspera; |
brunofgc | 32:7cf1fb8a8bf3 | 21 | extern bool pacoteEmEsperaValido; |
brunofgc | 0:1c0a769988ee | 22 | extern bool startThreadModBusMaster; |
brunofgc | 0:1c0a769988ee | 23 | extern osTimerId timer_pacote; |
brunofgc | 0:1c0a769988ee | 24 | |
brunofgc | 0:1c0a769988ee | 25 | //Functions |
brunofgc | 0:1c0a769988ee | 26 | uint16_t CRC16(uint8_t*,uint16_t); //Ponteiro para buffer e len |
brunofgc | 0:1c0a769988ee | 27 | void modBusMaster(Serial *,uint32_t,DigitalOut *); //Objeto serial, objeto DigitalOut |
brunofgc | 25:a6da63ed025b | 28 | void setBaud(uint32_t); //Seta baudrate |
brunofgc | 0:1c0a769988ee | 29 | uint8_t readFloat(uint8_t,uint8_t,uint16_t,uint16_t,float*); //Endereço slave, funcCode, registrador, quantidade de registros,ponteiro para registros float |
brunofgc | 0:1c0a769988ee | 30 | uint8_t writeFloat(uint8_t,uint16_t,uint8_t,float*); //Endereço slave, registrador, quantidade de registros,ponteiro para registros float |
brunofgc | 0:1c0a769988ee | 31 | uint8_t writeRegister16BIT(uint8_t,uint16_t,uint16_t,uint16_t*); //Endereço slave, registrador, quantidade de registros,ponteiro para registros uint16_t |
brunofgc | 0:1c0a769988ee | 32 | uint8_t writeRegister32BIT(uint8_t,uint16_t,uint16_t,uint32_t*); //Endereço slave, registrador, quantidade de registros,ponteiro para registros uint32_t |
brunofgc | 0:1c0a769988ee | 33 | 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 |
brunofgc | 0:1c0a769988ee | 34 | 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 |
brunofgc | 0:1c0a769988ee | 35 | uint16_t sendFrame(uint16_t); //Quantidade de caracteres; |
brunofgc | 0:1c0a769988ee | 36 | uint8_t readCoils(uint8_t,uint16_t,uint16_t,bool*); //Endereço slave, registrador, quantidade de registros, ponteiro para bool |
brunofgc | 0:1c0a769988ee | 37 | uint8_t writeSingleCoil(uint8_t,uint16_t,bool); //Endereço slave, registrador, bool |
brunofgc | 0:1c0a769988ee | 38 | void processaCaractere(); |
brunofgc | 0:1c0a769988ee | 39 | void processaPacote(void const *); |
brunofgc | 0:1c0a769988ee | 40 | }; |
brunofgc | 0:1c0a769988ee | 41 | #endif |