I2C hang recover function added
Dependencies: UniGraphic mbed vt100
In this version, check_i2c_pins function was added in edge_mgr.cpp.
プログラムの起動時、I2Cモジュールを初期化する前に、I2Cに使用するピンの電位を確認し
もし一方でも Low に張り付いていた場合、SCL を GPIO 出力に設定して
所定回数 (I2C_UNLOCK_TRIAL_CYCLE) 反転させることにより、疑似リセットクロックを生成します。
その後は、通常の起動手順に復帰し、以降はこれまでと同様の動作をします。
edge_utils/edge_chart.h@0:d895cd1cd897, 2018-04-03 (annotated)
- Committer:
- Rhyme
- Date:
- Tue Apr 03 08:30:29 2018 +0000
- Revision:
- 0:d895cd1cd897
Initial I2C Pin force reset function added
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Rhyme | 0:d895cd1cd897 | 1 | #ifndef _EDGE_CHART_H_ |
Rhyme | 0:d895cd1cd897 | 2 | #define _EDGE_CHART_H_ |
Rhyme | 0:d895cd1cd897 | 3 | #include "mbed.h" |
Rhyme | 0:d895cd1cd897 | 4 | |
Rhyme | 0:d895cd1cd897 | 5 | typedef struct _edge_chart_st { |
Rhyme | 0:d895cd1cd897 | 6 | char *name ; |
Rhyme | 0:d895cd1cd897 | 7 | int left ; |
Rhyme | 0:d895cd1cd897 | 8 | int top ; |
Rhyme | 0:d895cd1cd897 | 9 | int width ; |
Rhyme | 0:d895cd1cd897 | 10 | int height ; |
Rhyme | 0:d895cd1cd897 | 11 | int index ; |
Rhyme | 0:d895cd1cd897 | 12 | float min ; |
Rhyme | 0:d895cd1cd897 | 13 | float max ; |
Rhyme | 0:d895cd1cd897 | 14 | } edge_chart_type ; |
Rhyme | 0:d895cd1cd897 | 15 | |
Rhyme | 0:d895cd1cd897 | 16 | extern edge_chart_type edge_chart[] ; |
Rhyme | 0:d895cd1cd897 | 17 | |
Rhyme | 0:d895cd1cd897 | 18 | void draw_chart_frame(edge_chart_type *p) ; |
Rhyme | 0:d895cd1cd897 | 19 | void draw_all_chart_frame(void) ; |
Rhyme | 0:d895cd1cd897 | 20 | |
Rhyme | 0:d895cd1cd897 | 21 | |
Rhyme | 0:d895cd1cd897 | 22 | #endif /* _EDGE_CHART_H_ */ |