diff --git a/firmware/bbc_micro/bbc.ioc b/firmware/bbc_micro/bbc.ioc index 2401964..0dbbb48 100644 --- a/firmware/bbc_micro/bbc.ioc +++ b/firmware/bbc_micro/bbc.ioc @@ -4,6 +4,7 @@ KeepUserPlacement=false Mcu.Family=STM32F0 Mcu.IP0=I2C1 Mcu.IP1=NVIC +Mcu.IP10=USB Mcu.IP2=RCC Mcu.IP3=SPI1 Mcu.IP4=SYS @@ -12,33 +13,48 @@ Mcu.IP6=TIM14 Mcu.IP7=TIM16 Mcu.IP8=TIM17 Mcu.IP9=USART1 -Mcu.IPNb=10 +Mcu.IPNb=11 Mcu.Name=STM32F072C(8-B)Tx Mcu.Package=LQFP48 Mcu.Pin0=PC13 -Mcu.Pin1=PA4 -Mcu.Pin10=PA9 -Mcu.Pin11=PA10 -Mcu.Pin12=PA13 -Mcu.Pin13=PA14 -Mcu.Pin14=PB6 -Mcu.Pin15=PB7 -Mcu.Pin16=PB8 -Mcu.Pin17=PB9 -Mcu.Pin18=VP_SYS_VS_Systick -Mcu.Pin19=VP_TIM2_VS_ClockSourceINT -Mcu.Pin2=PA5 -Mcu.Pin20=VP_TIM14_VS_ClockSourceINT -Mcu.Pin21=VP_TIM16_VS_ClockSourceINT -Mcu.Pin22=VP_TIM17_VS_ClockSourceINT -Mcu.Pin3=PA6 -Mcu.Pin4=PA7 -Mcu.Pin5=PB10 -Mcu.Pin6=PB11 -Mcu.Pin7=PB12 -Mcu.Pin8=PB13 -Mcu.Pin9=PB14 -Mcu.PinsNb=23 +Mcu.Pin1=PC14-OSC32_IN +Mcu.Pin10=PB0 +Mcu.Pin11=PB1 +Mcu.Pin12=PB2 +Mcu.Pin13=PB10 +Mcu.Pin14=PB11 +Mcu.Pin15=PB12 +Mcu.Pin16=PB13 +Mcu.Pin17=PB14 +Mcu.Pin18=PB15 +Mcu.Pin19=PA8 +Mcu.Pin2=PC15-OSC32_OUT +Mcu.Pin20=PA9 +Mcu.Pin21=PA11 +Mcu.Pin22=PA12 +Mcu.Pin23=PA13 +Mcu.Pin24=PA14 +Mcu.Pin25=PA15 +Mcu.Pin26=PB3 +Mcu.Pin27=PB4 +Mcu.Pin28=PB5 +Mcu.Pin29=PB6 +Mcu.Pin3=PF1-OSC_OUT +Mcu.Pin30=PB7 +Mcu.Pin31=PB8 +Mcu.Pin32=PB9 +Mcu.Pin33=VP_SYS_VS_Systick +Mcu.Pin34=VP_TIM2_VS_ClockSourceINT +Mcu.Pin35=VP_TIM14_VS_ClockSourceINT +Mcu.Pin36=VP_TIM16_VS_ClockSourceINT +Mcu.Pin37=VP_TIM17_VS_ClockSourceINT +Mcu.Pin4=PA2 +Mcu.Pin5=PA3 +Mcu.Pin6=PA4 +Mcu.Pin7=PA5 +Mcu.Pin8=PA6 +Mcu.Pin9=PA7 +Mcu.PinsNb=38 Mcu.ThirdPartyNb=0 Mcu.UserConstants= Mcu.UserName=STM32F072C8Tx @@ -53,12 +69,26 @@ NVIC.SysTick_IRQn=true\:0\:0\:false\:false\:true\:false NVIC.TIM14_IRQn=true\:3\:0\:true\:false\:true\:true NVIC.TIM16_IRQn=true\:3\:0\:true\:false\:true\:true NVIC.TIM17_IRQn=true\:2\:0\:true\:false\:true\:true -PA10.Mode=Asynchronous -PA10.Signal=USART1_RX +PA11.Mode=Device +PA11.Signal=USB_DM +PA12.Mode=Device +PA12.Signal=USB_DP PA13.Mode=Serial_Wire PA13.Signal=SYS_SWDIO PA14.Mode=Serial_Wire PA14.Signal=SYS_SWCLK +PA15.GPIOParameters=GPIO_Label +PA15.GPIO_Label=MOUSE_RIGHT +PA15.Locked=true +PA15.Signal=GPIO_Output +PA2.GPIOParameters=GPIO_Label +PA2.GPIO_Label=BUTTON0 +PA2.Locked=true +PA2.Signal=GPIO_Output +PA3.GPIOParameters=GPIO_Label +PA3.GPIO_Label=BUTTON1 +PA3.Locked=true +PA3.Signal=GPIO_Output PA4.Mode=NSS_Signal_Hard_Input PA4.Signal=SPI1_NSS PA5.Mode=Full_Duplex_Slave @@ -68,8 +98,20 @@ PA6.Mode=Full_Duplex_Slave PA6.Signal=SPI1_MISO PA7.Mode=Full_Duplex_Slave PA7.Signal=SPI1_MOSI -PA9.Mode=Asynchronous +PA8.GPIOParameters=GPIO_Label +PA8.GPIO_Label=W +PA8.Locked=true +PA8.Signal=GPIO_Output +PA9.Mode=Half_duplex(single_wire_mode) PA9.Signal=USART1_TX +PB0.GPIOParameters=GPIO_Label +PB0.GPIO_Label=DIGIPOT_RESET +PB0.Locked=true +PB0.Signal=GPIO_Output +PB1.GPIOParameters=GPIO_Label +PB1.GPIO_Label=KB_BREAK +PB1.Locked=true +PB1.Signal=GPIO_Input PB10.GPIOParameters=GPIO_Label PB10.GPIO_Label=KB_ROW_C PB10.Locked=true @@ -90,6 +132,26 @@ PB14.GPIOParameters=GPIO_Label PB14.GPIO_Label=KB_COL_D PB14.Locked=true PB14.Signal=GPIO_Input +PB15.GPIOParameters=GPIO_Label +PB15.GPIO_Label=CA2 +PB15.Locked=true +PB15.Signal=GPIO_Input +PB2.GPIOParameters=GPIO_Label +PB2.GPIO_Label=KB_EN +PB2.Locked=true +PB2.Signal=GPXTI2 +PB3.GPIOParameters=GPIO_Label +PB3.GPIO_Label=MOUSE_MID +PB3.Locked=true +PB3.Signal=GPIO_Output +PB4.GPIOParameters=GPIO_Label +PB4.GPIO_Label=MOUSE_LEFT +PB4.Locked=true +PB4.Signal=GPIO_Output +PB5.GPIOParameters=GPIO_Label +PB5.GPIO_Label=MOUSE_YD +PB5.Locked=true +PB5.Signal=GPIO_Output PB6.Mode=I2C PB6.Signal=I2C1_SCL PB7.Mode=I2C @@ -102,11 +164,18 @@ PB9.GPIOParameters=GPIO_Label PB9.GPIO_Label=KB_ROW_B PB9.Locked=true PB9.Signal=GPIO_Input -PC13.GPIOParameters=PinState,GPIO_Label -PC13.GPIO_Label=SLAVE_REQ +PC13.GPIOParameters=GPIO_Label +PC13.GPIO_Label=MOUSE_XD PC13.Locked=true -PC13.PinState=GPIO_PIN_RESET PC13.Signal=GPIO_Output +PC14-OSC32_IN.GPIOParameters=GPIO_Label +PC14-OSC32_IN.GPIO_Label=MOUSE_YA +PC14-OSC32_IN.Locked=true +PC14-OSC32_IN.Signal=GPIO_Output +PC15-OSC32_OUT.GPIOParameters=GPIO_Label +PC15-OSC32_OUT.GPIO_Label=MOUSE_XA +PC15-OSC32_OUT.Locked=true +PC15-OSC32_OUT.Signal=GPIO_Output PCC.Checker=false PCC.Line=STM32F0x2 PCC.MCU=STM32F072C(8-B)Tx @@ -115,6 +184,11 @@ PCC.Seq0=0 PCC.Series=STM32F0 PCC.Temperature=25 PCC.Vdd=3.6 +PF1-OSC_OUT.GPIOParameters=GPIO_Label,PinState +PF1-OSC_OUT.GPIO_Label=SLAVE_REQ +PF1-OSC_OUT.Locked=true +PF1-OSC_OUT.PinState=GPIO_PIN_RESET +PF1-OSC_OUT.Signal=GPIO_Output PinOutPanel.RotationAngle=0 ProjectManager.AskForMigrate=true ProjectManager.BackupPrevious=false @@ -142,7 +216,7 @@ ProjectManager.StackSize=0x400 ProjectManager.TargetToolchain=MDK-ARM V5 ProjectManager.ToolChainLocation= ProjectManager.UnderRoot=false -ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-SystemClock_Config-RCC-false-HAL-false,3-MX_SPI1_Init-SPI1-false-HAL-true,4-MX_USART1_UART_Init-USART1-false-HAL-true,5-MX_TIM2_Init-TIM2-false-HAL-true,6-MX_TIM16_Init-TIM16-false-HAL-true,7-MX_TIM17_Init-TIM17-false-HAL-true,8-MX_TIM14_Init-TIM14-false-HAL-true,9-MX_I2C1_Init-I2C1-false-HAL-true +ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-SystemClock_Config-RCC-false-HAL-false,3-MX_SPI1_Init-SPI1-false-HAL-true,4-MX_USART1_UART_Init-USART1-false-HAL-true,5-MX_TIM2_Init-TIM2-false-HAL-true,6-MX_TIM16_Init-TIM16-false-HAL-true,7-MX_TIM17_Init-TIM17-false-HAL-true,8-MX_TIM14_Init-TIM14-false-HAL-true,9-MX_I2C1_Init-I2C1-false-HAL-true,10-MX_USB_PCD_Init-USB-false-HAL-true RCC.AHBFreq_Value=48000000 RCC.APB1Freq_Value=48000000 RCC.APB1TimFreq_Value=48000000 @@ -165,6 +239,8 @@ RCC.USART1Freq_Value=48000000 RCC.USART2Freq_Value=48000000 RCC.Usart1ClockSelection=RCC_USART1CLKSOURCE_SYSCLK RCC.VCOOutput2Freq_Value=8000000 +SH.GPXTI2.0=GPIO_EXTI2 +SH.GPXTI2.ConfNb=1 SPI1.DataSize=SPI_DATASIZE_8BIT SPI1.Direction=SPI_DIRECTION_2LINES SPI1.IPParameters=VirtualType,Mode,Direction,DataSize,VirtualNSS @@ -186,8 +262,8 @@ TIM2.IPParameters=Prescaler,Period TIM2.Period=4294967295 TIM2.Prescaler=47 USART1.BaudRate=115200 -USART1.IPParameters=VirtualMode-Asynchronous,BaudRate -USART1.VirtualMode-Asynchronous=VM_ASYNC +USART1.IPParameters=BaudRate,VirtualMode-Half_duplex(single_wire_mode) +USART1.VirtualMode-Half_duplex(single_wire_mode)=VM_ASYNC VP_SYS_VS_Systick.Mode=SysTick VP_SYS_VS_Systick.Signal=SYS_VS_Systick VP_TIM14_VS_ClockSourceINT.Mode=Enable_Timer diff --git a/pcb/bbc_micro/bbc_micro.lbr b/pcb/bbc_micro/bbc_micro.lbr index 01939a9..e302417 100644 --- a/pcb/bbc_micro/bbc_micro.lbr +++ b/pcb/bbc_micro/bbc_micro.lbr @@ -228,6 +228,15 @@ by exp-lbrs.ulp + + + + + + + + + @@ -272,6 +281,15 @@ by exp-lbrs.ulp + + + + + + + + + @@ -332,6 +350,23 @@ by exp-lbrs.ulp + + + + + + + + + + + + + + + + +