From 7614a5b92b74e092f7e0cb836776a26fe0936f3f Mon Sep 17 00:00:00 2001 From: "Ben V. Brown" Date: Fri, 1 Jul 2022 17:54:54 +1000 Subject: [PATCH] Fix timer output --- source/Core/BSP/Magic/IRQ.cpp | 1 - source/Core/BSP/Magic/Setup.cpp | 6 +++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/source/Core/BSP/Magic/IRQ.cpp b/source/Core/BSP/Magic/IRQ.cpp index d2e6de8a..60a20474 100644 --- a/source/Core/BSP/Magic/IRQ.cpp +++ b/source/Core/BSP/Magic/IRQ.cpp @@ -87,7 +87,6 @@ void timer0_comp2_callback(void) { // Turn on output PWM_Channel_Enable(PWM_Channel); } else { - TIMER_SetCompValue(TIMER_CH0, TIMER_COMP_ID_1, 0); // Leave output off PWM_Channel_Disable(PWM_Channel); } diff --git a/source/Core/BSP/Magic/Setup.cpp b/source/Core/BSP/Magic/Setup.cpp index 0f14d5eb..2104b548 100644 --- a/source/Core/BSP/Magic/Setup.cpp +++ b/source/Core/BSP/Magic/Setup.cpp @@ -34,13 +34,11 @@ void hardware_init() { gpio_write(TIP_RESISTANCE_SENSE, 0); MSG((char *)"Magic Starting\r\n"); - PWM_Channel_Disable(PWM_Channel); setup_timer_scheduler(); setup_adc(); setup_pwm(); I2C_ClockSet(I2C0_ID, 300000); // Sets clock to around 275kHz TIMER_SetCompValue(TIMER_CH0, TIMER_COMP_ID_1, 0); - PWM_Channel_Enable(PWM_Channel); } void setup_pwm(void) { // Setup PWM we use for driving the tip @@ -49,7 +47,7 @@ void setup_pwm(void) { PWM_CLK_XCLK, // Clock PWM_STOP_ABRUPT, // Stop mode PWM_POL_NORMAL, // Normal Polarity - 50, // Clock Div + 60, // Clock Div 100, // Period 0, // Thres 1 - start at beginng 50, // Thres 2 - turn off at 50% @@ -151,6 +149,8 @@ void setupFUSBIRQ() { void vAssertCalled(void) { MSG((char *)"vAssertCalled\r\n"); + PWM_Channel_Disable(PWM_Channel); + gpio_set_mode(PWM_Out_Pin, GPIO_INPUT_PD_MODE); while (1) ;