multiplayer pong game for LPC 1768
Dependencies: mbed MbedJSONValue mbed-rtos Adafruit_ST7735 Adafruit_GFX EthernetInterface DebouncedInterrupt
main.cpp
- Committer:
- vsoltan
- Date:
- 2020-11-12
- Revision:
- 14:6b20a930e1cb
- Parent:
- 13:95d44f7855ca
- Child:
- 15:9d90f68e53da
File content as of revision 14:6b20a930e1cb:
#include "mbed.h" #include "EthernetInterface.h" #include "network.h" #include "DebouncedInterrupt.h" #define DEBOUNCE 50 DebouncedInterrupt leftButton(p21); DebouncedInterrupt middleButton(p22); DebouncedInterrupt rightButton(p23); EthernetInterface eth; UDPSocket sock; Endpoint nist; volatile int count = 0; volatile int sendFlag = 0; volatile int moveData = 0; // interrupt service routines void pressLeft( void ) { sendFlag = 1; moveData--; } void pressMiddle() { // count++; } void pressRight() { sendFlag = 1; moveData++; } int main() { initEthernet(ð, &sock, &nist); // initialize GPIO leftButton.attach(&pressLeft, IRQ_RISE, DEBOUNCE); middleButton.attach(&pressMiddle, IRQ_RISE, DEBOUNCE); rightButton.attach(&pressRight, IRQ_RISE, DEBOUNCE); char toSend[] = "{\"type\": \"connected\", \"data\": \"Ay whats good\"}"; char readTo[256]; while (1) { if (sendFlag != 0) { printf("Move value: %i\n\r", moveData); sendFlag = 0; moveData = 0; sock.sendTo(nist, toSend, sizeof(toSend) - 1); } int bytesRead = sock.receiveFrom(nist, readTo, sizeof(readTo)); printf("Reading: %i bytes, data: %s\n\r", bytesRead, readTo); wait(.1); } cleanupEthernet(ð, &sock); }