mbed Phone Platform
Dependencies: ulaw mbed ConfigFile
Diff: Line.h
- Revision:
- 0:f18953137cb4
- Child:
- 1:0f82c574096f
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Line.h Mon Dec 20 22:55:29 2010 +0000 @@ -0,0 +1,26 @@ +#include "main.h" +#include "mbed.h" +#include "RingBuffer.h" + +class Line { +public: + Line (PinName p_line, PinName p_xline, PinName p_hook, AnalogOut p_dac); + + void poll (); + int enter (enum Mode); + int scan (enum Scan); + +private: + enum Mode mode; + enum Status status; + int dialtimer, dialcount, hooktimer, tonecount; + int hook_last; + DigitalOut line, xline; + DigitalIn hook; + AnalogOut dac; + RingBuffer dial; + + void power (int); + void ring (); + void tone (enum Tone); +};