我试图在STM32F030F4P使用ADC和DMA的Renode上运行一个应用程序,我用dma和adc创建了一个stm32f0.repl文件,如下所示:
dma: DMA.STM32LDMA @ sysbus 0x40020000
[0] -> nvic@[9]
adc: Analog.STM32F0_ADC @ sysbus 0x40012400
referenceVoltage: 3.3
externalEventFrequency: 1000
-> nvic@12
dmaChannel: 1
dmaPeripheral: dma当我运行Renode时,会得到以下错误:
For parameter 'dmaPeripheral' of type 'Antmicro.Renode.Peripherals.DMA.IDMA' found attribute at C:\Program Files\Renode\platforms\cpus\stm32f0.repl:151:5 with value [ReferenceValue: dma]
Parameter is not assignable from the reference value, constructor rejected.
At C:\Program Files\Renode\platforms\cpus\stm32f0.repl:146:6:
adc: Analog.STM32F0_ADC @ sysbus 0x40012400
^dmaPeripheral的正确值是多少?
发布于 2022-10-29 01:32:07
因为它是可选的,所以您可以完全删除它。这将导致DMA不被使用。
看来你写的东西应该是可行的,这是一个错误,这是不可能的。STM32LDMA应该实现IDMA接口,但它没有。
我建议在雷诺德氏GitHub上注册一个bug
免责声明:我是Renode开发人员之一
https://stackoverflow.com/questions/70747853
复制相似问题