2017年2月6日
- C
- EV3技術情報
- ソフトウェア
センサーや変数の値をファイルに出力する
1 | #include "ev3api.h" |
---|---|
2 | #include "app.h" |
3 | |
4 | #if defined(BUILD_MODULE) |
5 | #include "module_cfg.h" |
6 | #else |
7 | #include "kernel_cfg.h" |
8 | #endif |
9 | |
10 | // センサーポートを設定 |
11 | #define color_sensor EV3_PORT_3 |
12 | |
13 | // 待機時間の設定 [msec] |
14 | const uint32_t WAIT_TIME_MS = 100; |
15 | |
16 | void run_task(intptr_t unused) |
17 | { |
18 | ? ? ? ? FILE *file; |
19 | ? ? ? ? int i; |
20 | ? ? ? ? uint8_t val; |
21 | |
22 | ? ? ? ? // ファイルオープン |
23 | ? ? ? ? file = fopen("/log.txt","a"); |
24 | |
25 | ? ? ? ? ev3_speaker_set_volume(5); |
26 | ? ? ? ? ev3_speaker_play_tone(NOTE_G4, 500); |
27 | |
28 | ? ? ? ? for ( i = 0; i < 100; i++ ){ |
29 | ? ? ? ? ? ? ? ? val = (int)ev3_color_sensor_get_rgb_reflect(color_sensor); |
30 | |
31 | ? ? ? ? ? ? ? ? // ファイルに書き込み |
32 | ? ? ? ? ? ? ? ? fprintf(file , "%d,%d\n" , i+1 , val ); |
33 | |
34 | ? ? ? ? ? ? ? ? // 01.秒待機 |
35 | ? ? ? ? ? ? ? ? tslp_tsk(WAIT_TIME_MS); |
36 | ? ? ? ? } |
37 | |
38 | ? ? ? ? // ファイルクローズ |
39 | ? ? ? ? fclose(file); |
40 | |
41 | ? ? ? ? ev3_speaker_play_tone(NOTE_G4, 500); |
42 | } |
43 | |
44 | void main_task(intptr_t unused) { |
45 | ? ? ? ? // センサーの設定 |
46 | ? ? ? ? ev3_sensor_config( color_sensor , COLOR_SENSOR ); |
47 | |
48 | ? ? ? ? // タスクを開始する |
49 | ? ? ? ? act_tsk(RUN_TASK); |
50 | } |
51 |