micro:bit マイコンの内部レジスタの操作

micro:bit に入力したパルスのパルス幅を測る / GPIO の IN レジスタの変化をポーリング方式で直接読み取る

#include "MicroBit.h" MicroBit uBit; int main(void){ // IN レジスタからは、各 GPIO ラインへの入力信号が H (1) なのか L (0) なのかが読み出せる。 // PIN_CNF[N] レジスタは、特定の GPIO ラインの状態が設定できる。 volatile unsigned int *IN = (u…

micro:bit / マイコンの内部レジスタを操作する / 何かを書き込む / 2 つの端子から同じタイミングで反転パルスを出力する

今度は、反転したパルスを 2 つの端子から同時に出力してみる。 OUTSET レジスタと OUTCLR レジスタとを使えば、複数のビットを同時に H にすること、複数のビットを同時に L にすることができるが、複数のビットの一部だけを H に、一部だけを L に同時に設…

micro:bit / マイコンの内部レジスタを操作する / 何かを書き込む / 2 つの端子から同じタイミングでパルスを出力する

micro:bit の P0、P1 からまったく同じタイミングでパルスを出力してみる。 int main(void){ unsigned int BaseAddress = 0x50000000UL; // GPIO の各種レジスタのベースアドレス // DIRSET は指定のビットだけを出力にセットするレジスタ (指定していないビ…

micro:bit / マイコンの内部レジスタを操作する / 何かを読み取る

データシート:nRF51822 / Bluetooth Low Energy / Products / Home - Ultra Low Power Wireless Solutions from NORDIC SEMICONDUCTOR 例として GPIO の DIR レジスタを読み取ってみる。各 GPIO ラインの入出力の向きを設定するレジスタである。 ベースアド…