working on bbc micro

This commit is contained in:
dekunukem
2022-08-04 21:52:47 +01:00
parent 99b2dbd76a
commit c2ca845dbb
10 changed files with 8054 additions and 1 deletions

View File

Binary file not shown.

View File

Binary file not shown.

View File

Binary file not shown.

View File

Binary file not shown.

View File

Binary file not shown.

View File

@@ -410,9 +410,9 @@ int main(void)
/* USER CODE BEGIN 3 */
// m0110 keyboard loop
if(HAL_GPIO_ReadPin(M0110_CLK_GPIO_Port, M0110_CLK_Pin) == GPIO_PIN_RESET)
continue;
m0110a_update();
m0100a_handle_inquiry();
}

159
firmware/bbc_micro/bbc.ioc Normal file
View File

@@ -0,0 +1,159 @@
#MicroXplorer Configuration settings - do not modify
File.Version=6
KeepUserPlacement=false
Mcu.Family=STM32F0
Mcu.IP0=NVIC
Mcu.IP1=RCC
Mcu.IP2=SPI1
Mcu.IP3=SYS
Mcu.IP4=TIM2
Mcu.IP5=TIM14
Mcu.IP6=TIM16
Mcu.IP7=TIM17
Mcu.IP8=USART1
Mcu.IPNb=9
Mcu.Name=STM32F072C(8-B)Tx
Mcu.Package=LQFP48
Mcu.Pin0=PC13
Mcu.Pin1=PA4
Mcu.Pin10=VP_TIM2_VS_ClockSourceINT
Mcu.Pin11=VP_TIM14_VS_ClockSourceINT
Mcu.Pin12=VP_TIM16_VS_ClockSourceINT
Mcu.Pin13=VP_TIM17_VS_ClockSourceINT
Mcu.Pin2=PA5
Mcu.Pin3=PA6
Mcu.Pin4=PA7
Mcu.Pin5=PA9
Mcu.Pin6=PA10
Mcu.Pin7=PA13
Mcu.Pin8=PA14
Mcu.Pin9=VP_SYS_VS_Systick
Mcu.PinsNb=14
Mcu.ThirdPartyNb=0
Mcu.UserConstants=
Mcu.UserName=STM32F072C8Tx
MxCube.Version=4.27.0
MxDb.Version=DB.4.0.270
NVIC.HardFault_IRQn=true\:0\:0\:false\:false\:true\:false
NVIC.NonMaskableInt_IRQn=true\:0\:0\:false\:false\:true\:false
NVIC.PendSV_IRQn=true\:0\:0\:false\:false\:true\:false
NVIC.SPI1_IRQn=true\:0\:0\:false\:false\:true\:true
NVIC.SVC_IRQn=true\:0\:0\:false\:false\:true\:false
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
PA13.Mode=Serial_Wire
PA13.Signal=SYS_SWDIO
PA14.Mode=Serial_Wire
PA14.Signal=SYS_SWCLK
PA4.Mode=NSS_Signal_Hard_Input
PA4.Signal=SPI1_NSS
PA5.Mode=Full_Duplex_Slave
PA5.Signal=SPI1_SCK
PA6.Locked=true
PA6.Mode=Full_Duplex_Slave
PA6.Signal=SPI1_MISO
PA7.Mode=Full_Duplex_Slave
PA7.Signal=SPI1_MOSI
PA9.Mode=Asynchronous
PA9.Signal=USART1_TX
PC13.GPIOParameters=PinState,GPIO_Label
PC13.GPIO_Label=SLAVE_REQ
PC13.Locked=true
PC13.PinState=GPIO_PIN_RESET
PC13.Signal=GPIO_Output
PCC.Checker=false
PCC.Line=STM32F0x2
PCC.MCU=STM32F072C(8-B)Tx
PCC.PartNumber=STM32F072C8Tx
PCC.Seq0=0
PCC.Series=STM32F0
PCC.Temperature=25
PCC.Vdd=3.6
PinOutPanel.RotationAngle=0
ProjectManager.AskForMigrate=true
ProjectManager.BackupPrevious=false
ProjectManager.CompilerOptimize=6
ProjectManager.ComputerToolchain=false
ProjectManager.CoupleFile=false
ProjectManager.CustomerFirmwarePackage=
ProjectManager.DefaultFWLocation=true
ProjectManager.DeletePrevious=true
ProjectManager.DeviceId=STM32F072C8Tx
ProjectManager.FirmwarePackage=STM32Cube FW_F0 V1.9.0
ProjectManager.FreePins=false
ProjectManager.HalAssertFull=false
ProjectManager.HeapSize=0x200
ProjectManager.KeepUserCode=true
ProjectManager.LastFirmware=true
ProjectManager.LibraryCopy=1
ProjectManager.MainLocation=Src
ProjectManager.NoMain=false
ProjectManager.PreviousToolchain=
ProjectManager.ProjectBuild=false
ProjectManager.ProjectFileName=bbc.ioc
ProjectManager.ProjectName=bbc
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
RCC.AHBFreq_Value=48000000
RCC.APB1Freq_Value=48000000
RCC.APB1TimFreq_Value=48000000
RCC.CECFreq_Value=32786.88524590164
RCC.FCLKCortexFreq_Value=48000000
RCC.FamilyName=M
RCC.HCLKFreq_Value=48000000
RCC.HSICECFreq_Value=32786.88524590164
RCC.I2C1Freq_Value=48000000
RCC.I2SFreq_Value=48000000
RCC.I2c1ClockSelection=RCC_I2C1CLKSOURCE_SYSCLK
RCC.IPParameters=AHBFreq_Value,APB1Freq_Value,APB1TimFreq_Value,CECFreq_Value,FCLKCortexFreq_Value,FamilyName,HCLKFreq_Value,HSICECFreq_Value,I2C1Freq_Value,I2SFreq_Value,I2c1ClockSelection,MCOFreq_Value,PLLCLKFreq_Value,PLLMCOFreq_Value,SYSCLKFreq_VALUE,SYSCLKSource,TimSysFreq_Value,USART1Freq_Value,USART2Freq_Value,Usart1ClockSelection,VCOOutput2Freq_Value
RCC.MCOFreq_Value=48000000
RCC.PLLCLKFreq_Value=16000000
RCC.PLLMCOFreq_Value=16000000
RCC.SYSCLKFreq_VALUE=48000000
RCC.SYSCLKSource=RCC_SYSCLKSOURCE_HSI48
RCC.TimSysFreq_Value=48000000
RCC.USART1Freq_Value=48000000
RCC.USART2Freq_Value=48000000
RCC.Usart1ClockSelection=RCC_USART1CLKSOURCE_SYSCLK
RCC.VCOOutput2Freq_Value=8000000
SPI1.DataSize=SPI_DATASIZE_8BIT
SPI1.Direction=SPI_DIRECTION_2LINES
SPI1.IPParameters=VirtualType,Mode,Direction,DataSize,VirtualNSS
SPI1.Mode=SPI_MODE_SLAVE
SPI1.VirtualNSS=VM_NSSHARD
SPI1.VirtualType=VM_SLAVE
TIM14.AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_ENABLE
TIM14.IPParameters=Prescaler,Period,AutoReloadPreload
TIM14.Period=65535
TIM14.Prescaler=47
TIM16.AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_ENABLE
TIM16.IPParameters=Prescaler,Period,AutoReloadPreload
TIM16.Period=65535
TIM16.Prescaler=47
TIM17.IPParameters=Prescaler,Period
TIM17.Period=10000
TIM17.Prescaler=47
TIM2.IPParameters=Prescaler,Period
TIM2.Period=4294967295
TIM2.Prescaler=47
USART1.BaudRate=115200
USART1.IPParameters=VirtualMode-Asynchronous,BaudRate
USART1.VirtualMode-Asynchronous=VM_ASYNC
VP_SYS_VS_Systick.Mode=SysTick
VP_SYS_VS_Systick.Signal=SYS_VS_Systick
VP_TIM14_VS_ClockSourceINT.Mode=Enable_Timer
VP_TIM14_VS_ClockSourceINT.Signal=TIM14_VS_ClockSourceINT
VP_TIM16_VS_ClockSourceINT.Mode=Enable_Timer
VP_TIM16_VS_ClockSourceINT.Signal=TIM16_VS_ClockSourceINT
VP_TIM17_VS_ClockSourceINT.Mode=Enable_Timer
VP_TIM17_VS_ClockSourceINT.Signal=TIM17_VS_ClockSourceINT
VP_TIM2_VS_ClockSourceINT.Mode=Internal
VP_TIM2_VS_ClockSourceINT.Signal=TIM2_VS_ClockSourceINT
board=custom

2017
pcb/bbc_micro/bbc_micro.brd Normal file
View File

File diff suppressed because it is too large Load Diff

5875
pcb/bbc_micro/bbc_micro.sch Normal file
View File

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,2 @@
pt1:
initial prototype