nRF GPIO input
nRF GPIO outputと同じく、myprojectsの下に、......\examples\peripheral\blinkyのblinkyフォルダをコピー適当なフォルダ名に変更。
コピーして作成したフォルダの\myprojects\3_GPIO_input\pca10056\blank\sesの下にあるblinky_pca10056.emProjectをダブルクリックして開く。
#include "boards.h"と今度は、”nrf_delay.h”も削除、またmainの中身も綺麗に削除。
#include "nrf_gpio.h"を代わりに追記する。
こんな感じになる。
ここにタイプしていく。
int main(void)
{
//configration of pins
nrf_gpio_cfg_output(26);
nrf_gpio_cfg_input(2,NRF_GPIO_PIN_PULLUP);
//initialization of LED
nrf_gpio_pin_set(26);
// Vcc---LED ----pin----GND
while(1) {
if(nrf_gpio_pin_read(2)==0){
nrf_gpio_pin_clear(26);// turn on
}
else{
nrf_gpio_pin_set(26);
}
}
}
タイプする途中で、候補が出るので、便利。
ピンをデジタル入力に指定する命令は以下。nrf_gpio_cfg_input(2,NRF_GPIO_PIN_PULLUP);
第一引数:ピンの番号
第一引数:ピンの番号
第二引数:プルアップ、プルダウンの指定。
ピンの状態を読み取るのが、if文の判定部の所で
nrf_gpio_pin_read(2)==0
押されていない時は、ゼロを返す。
この評価ボードは、注釈に書いたように
Vcc---LED ----pin----GND
の順でつながっているので、pinがHIGHの時、LEDには電流が流れずLEDは消えていて押されるとLEDが付く仕組み。
これでボタンを押すとちゃんとLEDが点灯する。【sdk_configについて】
これ開いてみるとSDKの設定がずらりと入っている。
これをGUIで見えるようにするのがよく知られているのでやってみた。
開いてくるファイルの</tools>の前の部分に、
<item name="Tool.CMSIS_Config_Wizard" wait="no">
<menu>&CMSIS Configuration Wizard</menu>
<text>CMSIS Configuration Wizard</text>
<tip>Open a configuration file in CMSIS Configuration Wizard</tip>
<key>Ctrl+Y</key>
<match>*config*.h</match>
<message>CMSIS Config</message>
<commands>
java -jar "$(CMSIS_CONFIG_TOOL)" "$(InputPath)"
</commands>
これをコピペする。
JAVAがインストールされていない場合は以下から実施しておく。
コメント
コメントを投稿