HeaderPath=/aux/misc/stm/home/nucleo-test/Inc\r
HeaderFiles=stm32f0xx_it.h;stm32_assert.h;stm32f0xx_hal_conf.h;main.h;\r
SourcePath=/aux/misc/stm/home/nucleo-test/Src\r
-SourceFiles=stm32f0xx_it.c;main.c;\r
+SourceFiles=stm32f0xx_it.c;main.c;stm32f0xx_hal_msp.c;\r
\r
[PreviousLibFiles]\r
-LibFiles=Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_gpio.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_exti.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_system.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_i2c.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_dma.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_bus.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_cortex.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_rcc.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_utils.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_pwr.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_usart.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_crs.h;Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_gpio.c;Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_exti.c;Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_i2c.c;Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_dma.c;Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_pwr.c;Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_usart.c;Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_rcc.c;Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_utils.c;Drivers/CMSIS/Device/ST/STM32F0xx/Include/stm32f030x8.h;Drivers/CMSIS/Device/ST/STM32F0xx/Include/stm32f0xx.h;Drivers/CMSIS/Device/ST/STM32F0xx/Include/system_stm32f0xx.h;Drivers/CMSIS/Device/ST/STM32F0xx/Source/Templates/system_stm32f0xx.c;Drivers/CMSIS/Include/arm_const_structs.h;Drivers/CMSIS/Include/cmsis_gcc.h;Drivers/CMSIS/Include/cmsis_armcc_V6.h;Drivers/CMSIS/Include/core_cmFunc.h;Drivers/CMSIS/Include/core_cm7.h;Drivers/CMSIS/Include/core_sc000.h;Drivers/CMSIS/Include/core_cmInstr.h;Drivers/CMSIS/Include/arm_math.h;Drivers/CMSIS/Include/core_cm0plus.h;Drivers/CMSIS/Include/cmsis_armcc.h;Drivers/CMSIS/Include/core_sc300.h;Drivers/CMSIS/Include/core_cm3.h;Drivers/CMSIS/Include/arm_common_tables.h;Drivers/CMSIS/Include/core_cm0.h;Drivers/CMSIS/Include/core_cm4.h;Drivers/CMSIS/Include/core_cmSimd.h;\r
+LibFiles=Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_gpio.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_exti.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_system.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_dma.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_bus.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_cortex.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_rcc.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_utils.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_pwr.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_i2c.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_tim.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_usart.h;Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_crs.h;Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_gpio.c;Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_exti.c;Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_dma.c;Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_i2c.c;Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_pwr.c;Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_tim.c;Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_usart.c;Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_rcc.c;Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_utils.c;Drivers/CMSIS/Device/ST/STM32F0xx/Include/stm32f030x8.h;Drivers/CMSIS/Device/ST/STM32F0xx/Include/stm32f0xx.h;Drivers/CMSIS/Device/ST/STM32F0xx/Include/system_stm32f0xx.h;Drivers/CMSIS/Device/ST/STM32F0xx/Source/Templates/system_stm32f0xx.c;Drivers/CMSIS/Include/arm_const_structs.h;Drivers/CMSIS/Include/cmsis_gcc.h;Drivers/CMSIS/Include/cmsis_armcc_V6.h;Drivers/CMSIS/Include/core_cmFunc.h;Drivers/CMSIS/Include/core_cm7.h;Drivers/CMSIS/Include/core_sc000.h;Drivers/CMSIS/Include/core_cmInstr.h;Drivers/CMSIS/Include/arm_math.h;Drivers/CMSIS/Include/core_cm0plus.h;Drivers/CMSIS/Include/cmsis_armcc.h;Drivers/CMSIS/Include/core_sc300.h;Drivers/CMSIS/Include/core_cm3.h;Drivers/CMSIS/Include/arm_common_tables.h;Drivers/CMSIS/Include/core_cm0.h;Drivers/CMSIS/Include/core_cm4.h;Drivers/CMSIS/Include/core_cmSimd.h;\r
\r
[PreviousUsedMakefileFiles]\r
-SourceFiles=Src/main.c;Src/stm32f0xx_it.c;/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_gpio.c;/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_exti.c;/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_i2c.c;/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_dma.c;/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_pwr.c;/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_usart.c;/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_rcc.c;/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_utils.c;/Src/system_stm32f0xx.c;/aux/misc/stm/F0-package/Drivers/CMSIS/Device/ST/STM32F0xx/Source/Templates/system_stm32f0xx.c;null;\r
+SourceFiles=Src/main.c;Src/stm32f0xx_it.c;/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_gpio.c;/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_exti.c;/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_dma.c;/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_i2c.c;/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_pwr.c;/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_tim.c;/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_usart.c;/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_rcc.c;/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_utils.c;/Src/system_stm32f0xx.c;/aux/misc/stm/F0-package/Drivers/CMSIS/Device/ST/STM32F0xx/Source/Templates/system_stm32f0xx.c;/aux/misc/stm/home/nucleo-test///startup_stm32f030x8.s;\r
HeaderPath=/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Inc;/aux/misc/stm/F0-package/Drivers/CMSIS/Device/ST/STM32F0xx/Include;/aux/misc/stm/F0-package/Drivers/CMSIS/Include;Inc;\r
CDefines=USE_FULL_LL_DRIVER;\r
\r
#define __MAIN_H__
/* Includes ------------------------------------------------------------------*/
+#include "stm32f0xx_ll_dma.h"
#include "stm32f0xx_ll_i2c.h"
#include "stm32f0xx_ll_crs.h"
#include "stm32f0xx_ll_rcc.h"
#include "stm32f0xx_ll_cortex.h"
#include "stm32f0xx_ll_utils.h"
#include "stm32f0xx_ll_pwr.h"
-#include "stm32f0xx_ll_dma.h"
+#include "stm32f0xx_ll_tim.h"
#include "stm32f0xx_ll_usart.h"
#include "stm32f0xx_ll_gpio.h"
#define USART_RX_GPIO_Port GPIOA
#define LD2_Pin LL_GPIO_PIN_5
#define LD2_GPIO_Port GPIOA
+#define THERMO_Pin LL_GPIO_PIN_7
+#define THERMO_GPIO_Port GPIOA
#define BMP_DONE_Pin LL_GPIO_PIN_9
#define BMP_DONE_GPIO_Port GPIOC
#define TMS_Pin LL_GPIO_PIN_13
/* Exported functions ------------------------------------------------------- */
void SysTick_Handler(void);
+void DMA1_Channel4_5_IRQHandler(void);
+void TIM3_IRQHandler(void);
#ifdef __cplusplus
}
##########################################################################################################################
-# File automatically-generated by tool: [projectgenerator] version: [2.27.0] date: [Sat May 26 15:30:56 CEST 2018]
+# File automatically-generated by tool: [projectgenerator] version: [2.27.0] date: [Thu Jul 05 23:11:33 CEST 2018]
##########################################################################################################################
# ------------------------------------------------
# 2015-07-22 - first version
# ------------------------------------------------
+.DEFAULT_GOAL := flash
+
######################################
# target
######################################
-TARGET = test
+TARGET = nucleo-test
######################################
/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_exti.c \
/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_usart.c \
/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_gpio.c \
-/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_pwr.c \
/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_utils.c \
/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_rcc.c \
/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_dma.c \
-/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_i2c.c
+/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_i2c.c \
+/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_tim.c \
+/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_pwr.c
# ASM sources
ASM_SOURCES = \
all: $(BUILD_DIR)/$(TARGET).elf $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).bin
flash: all
- LD_LIBRARY_PATH=../stlink ../stlink/st-flash write $(BUILD_DIR)/$(TARGET).bin 0x8000000
+ ../bin/st-flash write $(BUILD_DIR)/$(TARGET).bin 0x8000000
#######################################
static void LL_Init(void);
void SystemClock_Config(void);
static void MX_GPIO_Init(void);
+static void MX_DMA_Init(void);
static void MX_USART2_UART_Init(void);
static void MX_I2C1_Init(void);
+static void MX_TIM3_Init(void);
/* USER CODE BEGIN PFP */
/* Private function prototypes -----------------------------------------------*/
/* Initialize all configured peripherals */
MX_GPIO_Init();
+ MX_DMA_Init();
MX_USART2_UART_Init();
MX_I2C1_Init();
+ MX_TIM3_Init();
/* USER CODE BEGIN 2 */
run_test();
}
+/* TIM3 init function */
+static void MX_TIM3_Init(void)
+{
+
+ LL_TIM_InitTypeDef TIM_InitStruct;
+ LL_TIM_OC_InitTypeDef TIM_OC_InitStruct;
+
+ LL_GPIO_InitTypeDef GPIO_InitStruct;
+
+ /* Peripheral clock enable */
+ LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_TIM3);
+
+ /* TIM3 DMA Init */
+
+ /* TIM3_CH1_TRIG Init */
+ LL_DMA_SetDataTransferDirection(DMA1, LL_DMA_CHANNEL_4, LL_DMA_DIRECTION_PERIPH_TO_MEMORY);
+
+ LL_DMA_SetChannelPriorityLevel(DMA1, LL_DMA_CHANNEL_4, LL_DMA_PRIORITY_VERYHIGH);
+
+ LL_DMA_SetMode(DMA1, LL_DMA_CHANNEL_4, LL_DMA_MODE_NORMAL);
+
+ LL_DMA_SetPeriphIncMode(DMA1, LL_DMA_CHANNEL_4, LL_DMA_PERIPH_NOINCREMENT);
+
+ LL_DMA_SetMemoryIncMode(DMA1, LL_DMA_CHANNEL_4, LL_DMA_MEMORY_NOINCREMENT);
+
+ LL_DMA_SetPeriphSize(DMA1, LL_DMA_CHANNEL_4, LL_DMA_PDATAALIGN_WORD);
+
+ LL_DMA_SetMemorySize(DMA1, LL_DMA_CHANNEL_4, LL_DMA_MDATAALIGN_WORD);
+
+ /* TIM3 interrupt Init */
+ NVIC_SetPriority(TIM3_IRQn, 0);
+ NVIC_EnableIRQ(TIM3_IRQn);
+
+ TIM_InitStruct.Prescaler = 31;
+ TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP;
+ TIM_InitStruct.Autoreload = 0;
+ TIM_InitStruct.ClockDivision = LL_TIM_CLOCKDIVISION_DIV1;
+ LL_TIM_Init(TIM3, &TIM_InitStruct);
+
+ LL_TIM_DisableARRPreload(TIM3);
+
+ LL_TIM_SetClockSource(TIM3, LL_TIM_CLOCKSOURCE_INTERNAL);
+
+ TIM_OC_InitStruct.OCMode = LL_TIM_OCMODE_FROZEN;
+ TIM_OC_InitStruct.OCState = LL_TIM_OCSTATE_DISABLE;
+ TIM_OC_InitStruct.OCNState = LL_TIM_OCSTATE_DISABLE;
+ TIM_OC_InitStruct.CompareValue = 0;
+ TIM_OC_InitStruct.OCPolarity = LL_TIM_OCPOLARITY_HIGH;
+ LL_TIM_OC_Init(TIM3, LL_TIM_CHANNEL_CH1, &TIM_OC_InitStruct);
+
+ LL_TIM_OC_DisableFast(TIM3, LL_TIM_CHANNEL_CH1);
+
+ TIM_OC_InitStruct.OCMode = LL_TIM_OCMODE_ACTIVE;
+ TIM_OC_InitStruct.OCState = LL_TIM_OCSTATE_DISABLE;
+ TIM_OC_InitStruct.OCNState = LL_TIM_OCSTATE_DISABLE;
+ LL_TIM_OC_Init(TIM3, LL_TIM_CHANNEL_CH2, &TIM_OC_InitStruct);
+
+ LL_TIM_OC_DisableFast(TIM3, LL_TIM_CHANNEL_CH2);
+
+ LL_TIM_SetTriggerOutput(TIM3, LL_TIM_TRGO_RESET);
+
+ LL_TIM_DisableMasterSlaveMode(TIM3);
+
+ /**TIM3 GPIO Configuration
+ PA7 ------> TIM3_CH2
+ */
+ GPIO_InitStruct.Pin = THERMO_Pin;
+ GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE;
+ GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_HIGH;
+ GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_OPENDRAIN;
+ GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
+ GPIO_InitStruct.Alternate = LL_GPIO_AF_1;
+ LL_GPIO_Init(THERMO_GPIO_Port, &GPIO_InitStruct);
+
+}
+
/* USART2 init function */
static void MX_USART2_UART_Init(void)
{
}
+/**
+ * Enable DMA controller clock
+ */
+static void MX_DMA_Init(void)
+{
+ /* Init with LL driver */
+ /* DMA controller clock enable */
+ LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_DMA1);
+
+ /* DMA interrupt init */
+ /* DMA1_Channel4_5_IRQn interrupt configuration */
+ NVIC_SetPriority(DMA1_Channel4_5_IRQn, 0);
+ NVIC_EnableIRQ(DMA1_Channel4_5_IRQn);
+
+}
+
/** Configure pins as
* Analog
* Input
/* please refer to the startup file (startup_stm32f0xx.s). */
/******************************************************************************/
+/**
+* @brief This function handles DMA1 channel 4 and 5 interrupts.
+*/
+void DMA1_Channel4_5_IRQHandler(void)
+{
+ /* USER CODE BEGIN DMA1_Channel4_5_IRQn 0 */
+
+ /* USER CODE END DMA1_Channel4_5_IRQn 0 */
+
+ /* USER CODE BEGIN DMA1_Channel4_5_IRQn 1 */
+
+ /* USER CODE END DMA1_Channel4_5_IRQn 1 */
+}
+
+/**
+* @brief This function handles TIM3 global interrupt.
+*/
+void TIM3_IRQHandler(void)
+{
+ /* USER CODE BEGIN TIM3_IRQn 0 */
+
+ /* USER CODE END TIM3_IRQn 0 */
+ /* USER CODE BEGIN TIM3_IRQn 1 */
+
+ /* USER CODE END TIM3_IRQn 1 */
+}
+
/* USER CODE BEGIN 1 */
/* USER CODE END 1 */
}
}
-#else
+#elif 0
static const byte Gentium23x32[] = {
0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x1F, 0x00, 0x80, 0xFF, 0xFF, 0x00, 0xE0, 0xFF, 0xFF, 0x03, 0xF0, 0xFF, 0xFF, 0x0F, 0xF8, 0xFF, 0xFF, 0x1F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFE, 0x01, 0xE0, 0x3F, 0x3E, 0x00, 0x00, 0x7F, 0x1F, 0x00, 0x00, 0x7C, 0x0F, 0x00, 0x00, 0x78, 0x0F, 0x00, 0x00, 0x78, 0x1F, 0x00, 0x00, 0x78, 0x3F, 0x00, 0x00, 0x78, 0x7F, 0x00, 0x00, 0x3E, 0xFE, 0x07, 0xC0, 0x3F, 0xFE, 0xFF, 0xFF, 0x1F, 0xFC, 0xFF, 0xFF, 0x0F, 0xF8, 0xFF, 0xFF, 0x07, 0xE0, 0xFF, 0xFF, 0x03, 0x80, 0xFF, 0xFF, 0x00, 0x00, 0xFC, 0x0F, 0x00, // Code for char 0
}
}
+#else
+
+static void ds18b20_reset(void)
+{
+ debug_puts("DS18B20: Reset\r\n");
+ //LL_TIM_DisableCounter(TIM3);
+ LL_TIM_SetOnePulseMode(TIM3, LL_TIM_ONEPULSEMODE_SINGLE);
+
+ LL_TIM_OC_InitTypeDef oc;
+ oc.OCMode = LL_TIM_OCMODE_FORCED_ACTIVE;
+ oc.OCState = LL_TIM_OCSTATE_ENABLE;
+ oc.OCNState = LL_TIM_OCSTATE_DISABLE;
+ oc.CompareValue = 480;
+ oc.OCPolarity = LL_TIM_OCPOLARITY_LOW;
+ LL_TIM_OC_Init(TIM3, LL_TIM_CHANNEL_CH2, &oc);
+
+ LL_TIM_SetAutoReload(TIM3, 999);
+ LL_TIM_OC_SetMode(TIM3, LL_TIM_CHANNEL_CH2, LL_TIM_OCMODE_INACTIVE);
+
+ LL_TIM_EnableCounter(TIM3);
+ while (!LL_TIM_IsEnabledCounter(TIM3))
+ ;
+ // Counter is automatically disabled at the end of cycle
+}
+
+static void ds18b20_send_byte(byte b)
+{
+ LL_TIM_SetAutoReload(TIM3, 99);
+ for (uint m=0x80; m; m >>= 1)
+ {
+ LL_TIM_OC_SetCompareCH2(TIM3, ((b & m) ? 1 : 89));
+ LL_TIM_OC_SetMode(TIM3, LL_TIM_CHANNEL_CH2, LL_TIM_OCMODE_FORCED_ACTIVE);
+ LL_TIM_OC_SetMode(TIM3, LL_TIM_CHANNEL_CH2, LL_TIM_OCMODE_INACTIVE);
+ LL_TIM_EnableCounter(TIM3);
+ while (LL_TIM_IsEnabledCounter(TIM3))
+ ;
+ // Counter is automatically disabled at the end of cycle
+ }
+}
+
+void run_test(void)
+{
+ uint cnt = 0;
+
+ debug_puts("Init\r\n");
+ NVIC_DisableIRQ(TIM3_IRQn);
+
+#if 0
+ LL_GPIO_InitTypeDef GPIO_InitStruct;
+ GPIO_InitStruct.Pin = THERMO_Pin;
+ GPIO_InitStruct.Mode = LL_GPIO_MODE_OUTPUT;
+ GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_HIGH;
+ GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL;
+ GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
+ LL_GPIO_Init(THERMO_GPIO_Port, &GPIO_InitStruct);
+ LL_GPIO_SetOutputPin(THERMO_GPIO_Port, THERMO_Pin);
+#endif
+
+ ds18b20_reset();
+
+ for (;;)
+ {
+ LL_GPIO_TogglePin(LD2_GPIO_Port, LD2_Pin);
+
+ debug_printf("Tick tock: %d\r\n", cnt);
+ // ds18b20_send_byte(0xcc);
+ ds18b20_reset();
+
+ LL_GPIO_TogglePin(LD2_GPIO_Port, LD2_Pin);
+
+ LL_mDelay(100);
+ cnt++;
+ }
+}
+
#endif
\r
<filestoremove>\r
<file>\r
+ <name>Src/stm32f0xx_hal_msp.c</name>\r
+ <name>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_tim.c</name>\r
+ <name>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_tim_ex.c</name>\r
+ <name>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc.c</name>\r
+ <name>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc_ex.c</name>\r
+ <name>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal.c</name>\r
+ <name>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_i2c.c</name>\r
+ <name>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_i2c_ex.c</name>\r
+ <name>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_gpio.c</name>\r
+ <name>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_dma.c</name>\r
+ <name>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_cortex.c</name>\r
+ <name>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pwr.c</name>\r
+ <name>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pwr_ex.c</name>\r
+ <name>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_flash.c</name>\r
+ <name>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_flash_ex.c</name>\r
</file>\r
</filestoremove>\r
\r
<include></include>\r
</Aincludes>\r
<Cincludes>\r
+ <include>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Inc/Legacy</include>\r
</Cincludes>\r
</inctoremove>\r
\r
<name>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_exti.c</name>\r
</file>\r
<file>\r
- <name>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_i2c.c</name>\r
+ <name>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_dma.c</name>\r
</file>\r
<file>\r
- <name>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_dma.c</name>\r
+ <name>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_i2c.c</name>\r
</file>\r
<file>\r
<name>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_pwr.c</name>\r
</file>\r
+ <file>\r
+ <name>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_tim.c</name>\r
+ </file>\r
<file>\r
<name>/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_usart.c</name>\r
</file>\r
#MicroXplorer Configuration settings - do not modify
+Dma.Request0=TIM3_CH1/TRIG
+Dma.RequestsNb=1
+Dma.TIM3_CH1/TRIG.0.Direction=DMA_PERIPH_TO_MEMORY
+Dma.TIM3_CH1/TRIG.0.Instance=DMA1_Channel4
+Dma.TIM3_CH1/TRIG.0.MemDataAlignment=DMA_MDATAALIGN_WORD
+Dma.TIM3_CH1/TRIG.0.MemInc=DMA_MINC_DISABLE
+Dma.TIM3_CH1/TRIG.0.Mode=DMA_NORMAL
+Dma.TIM3_CH1/TRIG.0.PeriphDataAlignment=DMA_PDATAALIGN_WORD
+Dma.TIM3_CH1/TRIG.0.PeriphInc=DMA_PINC_DISABLE
+Dma.TIM3_CH1/TRIG.0.Priority=DMA_PRIORITY_VERY_HIGH
+Dma.TIM3_CH1/TRIG.0.RequestParameters=Instance,Direction,PeriphInc,MemInc,PeriphDataAlignment,MemDataAlignment,Mode,Priority
File.Version=6
KeepUserPlacement=true
Mcu.Family=STM32F0
-Mcu.IP0=I2C1
-Mcu.IP1=NVIC
-Mcu.IP2=RCC
-Mcu.IP3=SYS
-Mcu.IP4=USART2
-Mcu.IPNb=5
+Mcu.IP0=DMA
+Mcu.IP1=I2C1
+Mcu.IP2=NVIC
+Mcu.IP3=RCC
+Mcu.IP4=SYS
+Mcu.IP5=TIM3
+Mcu.IP6=USART2
+Mcu.IPNb=7
Mcu.Name=STM32F030R8Tx
Mcu.Package=LQFP64
Mcu.Pin0=PC13
Mcu.Pin1=PC14-OSC32_IN
-Mcu.Pin10=PA14
-Mcu.Pin11=PB8
-Mcu.Pin12=PB9
-Mcu.Pin13=VP_SYS_VS_Systick
+Mcu.Pin10=PA13
+Mcu.Pin11=PA14
+Mcu.Pin12=PB8
+Mcu.Pin13=PB9
+Mcu.Pin14=VP_SYS_VS_Systick
+Mcu.Pin15=VP_TIM3_VS_ClockSourceINT
+Mcu.Pin16=VP_TIM3_VS_no_output1
Mcu.Pin2=PC15-OSC32_OUT
Mcu.Pin3=PF0-OSC_IN
Mcu.Pin4=PF1-OSC_OUT
Mcu.Pin5=PA2
Mcu.Pin6=PA3
Mcu.Pin7=PA5
-Mcu.Pin8=PC9
-Mcu.Pin9=PA13
-Mcu.PinsNb=14
+Mcu.Pin8=PA7
+Mcu.Pin9=PC9
+Mcu.PinsNb=17
Mcu.ThirdPartyNb=0
Mcu.UserConstants=
Mcu.UserName=STM32F030R8Tx
MxCube.Version=4.25.1
MxDb.Version=DB.4.0.251
+NVIC.DMA1_Channel4_5_IRQn=true\:0\:0\:false\:false\:true\:false
NVIC.HardFault_IRQn=true\:0\:0\:false\:false\:false\:false
NVIC.NonMaskableInt_IRQn=true\:0\:0\:false\:false\:false\:false
NVIC.PendSV_IRQn=true\:0\:0\:false\:false\:false\:false
NVIC.SVC_IRQn=true\:0\:0\:false\:false\:false\:false
NVIC.SysTick_IRQn=true\:0\:0\:true\:false\:true\:true
+NVIC.TIM3_IRQn=true\:0\:0\:false\:false\:true\:true
PA13.GPIOParameters=GPIO_Label
PA13.GPIO_Label=TMS
PA13.Locked=true
PA5.GPIO_Speed=GPIO_SPEED_FREQ_LOW
PA5.Locked=true
PA5.Signal=GPIO_Output
+PA7.GPIOParameters=GPIO_ModeDefaultPP,GPIO_Speed,GPIO_Label
+PA7.GPIO_Label=THERMO
+PA7.GPIO_ModeDefaultPP=GPIO_MODE_AF_OD
+PA7.GPIO_Speed=GPIO_SPEED_FREQ_HIGH
+PA7.Signal=S_TIM3_CH2
PB8.Locked=true
PB8.Mode=I2C
PB8.Signal=I2C1_SCL
ProjectManager.MainLocation=Src
ProjectManager.PreviousToolchain=
ProjectManager.ProjectBuild=false
-ProjectManager.ProjectFileName=test.ioc
-ProjectManager.ProjectName=test
+ProjectManager.ProjectFileName=nucleo-test.ioc
+ProjectManager.ProjectName=nucleo-test
ProjectManager.StackSize=0x400
ProjectManager.TargetToolchain=Makefile
ProjectManager.ToolChainLocation=
ProjectManager.UnderRoot=false
-ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-LL-true,2-SystemClock_Config-RCC-false-LL-false,3-MX_USART2_UART_Init-USART2-false-LL-true,4-MX_I2C1_Init-I2C1-false-LL-true
+ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-LL-true,2-MX_DMA_Init-DMA-false-LL-true,3-SystemClock_Config-RCC-false-LL-false,4-MX_USART2_UART_Init-USART2-false-LL-true,5-MX_I2C1_Init-I2C1-false-LL-true,6-MX_TIM3_Init-TIM3-false-LL-true
RCC.AHBFreq_Value=32000000
RCC.APB1Freq_Value=32000000
RCC.APB1TimFreq_Value=32000000
RCC.USART1Freq_Value=32000000
SH.GPXTI13.0=GPIO_EXTI13
SH.GPXTI13.ConfNb=1
+SH.S_TIM3_CH2.0=TIM3_CH2,Output Compare2 CH2
+SH.S_TIM3_CH2.ConfNb=1
+TIM3.Channel-Output\ Compare1\ No\ Output=TIM_CHANNEL_1
+TIM3.Channel-Output\ Compare2\ CH2=TIM_CHANNEL_2
+TIM3.IPParameters=Channel-Output Compare1 No Output,Channel-Output Compare2 CH2,Prescaler,OCMode_2
+TIM3.OCMode_2=TIM_OCMODE_ACTIVE
+TIM3.Prescaler=31
USART2.BaudRate=115200
USART2.IPParameters=VirtualMode-Asynchronous,BaudRate
USART2.VirtualMode-Asynchronous=VM_ASYNC
VP_SYS_VS_Systick.Mode=SysTick
VP_SYS_VS_Systick.Signal=SYS_VS_Systick
+VP_TIM3_VS_ClockSourceINT.Mode=Internal
+VP_TIM3_VS_ClockSourceINT.Signal=TIM3_VS_ClockSourceINT
+VP_TIM3_VS_no_output1.Mode=Output Compare1 No Output
+VP_TIM3_VS_no_output1.Signal=TIM3_VS_no_output1
board=NUCLEO-F030R8
boardIOC=true