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.
main.cpp@0:e725da167cba, 2015-10-30 (annotated)
- Committer:
- japanet
- Date:
- Fri Oct 30 08:24:09 2015 +0000
- Revision:
- 0:e725da167cba
b(`m');
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| japanet | 0:e725da167cba | 1 | #include "mbed.h" |
| japanet | 0:e725da167cba | 2 | |
| japanet | 0:e725da167cba | 3 | #define m1 50 |
| japanet | 0:e725da167cba | 4 | #define m2 55 |
| japanet | 0:e725da167cba | 5 | #define m3 60 |
| japanet | 0:e725da167cba | 6 | #define ue 2 |
| japanet | 0:e725da167cba | 7 | #define st 1 |
| japanet | 0:e725da167cba | 8 | BusOut motor1(dp10,dp14,dp11); |
| japanet | 0:e725da167cba | 9 | BusOut motor2(dp15,dp17,dp16); |
| japanet | 0:e725da167cba | 10 | DigitalOut d(dp26); |
| japanet | 0:e725da167cba | 11 | DigitalIn d1(dp13); |
| japanet | 0:e725da167cba | 12 | DigitalIn d2(dp9); |
| japanet | 0:e725da167cba | 13 | PwmOut pwmPin(dp24); |
| japanet | 0:e725da167cba | 14 | void rotation(BusOut &r , int seigyo) |
| japanet | 0:e725da167cba | 15 | { |
| japanet | 0:e725da167cba | 16 | r = 0; |
| japanet | 0:e725da167cba | 17 | wait_ms(1); |
| japanet | 0:e725da167cba | 18 | r = seigyo; |
| japanet | 0:e725da167cba | 19 | } |
| japanet | 0:e725da167cba | 20 | void m(int x) |
| japanet | 0:e725da167cba | 21 | { |
| japanet | 0:e725da167cba | 22 | pwmPin = 1; |
| japanet | 0:e725da167cba | 23 | rotation(motor1,x); |
| japanet | 0:e725da167cba | 24 | while(d1 != 1); |
| japanet | 0:e725da167cba | 25 | while(d1 == 1); |
| japanet | 0:e725da167cba | 26 | while(d1 != 1); |
| japanet | 0:e725da167cba | 27 | pwmPin = 1; |
| japanet | 0:e725da167cba | 28 | rotation(motor1,4); |
| japanet | 0:e725da167cba | 29 | wait_ms(500); |
| japanet | 0:e725da167cba | 30 | if(d1 != 1) |
| japanet | 0:e725da167cba | 31 | { |
| japanet | 0:e725da167cba | 32 | while(1){ |
| japanet | 0:e725da167cba | 33 | if(x == ue)x = st; |
| japanet | 0:e725da167cba | 34 | else x = ue; |
| japanet | 0:e725da167cba | 35 | pwmPin = 0.3; |
| japanet | 0:e725da167cba | 36 | rotation(motor1,x); |
| japanet | 0:e725da167cba | 37 | while(d1 != 1); |
| japanet | 0:e725da167cba | 38 | pwmPin = 1; |
| japanet | 0:e725da167cba | 39 | rotation(motor1,4); |
| japanet | 0:e725da167cba | 40 | wait_ms(500); |
| japanet | 0:e725da167cba | 41 | if(d1 == 1)break; |
| japanet | 0:e725da167cba | 42 | } |
| japanet | 0:e725da167cba | 43 | } |
| japanet | 0:e725da167cba | 44 | } |
| japanet | 0:e725da167cba | 45 | void t() |
| japanet | 0:e725da167cba | 46 | { |
| japanet | 0:e725da167cba | 47 | pwmPin = 0.7; |
| japanet | 0:e725da167cba | 48 | rotation(motor2,1); |
| japanet | 0:e725da167cba | 49 | while(d2 != 1); |
| japanet | 0:e725da167cba | 50 | while(d2 == 1); |
| japanet | 0:e725da167cba | 51 | pwmPin = 1; |
| japanet | 0:e725da167cba | 52 | rotation(motor2,4); |
| japanet | 0:e725da167cba | 53 | } |
| japanet | 0:e725da167cba | 54 | void ht() |
| japanet | 0:e725da167cba | 55 | { |
| japanet | 0:e725da167cba | 56 | pwmPin = 0.2; |
| japanet | 0:e725da167cba | 57 | rotation(motor2,2); |
| japanet | 0:e725da167cba | 58 | while(d2 != 1); |
| japanet | 0:e725da167cba | 59 | while(d2 == 1); |
| japanet | 0:e725da167cba | 60 | pwmPin = 1; |
| japanet | 0:e725da167cba | 61 | rotation(motor2,4); |
| japanet | 0:e725da167cba | 62 | } |
| japanet | 0:e725da167cba | 63 | int main() |
| japanet | 0:e725da167cba | 64 | { |
| japanet | 0:e725da167cba | 65 | int data = 0; |
| japanet | 0:e725da167cba | 66 | int flag = 0; |
| japanet | 0:e725da167cba | 67 | SPISlave device(dp2,dp1,dp6,dp25); |
| japanet | 0:e725da167cba | 68 | device.format(16,3); |
| japanet | 0:e725da167cba | 69 | device.reply(0x11); |
| japanet | 0:e725da167cba | 70 | device.frequency(400000); |
| japanet | 0:e725da167cba | 71 | motor1 = 4; |
| japanet | 0:e725da167cba | 72 | motor2 = 4; |
| japanet | 0:e725da167cba | 73 | pwmPin = 1; |
| japanet | 0:e725da167cba | 74 | d = 0; |
| japanet | 0:e725da167cba | 75 | while(1) |
| japanet | 0:e725da167cba | 76 | { |
| japanet | 0:e725da167cba | 77 | if(device.receive()) |
| japanet | 0:e725da167cba | 78 | { |
| japanet | 0:e725da167cba | 79 | data = device.read(); |
| japanet | 0:e725da167cba | 80 | } |
| japanet | 0:e725da167cba | 81 | else continue; |
| japanet | 0:e725da167cba | 82 | |
| japanet | 0:e725da167cba | 83 | if(data == m1) |
| japanet | 0:e725da167cba | 84 | { |
| japanet | 0:e725da167cba | 85 | if(flag == 1){ |
| japanet | 0:e725da167cba | 86 | m(ue); |
| japanet | 0:e725da167cba | 87 | } |
| japanet | 0:e725da167cba | 88 | m(ue); |
| japanet | 0:e725da167cba | 89 | d = 1; |
| japanet | 0:e725da167cba | 90 | wait_ms(300); |
| japanet | 0:e725da167cba | 91 | m(st); |
| japanet | 0:e725da167cba | 92 | t(); |
| japanet | 0:e725da167cba | 93 | wait_ms(1000); |
| japanet | 0:e725da167cba | 94 | d = 0; |
| japanet | 0:e725da167cba | 95 | ht(); |
| japanet | 0:e725da167cba | 96 | flag = 1; |
| japanet | 0:e725da167cba | 97 | } |
| japanet | 0:e725da167cba | 98 | if(data == m2) |
| japanet | 0:e725da167cba | 99 | { |
| japanet | 0:e725da167cba | 100 | m(ue); |
| japanet | 0:e725da167cba | 101 | } |
| japanet | 0:e725da167cba | 102 | if(data == m3) |
| japanet | 0:e725da167cba | 103 | { |
| japanet | 0:e725da167cba | 104 | m(st); |
| japanet | 0:e725da167cba | 105 | } |
| japanet | 0:e725da167cba | 106 | data = 0; |
| japanet | 0:e725da167cba | 107 | } |
| japanet | 0:e725da167cba | 108 | } |