Continuación de la serie de artículos sobre el editor ensamblador de microcontroladores ARM para el compilador GNU AS
artículo anterior Assembler Editor Plus: Primer borrador
¡Debajo del corte probablemente habrá muchas fotos!
Entonces, tenemos el proyecto de ayer con configuraciones de reloj y un bucle aburrido, ahora intentemos agregarlo de tal manera que veamos los resultados del trabajo en los LED
Recordamos que para poder utilizar algún periférico del microcontrolador necesitamos habilitarlo, para ello utilizamos los registros RCC
Por lo tanto, necesitamos agregar el módulo RCC a nuestro proyecto, para esto comenzamos agregando el módulo al proyecto (vea el artículo anterior si no sabe cómo)
El RCC está ubicado en el bloque PERIPH del microcontrolador, entonces vamos por el árbol "PERIPH" - "Reset and clock control (RCC)" y luego aparecen las opciones:
simplemente puede agregar un archivo de definición de RCC donde se describirán todos los registros de RCC y sus posibles valores
Puede agregar un módulo de configuración de reloj GPIO listo para usar, que nos agregará el módulo RCC y al mismo tiempo proporcionará la interfaz de encendido / apagado GPIO
Al hacer clic en instalar, se le pedirá la ruta y el nombre para guardar el archivo del módulo de configuración de reloj, ya que estos son periféricos, para evitar la inevitable entropía del universo, es mejor guardar este archivo de configuración a lo largo de un camino sensible, elegí el camino src \ periph \ rcc
GPIO
Open407I-C, , Easy , ArmAsmEdit\Add\MCUDoc\DevBoards
2 : GPIOH GPIOI
GPIOH
GPIOH:
DISABLE GPIO
"F4 "
,
, , .include -
main.asm .include ( )
, ,
, ( ), "F4 " . ,
" "
ARM - , - GPIO
, GPIO, , GPIO (, B, C) , .
GPIOH " GPIO", RCC , , src\periph\gpio
"F4" , "F4 ", ! :-)
,
, (. , 2 3), - GPIO , , "F4"
MODER "", ,
FR OTYPER ( , F4 )
,
GPIO, ,
, main.asm .include
, , , , , , !
, :
, LDR, R0, , [LDR R0,=] , ( , ( ), , )
, , "F5 " " " ( Ctrl+3)
( ), :
.GLOBAL - ,
MODULE - (), .include
SWITCH - , ( GPIO)
STM32F4 - , src\inc
STM32F4, AHB1PERIPH_BASE ( ), GPIO, GPIOH, GPIO_ODR
, Reference Manual RM0090
GPIOH GPIOH, R0, ""
R1 MOV GPIOODR, GPIOH, R0, GPIO_ODR ( F5)
( , )
,
, , " " SysTick,
src\core\stk
:
main.asm , BL, F5 , BL SYS F5
R0 - , BL SYSTICK_DELAY. , R0 GPIOH ? - R2 , :
, , ,
, - ...
,