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:26dc9db5d170, 2017-05-25 (annotated)
- Committer:
- cc061495
- Date:
- Thu May 25 07:54:07 2017 +0000
- Revision:
- 0:26dc9db5d170
- Child:
- 1:91fa4b9c427d
Day3(UART)
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| cc061495 | 0:26dc9db5d170 | 1 | #include "mbed.h" |
| cc061495 | 0:26dc9db5d170 | 2 | #include "TextLCD.h" |
| cc061495 | 0:26dc9db5d170 | 3 | |
| cc061495 | 0:26dc9db5d170 | 4 | TextLCD lcd(PA_0,PA_1,PA_4,PB_0,PC_1,PC_0); // RS, E, D4-D7 |
| cc061495 | 0:26dc9db5d170 | 5 | Serial pc(PA_9,PA_10); |
| cc061495 | 0:26dc9db5d170 | 6 | |
| cc061495 | 0:26dc9db5d170 | 7 | DigitalOut myled(LED1); |
| cc061495 | 0:26dc9db5d170 | 8 | char data[2]; |
| cc061495 | 0:26dc9db5d170 | 9 | char data1[2]; |
| cc061495 | 0:26dc9db5d170 | 10 | char data2[2]; |
| cc061495 | 0:26dc9db5d170 | 11 | char data3[2]; |
| cc061495 | 0:26dc9db5d170 | 12 | char data4[2]; |
| cc061495 | 0:26dc9db5d170 | 13 | char data5[2]; |
| cc061495 | 0:26dc9db5d170 | 14 | char data6[2]; |
| cc061495 | 0:26dc9db5d170 | 15 | char data7[2]; |
| cc061495 | 0:26dc9db5d170 | 16 | char data8[2]; |
| cc061495 | 0:26dc9db5d170 | 17 | |
| cc061495 | 0:26dc9db5d170 | 18 | int angleCal(char highc, char lowc); |
| cc061495 | 0:26dc9db5d170 | 19 | |
| cc061495 | 0:26dc9db5d170 | 20 | int main() { |
| cc061495 | 0:26dc9db5d170 | 21 | pc.baud(115200); |
| cc061495 | 0:26dc9db5d170 | 22 | pc.format(8,SerialBase::None,1); |
| cc061495 | 0:26dc9db5d170 | 23 | //pc.attach(&interrupt,Serial::RxIrq); |
| cc061495 | 0:26dc9db5d170 | 24 | |
| cc061495 | 0:26dc9db5d170 | 25 | |
| cc061495 | 0:26dc9db5d170 | 26 | while(1) { |
| cc061495 | 0:26dc9db5d170 | 27 | if (pc.readable()) { |
| cc061495 | 0:26dc9db5d170 | 28 | pc.gets(data,2); |
| cc061495 | 0:26dc9db5d170 | 29 | |
| cc061495 | 0:26dc9db5d170 | 30 | if(data[0] == 170){ |
| cc061495 | 0:26dc9db5d170 | 31 | pc.gets(data1,2); //0xAA |
| cc061495 | 0:26dc9db5d170 | 32 | pc.gets(data2,2); |
| cc061495 | 0:26dc9db5d170 | 33 | pc.gets(data3,2); |
| cc061495 | 0:26dc9db5d170 | 34 | pc.gets(data4,2); |
| cc061495 | 0:26dc9db5d170 | 35 | pc.gets(data5,2); |
| cc061495 | 0:26dc9db5d170 | 36 | pc.gets(data6,2); |
| cc061495 | 0:26dc9db5d170 | 37 | pc.gets(data7,2); |
| cc061495 | 0:26dc9db5d170 | 38 | pc.gets(data8,2); //0x55 |
| cc061495 | 0:26dc9db5d170 | 39 | lcd.printf("%d,%d,%d",angleCal(data2[0],data3[0]), angleCal(data4[0],data5[0]), angleCal(data6[0],data7[0])); |
| cc061495 | 0:26dc9db5d170 | 40 | } |
| cc061495 | 0:26dc9db5d170 | 41 | } |
| cc061495 | 0:26dc9db5d170 | 42 | wait(1); |
| cc061495 | 0:26dc9db5d170 | 43 | lcd.cls(); |
| cc061495 | 0:26dc9db5d170 | 44 | } |
| cc061495 | 0:26dc9db5d170 | 45 | } |
| cc061495 | 0:26dc9db5d170 | 46 | |
| cc061495 | 0:26dc9db5d170 | 47 | int angleCal(char highc, char lowc) |
| cc061495 | 0:26dc9db5d170 | 48 | { |
| cc061495 | 0:26dc9db5d170 | 49 | int high = highc << 8; |
| cc061495 | 0:26dc9db5d170 | 50 | int low = lowc; |
| cc061495 | 0:26dc9db5d170 | 51 | int angle = (high + low)/100; |
| cc061495 | 0:26dc9db5d170 | 52 | if(angle > 475) |
| cc061495 | 0:26dc9db5d170 | 53 | angle = 180 + (angle - 476); |
| cc061495 | 0:26dc9db5d170 | 54 | return angle; |
| cc061495 | 0:26dc9db5d170 | 55 | } |