SSブログ

mbedでインラインアセンブラ [マイコン]

どれもこれもよくわからないが、

main.cpp
://Nucleo_blink_led2
:#include "mbed.h"

:DigitalOut myled(LED1);
:DigitalOut myout(D8);

:int main() {
: while(1) {
: myled = 1; // LED is ON
: myout = 0;
: wait(0.2); // 200 ms
: myled = 0; // LED is OFF
: myout = 1;

: __asm volatile
: (
: " NOP \n"
: " NOP \n"
: " NOP \n"
: " NOP \n"
: );
: wait(1.0); // 1 sec
: }
:}

これでよいのか?  とりあえずは、エラーが出ない。
できあがったバイナリファイルはNOPが無いときより6バイト増えている。
しかし、わからないのは、NOP1つでは無いときと変わらない。

次はもう少し中身のあるアセンブラにしよう。

あっ、: はスペースが消えないように入れただけで、
本当はありません。でも、消えているなあ。インデントはどうするのだ。

追記
見つけました。
STM32マイコンでアセンブリしたい!(インラインアセンブラ編)
http://blueeyes.sakura.ne.jp/2018/01/23/825/

nice!(0)  コメント(0)