mbedボードNucleo-64シリーズ用WiFi、SDカード、電源拡張ボード「NC64-BaseShield」用のSDカードアクセスサンプルプログラムです。
Dependencies: SDFileSystem mbed
概要
ST Micro社製のmbedボードNucleo-64シリーズ用の、WiFi、SDカード、電源拡張ボード「NC64-BaseShield」用のSDカードアクセスサンプルプログラムです。
拡張ボード NC64-BaseShieldに関する情報
NC64-BaseShield技術情報はこちらをご覧ください。
使い方
拡張ボードをお使いのNucleo-64ボードに接続し、FAT32フォーマット済みマイクロSDカードをスロットに挿入してください。 サンプルプログラムを実行すると、SDカード内にtestdir/sdtest.txt ファイルが作成され、中に「Hello fun SD Card World!」と書かれていれば成功です。 SDカードはSPIモードでアクセスします。CSはPB2端子を使用するようになっております。PD2を使用する場合はmain.cpp 5行目をPD_2に変更してください。
対応Nucleoボード
USARTはオプションスイッチにより接続を切り替えられるようになっており、2016年12月現在、全ての Nucleo-64シリーズの端子配置に対応しています。(対応とは本ボードの切り替えオプションのいずれかで 対応可能という意味です。端子配置の確認は全てのボードに対して行っておりますが、 動作確認はNUCLEO-F401RE のみとなります。あらかじめ本サイトの技術情報をお読みになった上で、 ご自身の判断でお使いください。)
端子配置確認済みNucleo-64ボード一覧 : F103RB, L152RE, F030R8, F401RE, F302R8, L053R8, F411RE, F334R8, F072RB, F091RC, F303RE, L073RZ, F070RB, F446RE, L476RG, F410RB
main.cpp@0:efba1d05225d, 2017-02-11 (annotated)
- Committer:
- IndoorCorgi
- Date:
- Sat Feb 11 02:17:02 2017 +0000
- Revision:
- 0:efba1d05225d
- Child:
- 1:e8bf714e4ab6
1st Release
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
IndoorCorgi | 0:efba1d05225d | 1 | #include "mbed.h" |
IndoorCorgi | 0:efba1d05225d | 2 | #include "SDFileSystem.h" |
IndoorCorgi | 0:efba1d05225d | 3 | |
IndoorCorgi | 0:efba1d05225d | 4 | //DigitalOut myled(LED1); |
IndoorCorgi | 0:efba1d05225d | 5 | //DigitalIn button(PC_13); |
IndoorCorgi | 0:efba1d05225d | 6 | Serial pc(USBTX, USBRX); |
IndoorCorgi | 0:efba1d05225d | 7 | //SDFileSystem sd(PB_5, PB_4, PB_3, PA_8, "sd"); |
IndoorCorgi | 0:efba1d05225d | 8 | //SDFileSystem sd(PB_15, PB_14, PB_13, PC_2, "sd"); // SPI2 |
IndoorCorgi | 0:efba1d05225d | 9 | SDFileSystem sd(PA_7, PA_6, PA_5, PB_2, "sd"); // SPI1 |
IndoorCorgi | 0:efba1d05225d | 10 | |
IndoorCorgi | 0:efba1d05225d | 11 | |
IndoorCorgi | 0:efba1d05225d | 12 | int main() { |
IndoorCorgi | 0:efba1d05225d | 13 | pc.printf("Start\n"); |
IndoorCorgi | 0:efba1d05225d | 14 | mkdir("/sd/testdir", 0777); |
IndoorCorgi | 0:efba1d05225d | 15 | FILE *fp = fopen("/sd/testdir/sdtest.txt", "w"); |
IndoorCorgi | 0:efba1d05225d | 16 | if(fp == NULL) { |
IndoorCorgi | 0:efba1d05225d | 17 | error("Could not open file for write\n"); |
IndoorCorgi | 0:efba1d05225d | 18 | } |
IndoorCorgi | 0:efba1d05225d | 19 | fprintf(fp, "Hello fun SD Card World!"); |
IndoorCorgi | 0:efba1d05225d | 20 | fclose(fp); |
IndoorCorgi | 0:efba1d05225d | 21 | |
IndoorCorgi | 0:efba1d05225d | 22 | printf("Finished\n"); |
IndoorCorgi | 0:efba1d05225d | 23 | |
IndoorCorgi | 0:efba1d05225d | 24 | while(1) { |
IndoorCorgi | 0:efba1d05225d | 25 | //myled = 1; |
IndoorCorgi | 0:efba1d05225d | 26 | //pc.printf("TEST\n"); |
IndoorCorgi | 0:efba1d05225d | 27 | //wait(1); |
IndoorCorgi | 0:efba1d05225d | 28 | //myled = 0; |
IndoorCorgi | 0:efba1d05225d | 29 | //wait(1); |
IndoorCorgi | 0:efba1d05225d | 30 | } |
IndoorCorgi | 0:efba1d05225d | 31 | } |