@@ -121,21 +121,27 @@ void init_gpio(void) {
GPIO_PinAFConfig(GPIOB, GPIO_PinSource14, GPIO_AF_SPI2);
GPIO_PinAFConfig(GPIOB, GPIO_PinSource15, GPIO_AF_SPI2);
/** USB GPIO Configuration
PA11 ------> USB_DM
PA12 ------> USB_DP
*/
/*Enable or disable the AHB peripheral clock */
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE);
GPIO_InitTypeDef GPIO_InitStruct3;
/*Configure GPIO pin : PA */
GPIO_InitStruct.GPIO_Pin = GPIO_Pin_11|GPIO_Pin_12;
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_AF;
GPIO_InitStruct.GPIO_PuPd = GPIO_PuPd_NOPULL;
GPIO_InitStruct.GPIO_Speed = GPIO_Speed_400KHz;
GPIO_Init(GPIOA, &GPIO_InitStruct);
GPIO_InitStruct3.GPIO_Pin = GPIO_Pin_11|GPIO_Pin_12;
GPIO_InitStruct3.GPIO_Mode = GPIO_Mode_AF;
GPIO_InitStruct3.GPIO_PuPd = GPIO_PuPd_NOPULL;
GPIO_InitStruct3.GPIO_Speed = GPIO_Speed_10MHz;
GPIO_InitStruct3.GPIO_OType = GPIO_OType_PP;
GPIO_Init(GPIOA, &GPIO_InitStruct3);
GPIO_SetBits(GPIOA, GPIO_Pin_12); // emz test
GPIO_PinAFConfig(GPIOA, GPIO_PinSource11, GPIO_AF_USB);
GPIO_PinAFConfig(GPIOA, GPIO_PinSource12, GPIO_AF_USB);
}
// vim:softtabstop=4 shiftwidth=4 expandtab
@@ -87,27 +87,30 @@ int main(void)
// Init OLED over SPI
ssd1306_Init();
ssd1306_clearscreen();
// Check for problems on startup
if(clock_fail) {
ssd1306_DrawString("ERROR: Check Xtal", 3, 0);
delay(2000);
// Init USB
// Set_USBClock();
// USB_Interrupts_Config();
// USB_Init();
//Set_System(); // hw_config.h
Set_USBClock();
USB_Interrupts_Config();
USB_Init();
//SYSCFG_USBPuCmd(ENABLE);
//PowerOn();
// Startup screen
ssd1306_DrawString("therm v0.1", 1, 40);
ssd1306_DrawString("protofusion.org/therm", 3, 0);
delay(1500);
restore_settings();
if(boottobrew)
state = STATE_PREHEAT_BREW; // Go to brew instead of idle if configured thusly
Status change: