Change FINDA from ADC to digital

Fix rebase issues
pull/109/head
3d-gussner 2021-08-22 17:38:58 +02:00 committed by DRracer
parent 06c46b20a6
commit 003b2f6899
4 changed files with 19 additions and 2 deletions

View File

@ -2,6 +2,10 @@
#include <stdint.h>
#include "axis.h"
/// Define Debug mode to add additional serial output
//#define DEBUG_FINDA
/// Wrangler for assorted compile-time configuration and constants.
namespace config {

View File

@ -171,6 +171,15 @@ void ReportCommandAccepted(const mp::RequestMsg &rq, mp::ResponseMsgParamCodes s
}
void ReportFINDA(const mp::RequestMsg &rq) {
#ifdef DEBUG_FINDA
using namespace hal;
hu::usart1.puts("FINDA:");
if (hal::gpio::ReadPin(FINDA_PIN) == hal::gpio::Level::high) {
hu::usart1.puts(" TIRGGERED\n");
} else {
hu::usart1.puts(" NOT TRIGGERED\n");
}
#endif //DEBUG_FINDA
uint8_t rsp[maxMsgLen];
uint8_t len = protocol.EncodeResponseReadFINDA(rq, mf::finda.Pressed(), rsp);
WriteToUSART(rsp, len);

View File

@ -1,6 +1,7 @@
#include "finda.h"
#include "../hal/adc.h"
#include "timebase.h"
#include "../hal/gpio.h"
#include "../pins.h"
namespace modules {
namespace finda {
@ -8,7 +9,8 @@ namespace finda {
FINDA finda;
void FINDA::Step() {
debounce::Debouncer::Step(mt::timebase.Millis(), hal::adc::ReadADC(config::findaADCIndex) > config::findaADCDecisionLevel);
debounce::Debouncer::Step(mt::timebase.Millis(), hal::gpio::ReadPin(FINDA_PIN) == hal::gpio::Level::high);
}
} // namespace finda

View File

@ -25,3 +25,5 @@ static constexpr hal::gpio::GPIO_pin SELECTOR_STEP_PIN = { GPIOD, 4 };
static constexpr hal::gpio::GPIO_pin IDLER_CS_PIN = { GPIOB, 7 };
static constexpr hal::gpio::GPIO_pin IDLER_SG_PIN = { GPIOF, 0 };
static constexpr hal::gpio::GPIO_pin IDLER_STEP_PIN = { GPIOD, 6 };
static constexpr hal::gpio::GPIO_pin FINDA_PIN = { GPIOF, 6 }; /// PF6 A1 ADC6/TDI