223 lines
6.0 KiB
Plaintext
223 lines
6.0 KiB
Plaintext
nvic: IRQControllers.NVIC @ sysbus 0xE000E000
|
|
priorityMask: 0xF0
|
|
systickFrequency: 8000000
|
|
IRQ -> cpu@0
|
|
|
|
exti: IRQControllers.STM32F4_EXTI @ sysbus 0x40010400
|
|
numberOfOutputLines: 32
|
|
[0, 1] -> nvicInput5@[0, 1]
|
|
[2, 3] -> nvicInput6@[0, 1]
|
|
[4-15] -> nvicInput7@[0-11]
|
|
[21, 22] -> nvicInput12@[0, 1]
|
|
[25] -> nvicInput27@[0]
|
|
[26] -> nvicInput28@[0]
|
|
[28] -> nvicInput29@[0]
|
|
[18, 23, 27] -> nvic@[31, 23, 30]
|
|
|
|
nvicInput5: Miscellaneous.CombinedInput @ none
|
|
numberOfInputs: 2
|
|
-> nvic@5
|
|
|
|
nvicInput6: Miscellaneous.CombinedInput @ none
|
|
numberOfInputs: 2
|
|
-> nvic@6
|
|
|
|
nvicInput7: Miscellaneous.CombinedInput @ none
|
|
numberOfInputs: 12
|
|
-> nvic@7
|
|
|
|
nvicInput12: Miscellaneous.CombinedInput @ none
|
|
numberOfInputs: 3
|
|
-> nvic@12
|
|
|
|
nvicInput27: Miscellaneous.CombinedInput @ none
|
|
numberOfInputs: 2
|
|
-> nvic@27
|
|
|
|
nvicInput28: Miscellaneous.CombinedInput @ none
|
|
numberOfInputs: 2
|
|
-> nvic@28
|
|
|
|
nvicInput29: Miscellaneous.CombinedInput @ none
|
|
numberOfInputs: 7
|
|
-> nvic@29
|
|
|
|
cpu: CPU.CortexM @ sysbus
|
|
cpuType: "cortex-m0"
|
|
nvic: nvic
|
|
PerformanceInMips: 100
|
|
|
|
usart1: UART.STM32F7_USART @ sysbus 0x40013800
|
|
frequency: 200000000
|
|
IRQ -> nvicInput27@1
|
|
|
|
usart2: UART.STM32F7_USART @ sysbus 0x40004400
|
|
frequency: 4000000
|
|
IRQ -> nvicInput28@1
|
|
|
|
usart3: UART.STM32F7_USART @ sysbus 0x40004800
|
|
frequency: 200000000
|
|
IRQ -> nvicInput29@1
|
|
|
|
usart4: UART.STM32F7_USART @ sysbus 0x40004C00
|
|
frequency: 200000000
|
|
IRQ -> nvicInput29@2
|
|
|
|
usart5: UART.STM32F7_USART @ sysbus 0x40005000
|
|
frequency: 200000000
|
|
IRQ -> nvicInput29@3
|
|
|
|
usart6: UART.STM32F7_USART @ sysbus 0x40011400
|
|
frequency: 200000000
|
|
IRQ -> nvicInput29@4
|
|
|
|
usart7: UART.STM32F7_USART @ sysbus 0x40011800
|
|
frequency: 200000000
|
|
IRQ -> nvicInput29@5
|
|
|
|
gpioPortA: GPIOPort.STM32_GPIOPort @ sysbus <0x48000000, +0x400>
|
|
modeResetValue: 0x28000000
|
|
pullUpPullDownResetValue: 0x24000000
|
|
numberOfAFs: 8
|
|
[0-15] -> exti@[0-15]
|
|
|
|
gpioPortB: GPIOPort.STM32_GPIOPort @ sysbus <0x48000400, +0x400>
|
|
modeResetValue: 0x00000000
|
|
pullUpPullDownResetValue: 0x00000000
|
|
numberOfAFs: 8
|
|
[0-15] -> exti@[0-15]
|
|
|
|
gpioPortC: GPIOPort.STM32_GPIOPort @ sysbus <0x48000800, +0x400>
|
|
modeResetValue: 0x00000000
|
|
pullUpPullDownResetValue: 0x00000000
|
|
numberOfAFs: 8
|
|
[0-15] -> exti@[0-15]
|
|
|
|
gpioPortD: GPIOPort.STM32_GPIOPort @ sysbus <0x48000C00, +0x400>
|
|
modeResetValue: 0x00000000
|
|
pullUpPullDownResetValue: 0x00000000
|
|
numberOfAFs: 8
|
|
[0-15] -> exti@[0-15]
|
|
|
|
gpioPortE: GPIOPort.STM32_GPIOPort @ sysbus <0x48001000, +0x400>
|
|
modeResetValue: 0x00000000
|
|
pullUpPullDownResetValue: 0x00000000
|
|
numberOfAFs: 8
|
|
[0-15] -> exti@[0-15]
|
|
|
|
gpioPortF: GPIOPort.STM32_GPIOPort @ sysbus <0x48001400, +0x400>
|
|
modeResetValue: 0x28000000
|
|
pullUpPullDownResetValue: 0x24000000
|
|
numberOfAFs: 8
|
|
[0-15] -> exti@[0-15]
|
|
|
|
i2c1: I2C.STM32F7_I2C @ sysbus 0x40005400
|
|
|
|
i2c2: I2C.STM32F7_I2C @ sysbus 0x40005800
|
|
|
|
spi1: SPI.STM32SPI @ sysbus 0x40013000
|
|
IRQ -> nvic@25
|
|
|
|
spi2: SPI.STM32SPI @ sysbus 0x40003800
|
|
IRQ -> nvic@26
|
|
|
|
timer1: Timers.STM32_Timer @ sysbus <0x40012C00, +0x400>
|
|
frequency: 10000000
|
|
initialLimit: 0xFFFF
|
|
-> nvic@14
|
|
|
|
timer2: Timers.STM32_Timer @ sysbus <0x40000000, +0x400>
|
|
frequency: 10000000
|
|
initialLimit: 0xFFFFFFFF
|
|
-> nvic@15
|
|
|
|
timer3: Timers.STM32_Timer @ sysbus <0x40000400, +0x400>
|
|
frequency: 10000000
|
|
initialLimit: 0xFFFF
|
|
-> nvic@16
|
|
|
|
timer6: Timers.STM32_Timer @ sysbus <0x40001000, +0x400>
|
|
frequency: 10000000
|
|
initialLimit: 0xFFFF
|
|
|
|
timer7: Timers.STM32_Timer @ sysbus <0x40001400, +0x400>
|
|
frequency: 10000000
|
|
initialLimit: 0xFFFF
|
|
-> nvic@18
|
|
|
|
timer14: Timers.STM32_Timer @ sysbus <0x40002000, +0x400>
|
|
frequency: 10000000
|
|
initialLimit: 0xFFFF
|
|
-> nvic@19
|
|
|
|
timer15: Timers.STM32_Timer @ sysbus <0x40014000, +0x400>
|
|
frequency: 10000000
|
|
initialLimit: 0xFFFF
|
|
-> nvic@20
|
|
|
|
timer16: Timers.STM32_Timer @ sysbus <0x40014400, +0x400>
|
|
frequency: 8000000
|
|
initialLimit: 99
|
|
-> nvic@21
|
|
|
|
timer17: Timers.STM32_Timer @ sysbus <0x40014800, +0x400>
|
|
frequency: 10000000
|
|
initialLimit: 0xFFFF
|
|
-> nvic@22
|
|
|
|
can: CAN.STMCAN @ sysbus <0x40006400, +0x400>
|
|
|
|
rtc: Timers.STM32F4_RTC @ sysbus 0x40002800
|
|
// missing TamperIRQ, TimeStampIRQ, WakeupEventIRQ
|
|
AlarmIRQ -> exti@17
|
|
|
|
rcc: Python.PythonPeripheral @ sysbus 0x40021000
|
|
size: 0x400
|
|
initable: true
|
|
script: '''
|
|
if request.isInit:
|
|
lastVal = 0
|
|
elif request.isRead:
|
|
request.value = lastVal
|
|
elif request.isWrite:
|
|
lastVal = request.value
|
|
|
|
self.NoisyLog("%s on FLIPFLOP at 0x%x, value 0x%x" % (str(request.type), request.offset, request.value))
|
|
'''
|
|
|
|
DMA: Python.PythonPeripheral @ sysbus 0x40020000
|
|
size: 0x400
|
|
script: '''
|
|
if request.isWrite and request.offset in (0x10, 0x24, 0x38):
|
|
# writing base address - we write some positive value there in case initialization awaits output
|
|
sysbus.WriteDoubleWord(request.value, 0x40E33333)
|
|
self.NoisyLog("0x%x written with value 0x40E33333" % request.value)
|
|
'''
|
|
|
|
adc: Analog.STM32F0_ADC @ sysbus 0x40012400
|
|
referenceVoltage: 3.3
|
|
externalEventFrequency: 1000
|
|
-> nvicInput12@2
|
|
|
|
crc: CRC.STM32F0_CRC @ sysbus 0x40023000
|
|
configurablePoly: false // Only STM32F07x and STM32F09x implements configurablePoly: true
|
|
|
|
sysbus:
|
|
init:
|
|
Tag <0x40002C00, 0x40002FFF> "WWDG"
|
|
Tag <0x40003000, 0x400033FF> "IWDG"
|
|
Tag <0x40005C00, 0x40005FFF> "USB "
|
|
Tag <0x40006000, 0x400063FF> "USB/CAN SRAM"
|
|
Tag <0x40006C00, 0x40006FFF> "CRS"
|
|
Tag <0x40007000, 0x400073FF> "PWR"
|
|
Tag <0x40007400, 0x400077FF> "DAC"
|
|
Tag <0x40007800, 0x40007BFF> "CEC"
|
|
Tag <0x40010000, 0x400103FF> "SYSCFGCOMP"
|
|
Tag <0x40015800, 0x40015BFF> "DBGMCU"
|
|
Tag <0x40020000, 0x400203FF> "DMA"
|
|
Tag <0x40020400, 0x400207FF> "DMA2"
|
|
Tag <0x40022000, 0x400223FF> "FLASH_INTERFACE"
|
|
Tag <0x40023000, 0x400233FF> "CRC"
|
|
Tag <0x40024000, 0x400243FF> "TSC"
|
|
Tag <0x40021004 4> "RCC_CFGR" 0x0
|