Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: EthernetInterface IrcBot mbed-rtos mbed
main.cpp@2:23c9ee69c999, 2015-01-17 (annotated)
- Committer:
- deton
- Date:
- Sat Jan 17 05:20:55 2015 +0000
- Revision:
- 2:23c9ee69c999
- Parent:
- 0:e4e22c85b47f
Join channel.
;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
deton | 0:e4e22c85b47f | 1 | #include "mbed.h" |
deton | 0:e4e22c85b47f | 2 | #include "EthernetInterface.h" |
deton | 0:e4e22c85b47f | 3 | #include "IrcBot.h" |
deton | 0:e4e22c85b47f | 4 | |
deton | 2:23c9ee69c999 | 5 | #define NICKNAME "[PHSdeto]" |
deton | 0:e4e22c85b47f | 6 | //#define IRCSERVER "192.168.0.2" |
deton | 0:e4e22c85b47f | 7 | #define IRCSERVER "10.254.166.45" |
deton | 2:23c9ee69c999 | 8 | #define CHANNEL "#splab" |
deton | 2:23c9ee69c999 | 9 | #define RINGNOTIFYCMD "PRIVMSG " CHANNEL " :@deton RING" |
deton | 2:23c9ee69c999 | 10 | #define DEADTIME 20 // [sec] |
deton | 0:e4e22c85b47f | 11 | |
deton | 0:e4e22c85b47f | 12 | Serial pc(USBTX, USBRX); // tx, rx |
deton | 0:e4e22c85b47f | 13 | AnalogIn ain(p17); |
deton | 0:e4e22c85b47f | 14 | DigitalOut led(LED1); |
deton | 0:e4e22c85b47f | 15 | |
deton | 0:e4e22c85b47f | 16 | int main() { |
deton | 0:e4e22c85b47f | 17 | EthernetInterface eth; |
deton | 0:e4e22c85b47f | 18 | eth.init(); //Use DHCP |
deton | 0:e4e22c85b47f | 19 | eth.connect(); |
deton | 2:23c9ee69c999 | 20 | IrcBot irc(NICKNAME, IRCSERVER, 6667, CHANNEL); |
deton | 0:e4e22c85b47f | 21 | irc.connect(); |
deton | 0:e4e22c85b47f | 22 | set_time(1408859241); // need for time(NULL), otherwise time(NULL) returns -1 |
deton | 0:e4e22c85b47f | 23 | time_t prevOnTime = 0; |
deton | 0:e4e22c85b47f | 24 | float f; |
deton | 0:e4e22c85b47f | 25 | while (1){ |
deton | 0:e4e22c85b47f | 26 | f = ain.read(); |
deton | 0:e4e22c85b47f | 27 | pc.printf("%.2f,", f); |
deton | 0:e4e22c85b47f | 28 | if (f > 0.3) { |
deton | 0:e4e22c85b47f | 29 | led = 1; |
deton | 0:e4e22c85b47f | 30 | time_t now = time(NULL); |
deton | 0:e4e22c85b47f | 31 | //pc.printf("[%ld,%ld,%ld]", now, prevOnTime, now - prevOnTime); |
deton | 0:e4e22c85b47f | 32 | if (now - prevOnTime > DEADTIME) { |
deton | 0:e4e22c85b47f | 33 | irc.printfln("%s (%.2f)", RINGNOTIFYCMD, f); |
deton | 0:e4e22c85b47f | 34 | prevOnTime = now; |
deton | 0:e4e22c85b47f | 35 | } |
deton | 0:e4e22c85b47f | 36 | } else { |
deton | 0:e4e22c85b47f | 37 | led = 0; |
deton | 0:e4e22c85b47f | 38 | } |
deton | 0:e4e22c85b47f | 39 | irc.read(); |
deton | 0:e4e22c85b47f | 40 | } |
deton | 0:e4e22c85b47f | 41 | } |
deton | 0:e4e22c85b47f | 42 |