![](/media/cache/profiles/5f14615696649541a025d3d0f8e0447f.jpg.50x50_q85.jpg)
mbed(エンベッド)の仕組みを学び、試作体験!用のサンプル
Dependencies: BD6211F Milkcocoa-os
Fork of MilkcocoaOsSample_Eth by
main.cpp@7:1d4b77d3eed4, 2017-08-07 (annotated)
- Committer:
- jksoft
- Date:
- Mon Aug 07 07:08:25 2017 +0000
- Revision:
- 7:1d4b77d3eed4
- Parent:
- 5:103da32c92c7
First edition
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
jksoft | 0:885b53a42035 | 1 | #include "mbed.h" |
jksoft | 0:885b53a42035 | 2 | #include "Milkcocoa.h" |
jksoft | 0:885b53a42035 | 3 | #include "EthernetInterface.h" |
jksoft | 7:1d4b77d3eed4 | 4 | #include "BD6211F.h" |
jksoft | 0:885b53a42035 | 5 | |
jksoft | 0:885b53a42035 | 6 | EthernetInterface eth; |
jksoft | 0:885b53a42035 | 7 | RawSerial pc(USBTX,USBRX); |
jksoft | 7:1d4b77d3eed4 | 8 | BD6211F motor(D6,D7); |
jksoft | 0:885b53a42035 | 9 | |
jksoft | 0:885b53a42035 | 10 | /************************* Your Milkcocoa Setup *********************************/ |
jksoft | 0:885b53a42035 | 11 | |
jksoft | 1:1ab9d9f92764 | 12 | #define MILKCOCOA_APP_ID "...YOUR_MILKCOCOA_APP_ID..." |
jksoft | 7:1d4b77d3eed4 | 13 | #define MILKCOCOA_DATASTORE "motor" |
jksoft | 0:885b53a42035 | 14 | |
jksoft | 0:885b53a42035 | 15 | /************* Milkcocoa Setup (you don't need to change this!) ******************/ |
jksoft | 0:885b53a42035 | 16 | |
jksoft | 0:885b53a42035 | 17 | #define MILKCOCOA_SERVERPORT 1883 |
jksoft | 0:885b53a42035 | 18 | |
jksoft | 0:885b53a42035 | 19 | /************ Global State (you don't need to change this!) ******************/ |
jksoft | 0:885b53a42035 | 20 | const char MQTT_SERVER[] = MILKCOCOA_APP_ID ".mlkcca.com"; |
jksoft | 0:885b53a42035 | 21 | const char MQTT_CLIENTID[] = __TIME__ MILKCOCOA_APP_ID; |
jksoft | 0:885b53a42035 | 22 | |
jksoft | 0:885b53a42035 | 23 | extern void onpush(MQTT::MessageData& md); |
jksoft | 0:885b53a42035 | 24 | |
jksoft | 0:885b53a42035 | 25 | int main() { |
jksoft | 7:1d4b77d3eed4 | 26 | motor = 0.0; |
jksoft | 0:885b53a42035 | 27 | |
jksoft | 0:885b53a42035 | 28 | pc.baud(9600); |
jksoft | 0:885b53a42035 | 29 | pc.printf("Milkcocoa mbed os ver demo\n\r\n\r\n\r"); |
jksoft | 0:885b53a42035 | 30 | |
jksoft | 0:885b53a42035 | 31 | int ret = eth.connect(); |
jksoft | 0:885b53a42035 | 32 | if (ret != 0) { |
jksoft | 0:885b53a42035 | 33 | printf("\r\nConnection error\r\n"); |
jksoft | 0:885b53a42035 | 34 | return -1; |
jksoft | 0:885b53a42035 | 35 | } |
jksoft | 0:885b53a42035 | 36 | pc.printf("\n\rEthernet connected\n\r"); |
jksoft | 0:885b53a42035 | 37 | |
jksoft | 0:885b53a42035 | 38 | Milkcocoa* milkcocoa = new Milkcocoa(ð, MQTT_SERVER, MILKCOCOA_SERVERPORT, MILKCOCOA_APP_ID, MQTT_CLIENTID); |
jksoft | 0:885b53a42035 | 39 | |
jksoft | 0:885b53a42035 | 40 | milkcocoa->connect(); |
jksoft | 0:885b53a42035 | 41 | |
jksoft | 0:885b53a42035 | 42 | pc.printf("%d\n\r",milkcocoa->on(MILKCOCOA_DATASTORE, "push", onpush)); |
jksoft | 0:885b53a42035 | 43 | |
jksoft | 0:885b53a42035 | 44 | while(1) { |
jksoft | 5:103da32c92c7 | 45 | milkcocoa->loop(); |
jksoft | 0:885b53a42035 | 46 | } |
jksoft | 0:885b53a42035 | 47 | } |
jksoft | 0:885b53a42035 | 48 | |
jksoft | 0:885b53a42035 | 49 | void onpush(MQTT::MessageData& md) |
jksoft | 0:885b53a42035 | 50 | { |
jksoft | 7:1d4b77d3eed4 | 51 | int control = 0; |
jksoft | 0:885b53a42035 | 52 | MQTT::Message &message = md.message; |
jksoft | 0:885b53a42035 | 53 | DataElement de = DataElement((char*)message.payload); |
jksoft | 7:1d4b77d3eed4 | 54 | control = de.getInt("Control"); |
jksoft | 7:1d4b77d3eed4 | 55 | pc.printf("%d\n\r",de.getInt("Control")); |
jksoft | 7:1d4b77d3eed4 | 56 | |
jksoft | 7:1d4b77d3eed4 | 57 | motor = (float)control / 100.0; |
jksoft | 0:885b53a42035 | 58 | } |