GNUASコンパイラ用のARMマイクロコントローラ用のアセンブラエディタに関する一連の記事の続き
カットの下にはおそらくたくさんの写真があります!
昨日のプロジェクトでは、クロッキング設定と鈍いループがあります。次に、LEDでの作業結果を確認するために、このプロジェクトを追加してみましょう。
マイクロコントローラの周辺機器を使用するには、それを有効にする必要があることを思い出します。このために、RCCレジスタを使用します。
したがって、RCCモジュールをプロジェクトに追加する必要があります。このために、モジュールをプロジェクトに追加し始めます(方法がわからない場合は、前の記事を参照してください)。
RCCはマイクロコントローラーのPERIPHブロックにあるため、ツリー「PERIPH」-「リセットおよびクロック制御(RCC)」に沿って進むと、オプションが表示されます。
すべてのRCCレジスタとそれらの可能な値が記述されるRCC定義ファイルを追加するだけです
既製のGPIOクロック設定モジュールを追加できます。これにより、RCCモジュールが追加され、同時にGPIOオン/オフインターフェイスが提供されます。
[インストール]をクリックすると、クロッキング構成モジュールのファイルを保存するためのパスと名前の入力を求められます。これらは周辺機器であるため、宇宙の不可避のエントロピーを回避するために、この構成ファイルをに沿って保存することをお勧めします。賢明なパス、私はパス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 , :
, , ,
, - ...
,