71 lines
2.8 KiB
Plaintext
71 lines
2.8 KiB
Plaintext
|
|
*** Variables ***
|
||
|
|
${UART} sysbus.usart1
|
||
|
|
${GREEN_LED} sysbus.gpioPortB.GreenLED
|
||
|
|
${BLUE_LED} sysbus.gpioPortB.BlueLED
|
||
|
|
${USER_BUTTON} sysbus.gpioPortC.UserButton1
|
||
|
|
|
||
|
|
${PROJECT_URL} @https://dl.antmicro.com/projects/renode
|
||
|
|
${UART_PRINTF} ${PROJECT_URL}/stm32wba--cube_mx_UART_Printf.elf-s_414528-276b355f13e0fc82007222130810179e374d275e
|
||
|
|
${EXTI_ToggleLED} ${PROJECT_URL}/stm32wba--cubemx-EXTI_ToggleLedOnIT_Init.elf-s_196736-e4aae2df7e5f275593f31d5d94db7c852c1575f6
|
||
|
|
${SPI_POLLING} ${PROJECT_URL}/stm32wba52--cube_mx--SPI_FullDuplex_ComPolling_Master.elf-s_351444-751cf3ade71c0e0ff33c010a97ab61f9a97e7487
|
||
|
|
${SPI_INTERRUPT} ${PROJECT_URL}/stm32wba52--cube_mx--SPI_FullDuplex_ComIT_Master.elf-s_370676-fdb46bf729f660edb79ff64bf10f6da8e0dc517b
|
||
|
|
|
||
|
|
${PLATFORM} @platforms/boards/nucleo_wba52cg.repl
|
||
|
|
${SPI_LOOPBACK} loopback: SPI.SPILoopback @ spi3
|
||
|
|
|
||
|
|
*** Keywords ***
|
||
|
|
Create Machine
|
||
|
|
[Arguments] ${elf}
|
||
|
|
|
||
|
|
Execute Command mach create
|
||
|
|
Execute Command machine LoadPlatformDescription ${PLATFORM}
|
||
|
|
|
||
|
|
Execute Command sysbus LoadELF ${elf}
|
||
|
|
|
||
|
|
Run SPI Test Case
|
||
|
|
[Arguments] ${elf}
|
||
|
|
|
||
|
|
Create Machine ${elf}
|
||
|
|
Execute Command machine LoadPlatformDescriptionFromString "${SPI_LOOPBACK}"
|
||
|
|
Create LED Tester ${GREEN_LED} defaultTimeout=0.5
|
||
|
|
|
||
|
|
# The green LED should be off to start with
|
||
|
|
Assert LED State false
|
||
|
|
|
||
|
|
# Trigger the SPI transfer
|
||
|
|
Execute Command ${USER_BUTTON} Press
|
||
|
|
|
||
|
|
# The green LED should turn on indicating that the transfer was successful and
|
||
|
|
# the received data was correct (identical to the sent data)
|
||
|
|
Assert LED State true
|
||
|
|
|
||
|
|
*** Test Cases ***
|
||
|
|
Should Have Working UART
|
||
|
|
Create Machine ${UART_PRINTF}
|
||
|
|
Create Terminal Tester ${UART}
|
||
|
|
|
||
|
|
Start Emulation
|
||
|
|
|
||
|
|
Wait For Line On Uart UART Printf Example
|
||
|
|
Wait For Line On Uart ** Test finished successfully. **
|
||
|
|
|
||
|
|
Should have Working EXTI
|
||
|
|
Create Machine ${EXTI_TogglelED}
|
||
|
|
Create LED Tester ${BLUE_LED} defaultTimeout=0.1
|
||
|
|
|
||
|
|
Start Emulation
|
||
|
|
|
||
|
|
Assert LED State false
|
||
|
|
|
||
|
|
Execute Command ${USER_BUTTON} PressAndRelease
|
||
|
|
Assert LED State true
|
||
|
|
|
||
|
|
Execute Command ${USER_BUTTON} PressAndRelease
|
||
|
|
Assert LED State false
|
||
|
|
|
||
|
|
SPI Should Work In Polling Mode
|
||
|
|
Run SPI Test Case ${SPI_POLLING}
|
||
|
|
|
||
|
|
SPI Should Work In Interrupt Mode
|
||
|
|
Run SPI Test Case ${SPI_INTERRUPT}
|