Some quick code to use UDP-only (no TCP) with mBed. Echos received packets and sends packets when a button is pressed
Core/TCPItem.cpp@0:a548a085de55, 2010-03-14 (annotated)
- Committer:
- pehrhovey
- Date:
- Sun Mar 14 00:54:12 2010 +0000
- Revision:
- 0:a548a085de55
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
pehrhovey | 0:a548a085de55 | 1 | #include "TCPItem.h" |
pehrhovey | 0:a548a085de55 | 2 | |
pehrhovey | 0:a548a085de55 | 3 | using namespace std; |
pehrhovey | 0:a548a085de55 | 4 | using namespace mbed; |
pehrhovey | 0:a548a085de55 | 5 | |
pehrhovey | 0:a548a085de55 | 6 | void TCPItem::abort() const { |
pehrhovey | 0:a548a085de55 | 7 | tcp_abort(this->_pcb); |
pehrhovey | 0:a548a085de55 | 8 | } |
pehrhovey | 0:a548a085de55 | 9 | |
pehrhovey | 0:a548a085de55 | 10 | void TCPItem::release_callbacks() const { |
pehrhovey | 0:a548a085de55 | 11 | tcp_arg(this->_pcb, NULL); |
pehrhovey | 0:a548a085de55 | 12 | tcp_sent(this->_pcb, NULL); |
pehrhovey | 0:a548a085de55 | 13 | tcp_recv(this->_pcb, NULL); |
pehrhovey | 0:a548a085de55 | 14 | tcp_poll(this->_pcb, NULL, 255); |
pehrhovey | 0:a548a085de55 | 15 | tcp_accept(this->_pcb, NULL); |
pehrhovey | 0:a548a085de55 | 16 | tcp_err(this->_pcb, NULL); |
pehrhovey | 0:a548a085de55 | 17 | } |
pehrhovey | 0:a548a085de55 | 18 | |
pehrhovey | 0:a548a085de55 | 19 | err_t TCPItem::close() { |
pehrhovey | 0:a548a085de55 | 20 | err_t err = tcp_close(this->_pcb); |
pehrhovey | 0:a548a085de55 | 21 | this->_pcb = NULL; |
pehrhovey | 0:a548a085de55 | 22 | return err; |
pehrhovey | 0:a548a085de55 | 23 | } |
pehrhovey | 0:a548a085de55 | 24 | |
pehrhovey | 0:a548a085de55 | 25 | void TCPItem::open() { |
pehrhovey | 0:a548a085de55 | 26 | if(!this->_pcb) { |
pehrhovey | 0:a548a085de55 | 27 | this->_pcb = tcp_new(); |
pehrhovey | 0:a548a085de55 | 28 | tcp_arg(this->_pcb, this); |
pehrhovey | 0:a548a085de55 | 29 | } |
pehrhovey | 0:a548a085de55 | 30 | } |