teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

回答に追記

2018/08/17 03:30

投稿

y_waiwai
y_waiwai

スコア88180

answer CHANGED
@@ -8,4 +8,9 @@
8
8
 
9
9
  んじゃ、割り込みハンドラをコンストラクタに渡すというテぐらいしかないですかね
10
10
 
11
- clLimitSensor(int pin0, int HL_On0,INTHANDLER handler) {
11
+ clLimitSensor(int pin0, int HL_On0,INTHANDLER handler) {
12
+
13
+ ---
14
+ それとは別解をひとつ。
15
+ IRQ割り込みはせいぜい16個しかないんだから、あらかじめその全てにハンドラを用意/割り当てておいて、そこから実行するコールバックを登録するという形にすればいいでしょ。
16
+ この場合、Arduinoの標準関数は使えなくなるけど、それは望むところでしょうし

1

回答に追記

2018/08/17 03:30

投稿

y_waiwai
y_waiwai

スコア88180

answer CHANGED
@@ -1,3 +1,11 @@
1
1
  void interrupt(void) {
2
2
 
3
- としてはどうでしょう
3
+ としてはどうでしょう
4
+
5
+ ---
6
+ 考えてみれば、静的でない関数はダメってことなんですね
7
+ #命令コードは一つなんで区別がつかない
8
+
9
+ んじゃ、割り込みハンドラをコンストラクタに渡すというテぐらいしかないですかね
10
+
11
+ clLimitSensor(int pin0, int HL_On0,INTHANDLER handler) {