83 lines
1.4 KiB
C
83 lines
1.4 KiB
C
#include <string.h>
|
|
#include <stdint.h>
|
|
#include <stdbool.h>
|
|
#include <stdlib.h>
|
|
|
|
#include <main.h>
|
|
#include <usart.h>
|
|
#include <adc.h>
|
|
|
|
#include <PontCoopScheduler.h>
|
|
|
|
#include <signal.h>
|
|
#include <loopCtrl.h>
|
|
#include <mbusComm.h>
|
|
#include <logger.h>
|
|
#include <frontend.h>
|
|
|
|
void my_setup_1() {
|
|
schInit();
|
|
logInit();
|
|
}
|
|
|
|
void my_errorHandler() {
|
|
signal(LED_RED, ON);
|
|
}
|
|
|
|
void helloMeterbus(void *handle) {
|
|
static uint32_t cnt = 0;
|
|
logMsg("*** NEW REQUEST %d ***", cnt);
|
|
cnt++;
|
|
mbusCommRequest(0x5b, 80);
|
|
// static char msg[] = "Hello";
|
|
// HAL_UART_Transmit_IT(&mbusUart, &msg, strlen(msg));
|
|
|
|
}
|
|
|
|
|
|
void my_setup_2() {
|
|
signal(LED_RED, OFF);
|
|
signal(LED_GREEN, ON);
|
|
|
|
frontendInit();
|
|
frontendSetThreshold(240);
|
|
|
|
schAdd(helloMeterbus, NULL, 0, 10000);
|
|
}
|
|
|
|
void my_loop() {
|
|
signal(DEBUG_1, TOGGLE);
|
|
|
|
schExec();
|
|
logExec();
|
|
}
|
|
|
|
void SYSTICK_Callback() {
|
|
schUpdate();
|
|
}
|
|
|
|
void HAL_GPIO_EXTI_Callback(uint16_t pin) {
|
|
if (pin == Loop_Status_Pin) {
|
|
loopStatusCallback();
|
|
}
|
|
}
|
|
|
|
void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef* hadc) {
|
|
if (hadc == &frontendAdc) {
|
|
frontendAdcCallback(hadc);
|
|
}
|
|
}
|
|
|
|
void HAL_UART_TxCpltCallback(UART_HandleTypeDef *huart) {
|
|
if (huart == &mbusUart) {
|
|
mbusCommTxCpltCallback(huart);
|
|
}
|
|
}
|
|
|
|
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) {
|
|
if (huart == &mbusUart) {
|
|
mbusCommRxCpltCallback(huart);
|
|
}
|
|
}
|
|
|