gtf testing:wq
This commit is contained in:
@@ -108,8 +108,8 @@ void ioHelperEdgeDetector(void);
|
|||||||
#define BitPinD7 16 //I16
|
#define BitPinD7 16 //I16
|
||||||
#define BitPinG2 17 //I17
|
#define BitPinG2 17 //I17
|
||||||
#define BitPinG1 18 //I18
|
#define BitPinG1 18 //I18
|
||||||
#define BitPinD3 10 //INO
|
#define BitPinD3 19 //INO
|
||||||
#define BitPinD2 11 //IN1
|
#define BitPinD2 20 //IN1
|
||||||
|
|
||||||
#define BTN_HEIZEN_AN BitPinK2
|
#define BTN_HEIZEN_AN BitPinK2
|
||||||
#define BTN_HEIZEN_AUS BitPinK3
|
#define BTN_HEIZEN_AUS BitPinK3
|
||||||
|
|||||||
32
gefran_gtf.c
32
gefran_gtf.c
@@ -1,12 +1,15 @@
|
|||||||
#include "modbus-master.h"
|
#include "modbus-master.h"
|
||||||
|
#include "gefran_gtf.h"
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
|
||||||
#define FIRMWARE_VERSION 120
|
|
||||||
|
|
||||||
uint16_t gtf_firmware_version(uint8_t address){
|
uint16_t gtf_firmware_version(uint8_t address){
|
||||||
|
return gtf_read_register(address, GTF_FIRMWARE_VERSION);
|
||||||
|
}
|
||||||
|
|
||||||
|
uint16_t gtf_read_register(uint8_t address, uint8_t reg){
|
||||||
uint16_t val = 0;
|
uint16_t val = 0;
|
||||||
readReg(address, FIRMWARE_VERSION, 1);
|
readReg(address, reg, 1);
|
||||||
int8_t res = wait_receive(1, &val, 250);
|
int8_t res = wait_receive(1, &val, 30);
|
||||||
|
|
||||||
if(!res)
|
if(!res)
|
||||||
return val;
|
return val;
|
||||||
@@ -14,3 +17,24 @@ uint16_t gtf_firmware_version(uint8_t address){
|
|||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int8_t gtf_write_register(uint8_t address, uint8_t reg, uint16_t value){
|
||||||
|
writeReg(address, reg, value);
|
||||||
|
return wait_write(100);
|
||||||
|
}
|
||||||
|
|
||||||
|
int8_t gtf_read_coil(uint8_t address, uint8_t coil){
|
||||||
|
uint16_t val=0;
|
||||||
|
readCoil(address, coil);
|
||||||
|
uint8_t res = wait_receive_coil(20);
|
||||||
|
if(res)
|
||||||
|
return -1;
|
||||||
|
return val;
|
||||||
|
}
|
||||||
|
|
||||||
|
int8_t gtf_write_coil(uint8_t address, uint8_t coil, uint8_t val){
|
||||||
|
writeCoil(address, coil, val);
|
||||||
|
uint8_t res = wait_write(100);
|
||||||
|
if(res)
|
||||||
|
return -1;
|
||||||
|
return val;
|
||||||
|
}
|
||||||
|
|||||||
13
gefran_gtf.h
13
gefran_gtf.h
@@ -1,2 +1,15 @@
|
|||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
#define GTF_PV 0
|
||||||
|
#define GTF_OuP 3
|
||||||
|
#define GTF_FIRMWARE_VERSION 122
|
||||||
|
#define GTF_OPERATING_HOURS 161
|
||||||
|
#define GTF_BAUDRATE 24
|
||||||
|
#define GTF_SETPOINT 27
|
||||||
|
#define GTF_POWER 106
|
||||||
|
|
||||||
uint16_t gtf_firmware_version(uint8_t address);
|
uint16_t gtf_firmware_version(uint8_t address);
|
||||||
|
uint16_t gtf_read_register(uint8_t address, uint8_t reg);
|
||||||
|
int8_t gtf_write_register(uint8_t address, uint8_t reg, uint16_t value);
|
||||||
|
int8_t gtf_read_coil(uint8_t address, uint8_t coil);
|
||||||
|
int8_t gtf_write_coil(uint8_t address, uint8_t coil, uint8_t val);
|
||||||
|
|||||||
27
main.c
27
main.c
@@ -142,7 +142,6 @@ int main(){
|
|||||||
// INIT MCU
|
// INIT MCU
|
||||||
avr_init();
|
avr_init();
|
||||||
spi_init(); //SPI Master, MODE0, 4Mhz(DIV4), CS_PB.3=HIGH - suitable for WIZNET 5x00(1/2/5)
|
spi_init(); //SPI Master, MODE0, 4Mhz(DIV4), CS_PB.3=HIGH - suitable for WIZNET 5x00(1/2/5)
|
||||||
//spi_speed_tst(); / Here on SPI pins: MOSI 400Khz freq out, on SCLK 3.2MhzOUT (Witk SPI CLK 4Mhz)
|
|
||||||
|
|
||||||
ioHelperInitBuffer();
|
ioHelperInitBuffer();
|
||||||
ioHelperIoConf();
|
ioHelperIoConf();
|
||||||
@@ -203,6 +202,9 @@ int main(){
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
//printf("anlage: %x\n\r", read_Input(IN_ANLAGE_EIN_INV, LEVEL));
|
//printf("anlage: %x\n\r", read_Input(IN_ANLAGE_EIN_INV, LEVEL));
|
||||||
|
gtf_write_register(5, 54, 1);
|
||||||
|
gtf_write_register(5, 55, _BV(4));
|
||||||
|
gtf_write_register(5, 56, 100);
|
||||||
|
|
||||||
while(1)
|
while(1)
|
||||||
{
|
{
|
||||||
@@ -228,18 +230,13 @@ int main(){
|
|||||||
mqtt_pub(&mqtt_client, "/Filamentanlage/01_Extruder/kraft", msg, strlen(msg));
|
mqtt_pub(&mqtt_client, "/Filamentanlage/01_Extruder/kraft", msg, strlen(msg));
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
//modbus_io_set_Output(4, 0, TOGGLE);
|
printf("gefran 54: 0x%02X\n", gtf_read_register(5, 54));
|
||||||
//printf("gefran: 0x%02X\n", gtf_firmware_version(1));
|
printf("gefran 55: 0x%02X\n", gtf_read_register(5, 55));
|
||||||
//printf("gefran: 0x%02X\n", gtf_firmware_version(2));
|
printf("gefran 56: 0x%02X\n", gtf_read_register(5, 56));
|
||||||
//printf("gefran: 0x%02X\n", gtf_firmware_version(3));
|
|
||||||
//printf("gefran: 0x%02X\n", gtf_firmware_version(4));
|
printf("gefran pv: 0x%02X\n", gtf_read_register(5, GTF_PV));
|
||||||
//printf("gefran: 0x%02X\n", gtf_firmware_version(5));
|
printf("gefran oup: 0x%02X\n", gtf_read_register(5, GTF_OuP));
|
||||||
//printf("gefran: 0x%02X\n", gtf_firmware_version(6));
|
printf("\n");
|
||||||
//printf("gefran: 0x%02X\n", gtf_firmware_version(7));
|
|
||||||
//printf("gefran: 0x%02X\n", gtf_firmware_version(8));
|
|
||||||
//printf("gefran: 0x%02X\n", gtf_firmware_version(9));
|
|
||||||
//printf("gefran: 0x%02X\n", gtf_firmware_version(10));
|
|
||||||
//printf("\n");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if(millis() - timer_read_slave > 200){
|
if(millis() - timer_read_slave > 200){
|
||||||
@@ -283,9 +280,9 @@ int main(){
|
|||||||
#if PLC_MQTT_ENABLED
|
#if PLC_MQTT_ENABLED
|
||||||
// send misc info
|
// send misc info
|
||||||
if(millis() - timer_send_uptime > 5000){
|
if(millis() - timer_send_uptime > 5000){
|
||||||
timer_send_uptime += 5000;
|
timer_send_uptime = millis();
|
||||||
char msg[64];
|
char msg[64];
|
||||||
sprintf(msg, "%ld", millis()/1000);
|
//sprintf(msg, "%ld", millis()/1000);
|
||||||
mqtt_pub(&mqtt_client, "/Filamentanlage/01_Extruder/uptime", msg, strlen(msg));
|
mqtt_pub(&mqtt_client, "/Filamentanlage/01_Extruder/uptime", msg, strlen(msg));
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
10
uart.c
10
uart.c
@@ -8,8 +8,14 @@ FILE uart_output = FDEV_SETUP_STREAM(uart_putchar, NULL, _FDEV_SETUP_WRITE);
|
|||||||
void uart_init()
|
void uart_init()
|
||||||
{
|
{
|
||||||
DDRD |= 1 << 1; // TX
|
DDRD |= 1 << 1; // TX
|
||||||
UART_BAUD_REGH = (BAUDRATE>>8);
|
UART_BAUD_REGH = UBRRH_VALUE;//(BAUDRATE>>8);
|
||||||
UART_BAUD_REGL = BAUDRATE; // set baud rate
|
UART_BAUD_REGL = UBRRL_VALUE;//BAUDRATE; // set baud rate
|
||||||
|
|
||||||
|
#if USE_2X
|
||||||
|
UART_CTRL_REGA |= (1 << USE_2X);
|
||||||
|
#else
|
||||||
|
UART_CTRL_REGA &= ~(1 << USE_2X);
|
||||||
|
#endif
|
||||||
|
|
||||||
UART_CTRL_REGB |= (1<<UART_TXEN_BM)
|
UART_CTRL_REGB |= (1<<UART_TXEN_BM)
|
||||||
//|(1<<UART_RXEN_BM)
|
//|(1<<UART_RXEN_BM)
|
||||||
|
|||||||
6
uart.h
6
uart.h
@@ -1,9 +1,11 @@
|
|||||||
#ifndef _UART_H_
|
#ifndef _UART_H_
|
||||||
#define _UART_H_
|
#define _UART_H_
|
||||||
|
|
||||||
#include <stdio.h>
|
#define BAUD 115200
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <util/setbaud.h>
|
||||||
|
|
||||||
#define BAUD 9600
|
|
||||||
#define BAUDRATE ((F_CPU)/(BAUD*16UL)-1)
|
#define BAUDRATE ((F_CPU)/(BAUD*16UL)-1)
|
||||||
|
|
||||||
#define UART_BAUD_REGH UBRR0H
|
#define UART_BAUD_REGH UBRR0H
|
||||||
|
|||||||
Reference in New Issue
Block a user