This demo program flashes "Tiffany Yep" in binary on the LEDs and sends "Tiffany Yep makes the net work!" on the serial console and Ethernet port. (Tiffany Yep, a digital communications engineer/model, is my best friend.)

Dependencies:   mbed NetServicesSource

Committer:
NiHaoMike
Date:
Fri Oct 22 21:41:07 2010 +0000
Revision:
0:4d5731f3230c

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
NiHaoMike 0:4d5731f3230c 1 #include "mbed.h"
NiHaoMike 0:4d5731f3230c 2 #include "EthernetNetIf.h"
NiHaoMike 0:4d5731f3230c 3 #include "UDPSocket.h"
NiHaoMike 0:4d5731f3230c 4 PwmOut led1(LED1);
NiHaoMike 0:4d5731f3230c 5 PwmOut led2(LED2);
NiHaoMike 0:4d5731f3230c 6 PwmOut led3(LED3);
NiHaoMike 0:4d5731f3230c 7 PwmOut led4(LED4);
NiHaoMike 0:4d5731f3230c 8 EthernetNetIf eth(IpAddr(192,168,0,50),IpAddr(255,255,255,0),NULL,NULL);
NiHaoMike 0:4d5731f3230c 9 UDPSocket udp;
NiHaoMike 0:4d5731f3230c 10 Serial pc(USBTX, USBRX);
NiHaoMike 0:4d5731f3230c 11 void PWM(char in) {
NiHaoMike 0:4d5731f3230c 12 wait(0.2);
NiHaoMike 0:4d5731f3230c 13 if(in&0x80)
NiHaoMike 0:4d5731f3230c 14 led1.write(1);
NiHaoMike 0:4d5731f3230c 15 else
NiHaoMike 0:4d5731f3230c 16 led1.write(0.01);
NiHaoMike 0:4d5731f3230c 17 if(in&0x40)
NiHaoMike 0:4d5731f3230c 18 led2.write(1);
NiHaoMike 0:4d5731f3230c 19 else
NiHaoMike 0:4d5731f3230c 20 led2.write(0.01);
NiHaoMike 0:4d5731f3230c 21 if(in&0x20)
NiHaoMike 0:4d5731f3230c 22 led3.write(1);
NiHaoMike 0:4d5731f3230c 23 else
NiHaoMike 0:4d5731f3230c 24 led3.write(0.01);
NiHaoMike 0:4d5731f3230c 25 if(in&0x10)
NiHaoMike 0:4d5731f3230c 26 led4.write(1);
NiHaoMike 0:4d5731f3230c 27 else
NiHaoMike 0:4d5731f3230c 28 led4.write(0.01);
NiHaoMike 0:4d5731f3230c 29 wait(0.2);
NiHaoMike 0:4d5731f3230c 30 led1.write(0);
NiHaoMike 0:4d5731f3230c 31 led2.write(0);
NiHaoMike 0:4d5731f3230c 32 led3.write(0);
NiHaoMike 0:4d5731f3230c 33 led4.write(0);
NiHaoMike 0:4d5731f3230c 34 wait(0.1);
NiHaoMike 0:4d5731f3230c 35 if(in&0x08)
NiHaoMike 0:4d5731f3230c 36 led1.write(1);
NiHaoMike 0:4d5731f3230c 37 else
NiHaoMike 0:4d5731f3230c 38 led1.write(0.01);
NiHaoMike 0:4d5731f3230c 39 if(in&0x04)
NiHaoMike 0:4d5731f3230c 40 led2.write(1);
NiHaoMike 0:4d5731f3230c 41 else
NiHaoMike 0:4d5731f3230c 42 led2.write(0.01);
NiHaoMike 0:4d5731f3230c 43 if(in&0x02)
NiHaoMike 0:4d5731f3230c 44 led3.write(1);
NiHaoMike 0:4d5731f3230c 45 else
NiHaoMike 0:4d5731f3230c 46 led3.write(0.01);
NiHaoMike 0:4d5731f3230c 47 if(in&0x01)
NiHaoMike 0:4d5731f3230c 48 led4.write(1);
NiHaoMike 0:4d5731f3230c 49 else
NiHaoMike 0:4d5731f3230c 50 led4.write(0.01);
NiHaoMike 0:4d5731f3230c 51 wait(0.2);
NiHaoMike 0:4d5731f3230c 52 led1.write(0);
NiHaoMike 0:4d5731f3230c 53 led2.write(0);
NiHaoMike 0:4d5731f3230c 54 led3.write(0);
NiHaoMike 0:4d5731f3230c 55 led4.write(0);
NiHaoMike 0:4d5731f3230c 56 }
NiHaoMike 0:4d5731f3230c 57 int main() {
NiHaoMike 0:4d5731f3230c 58 eth.setup();
NiHaoMike 0:4d5731f3230c 59 pc.baud(115200);
NiHaoMike 0:4d5731f3230c 60 led1.period_ms(1);
NiHaoMike 0:4d5731f3230c 61 Host bcast(IpAddr(255,255,255,255),1337,NULL);
NiHaoMike 0:4d5731f3230c 62 udp.bind(bcast);
NiHaoMike 0:4d5731f3230c 63 const char* str="Tiffany Yep makes the net work!\n\r";
NiHaoMike 0:4d5731f3230c 64 while(1) {
NiHaoMike 0:4d5731f3230c 65 pc.printf(str);
NiHaoMike 0:4d5731f3230c 66 wait(0.5);
NiHaoMike 0:4d5731f3230c 67 PWM('T');
NiHaoMike 0:4d5731f3230c 68 PWM('i');
NiHaoMike 0:4d5731f3230c 69 PWM('f');
NiHaoMike 0:4d5731f3230c 70 PWM('f');
NiHaoMike 0:4d5731f3230c 71 PWM('a');
NiHaoMike 0:4d5731f3230c 72 PWM('n');
NiHaoMike 0:4d5731f3230c 73 PWM('y');
NiHaoMike 0:4d5731f3230c 74 udp.sendto(str,strlen(str),&bcast);
NiHaoMike 0:4d5731f3230c 75 PWM('Y');
NiHaoMike 0:4d5731f3230c 76 PWM('e');
NiHaoMike 0:4d5731f3230c 77 PWM('p');
NiHaoMike 0:4d5731f3230c 78
NiHaoMike 0:4d5731f3230c 79 }
NiHaoMike 0:4d5731f3230c 80 }