Serial 自動受信割り込み

serial name(tx, rx, p);

p : ポインタ

受信すると割り込みが発生して*pに受信した値が代入されます。

Committer:
sgrsn
Date:
Sun Jan 17 04:33:00 2016 +0000
Revision:
0:d872f5a93d7b
Child:
1:030faf9701e5
Setrial

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sgrsn 0:d872f5a93d7b 1 #include"serial.h"
sgrsn 0:d872f5a93d7b 2
sgrsn 0:d872f5a93d7b 3
sgrsn 0:d872f5a93d7b 4 serial::serial(PinName p1, PinName p2, int *p) : Serial(p1,p2)
sgrsn 0:d872f5a93d7b 5 {
sgrsn 0:d872f5a93d7b 6 pdata = p;
sgrsn 0:d872f5a93d7b 7 baud(9600);
sgrsn 0:d872f5a93d7b 8 attach(this, &serial::getdata, Serial::RxIrq);
sgrsn 0:d872f5a93d7b 9 }
sgrsn 0:d872f5a93d7b 10
sgrsn 0:d872f5a93d7b 11 void serial::getdata()
sgrsn 0:d872f5a93d7b 12 {
sgrsn 0:d872f5a93d7b 13 if(Serial::readable())
sgrsn 0:d872f5a93d7b 14 {
sgrsn 0:d872f5a93d7b 15 for(int i = 0;i < 8;i++)
sgrsn 0:d872f5a93d7b 16 *(pdata+i) = Serial::getc();
sgrsn 0:d872f5a93d7b 17 }
sgrsn 0:d872f5a93d7b 18 }
sgrsn 0:d872f5a93d7b 19