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.
Dependencies: BLE_API mbed nRF51822 circular_buffer
main.cpp@2:96f52163ca48, 2016-01-18 (annotated)
- Committer:
- agufal
- Date:
- Mon Jan 18 15:47:53 2016 +0000
- Revision:
- 2:96f52163ca48
- Parent:
- 1:11ff92032e78
- Child:
- 3:80ceedd5ffac
funciona!
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| agufal | 0:c123bc196680 | 1 | #include "mbed.h" |
| agufal | 0:c123bc196680 | 2 | |
| agufal | 0:c123bc196680 | 3 | I2C i2c(p30, p7); |
| agufal | 0:c123bc196680 | 4 | Serial pc(p9, p11); |
| agufal | 0:c123bc196680 | 5 | //LEDS |
| agufal | 0:c123bc196680 | 6 | DigitalOut led2(LED2); |
| agufal | 0:c123bc196680 | 7 | DigitalOut led1(LED1); |
| agufal | 0:c123bc196680 | 8 | DigitalOut led3(LED3); |
| agufal | 0:c123bc196680 | 9 | DigitalOut led4(LED4); |
| agufal | 0:c123bc196680 | 10 | |
| agufal | 0:c123bc196680 | 11 | int main(){ |
| agufal | 0:c123bc196680 | 12 | |
| agufal | 0:c123bc196680 | 13 | char data_write[2]; |
| agufal | 0:c123bc196680 | 14 | |
| agufal | 0:c123bc196680 | 15 | led1 = 1; |
| agufal | 0:c123bc196680 | 16 | led2 = 1; |
| agufal | 0:c123bc196680 | 17 | led3 = 1; |
| agufal | 0:c123bc196680 | 18 | led4 = 1; |
| agufal | 0:c123bc196680 | 19 | |
| agufal | 2:96f52163ca48 | 20 | data_write[0] = 0x00; |
| agufal | 2:96f52163ca48 | 21 | |
| agufal | 2:96f52163ca48 | 22 | i2c.frequency(400000); |
| agufal | 2:96f52163ca48 | 23 | i2c.start(); |
| agufal | 2:96f52163ca48 | 24 | |
| agufal | 2:96f52163ca48 | 25 | i2c.write(0xAA, data_write, 1); |
| agufal | 2:96f52163ca48 | 26 | |
| agufal | 2:96f52163ca48 | 27 | char data_read[7]; |
| agufal | 2:96f52163ca48 | 28 | i2c.read(0xAB, data_read, 7, true); |
| agufal | 2:96f52163ca48 | 29 | |
| agufal | 2:96f52163ca48 | 30 | if(data_read[0] == 0) |
| agufal | 2:96f52163ca48 | 31 | led1 = 0; |
| agufal | 0:c123bc196680 | 32 | |
| agufal | 2:96f52163ca48 | 33 | if(data_read[1] == 0) |
| agufal | 2:96f52163ca48 | 34 | led2 = 0; |
| agufal | 2:96f52163ca48 | 35 | |
| agufal | 2:96f52163ca48 | 36 | if(data_read[2] == 0) |
| agufal | 2:96f52163ca48 | 37 | led3 = 0; |
| agufal | 2:96f52163ca48 | 38 | |
| agufal | 2:96f52163ca48 | 39 | if(data_read[3] == 0) |
| agufal | 2:96f52163ca48 | 40 | led4 = 0; |
| agufal | 2:96f52163ca48 | 41 | |
| agufal | 2:96f52163ca48 | 42 | i2c.stop(); |
| agufal | 2:96f52163ca48 | 43 | |
| agufal | 2:96f52163ca48 | 44 | //data_write[0] = 0x01; |
| agufal | 2:96f52163ca48 | 45 | //data_write[1] = 0x00; |
| agufal | 2:96f52163ca48 | 46 | //i2c.start(); |
| agufal | 2:96f52163ca48 | 47 | //int status = i2c.write(addr,data_write, 2); |
| agufal | 2:96f52163ca48 | 48 | |
| agufal | 2:96f52163ca48 | 49 | /*if (status != 0) { // Error |
| agufal | 0:c123bc196680 | 50 | while (1) { |
| agufal | 2:96f52163ca48 | 51 | |
| agufal | 0:c123bc196680 | 52 | } |
| agufal | 2:96f52163ca48 | 53 | } */ |
| agufal | 2:96f52163ca48 | 54 | |
| agufal | 2:96f52163ca48 | 55 | //bool haPasado = false; |
| agufal | 2:96f52163ca48 | 56 | |
| agufal | 2:96f52163ca48 | 57 | //i2c.frequency(200000); |
| agufal | 0:c123bc196680 | 58 | |
| agufal | 0:c123bc196680 | 59 | /*while(1){ |
| agufal | 2:96f52163ca48 | 60 | |
| agufal | 2:96f52163ca48 | 61 | i2c.start(); |
| agufal | 2:96f52163ca48 | 62 | |
| agufal | 2:96f52163ca48 | 63 | wait(0.5); |
| agufal | 2:96f52163ca48 | 64 | |
| agufal | 2:96f52163ca48 | 65 | int status = i2c.read(addr, data_read, 3); |
| agufal | 2:96f52163ca48 | 66 | |
| agufal | 2:96f52163ca48 | 67 | if (status == 0) |
| agufal | 2:96f52163ca48 | 68 | haPasado = true; |
| agufal | 2:96f52163ca48 | 69 | |
| agufal | 2:96f52163ca48 | 70 | if (!haPasado) |
| agufal | 2:96f52163ca48 | 71 | led4 = !led4; |
| agufal | 2:96f52163ca48 | 72 | |
| agufal | 2:96f52163ca48 | 73 | i2c.stop(); |
| agufal | 2:96f52163ca48 | 74 | |
| agufal | 2:96f52163ca48 | 75 | }*/ |
| agufal | 0:c123bc196680 | 76 | //i2c.start(); |
| agufal | 2:96f52163ca48 | 77 | /*data_write[0] = 0x00; |
| agufal | 0:c123bc196680 | 78 | i2c.write(addr, data_write, 1,1); |
| agufal | 0:c123bc196680 | 79 | |
| agufal | 0:c123bc196680 | 80 | i2c.read(addr, data_read, 2,0); |
| agufal | 0:c123bc196680 | 81 | |
| agufal | 0:c123bc196680 | 82 | int ch0 =(data_read[0]<<8) | data_read[1]; |
| agufal | 0:c123bc196680 | 83 | |
| agufal | 0:c123bc196680 | 84 | if (ch0 < 0x001FF){ |
| agufal | 0:c123bc196680 | 85 | |
| agufal | 0:c123bc196680 | 86 | led1 = 0; |
| agufal | 0:c123bc196680 | 87 | led2 = 1; |
| agufal | 0:c123bc196680 | 88 | led3 = 1; |
| agufal | 0:c123bc196680 | 89 | } |
| agufal | 0:c123bc196680 | 90 | else if (ch0 > 0x001FF && ch0 < 0x0FFF) { |
| agufal | 0:c123bc196680 | 91 | |
| agufal | 0:c123bc196680 | 92 | led1 = 1; |
| agufal | 0:c123bc196680 | 93 | led2 = 0; |
| agufal | 0:c123bc196680 | 94 | led3 = 1; |
| agufal | 0:c123bc196680 | 95 | |
| agufal | 0:c123bc196680 | 96 | } |
| agufal | 0:c123bc196680 | 97 | else { |
| agufal | 0:c123bc196680 | 98 | led1 = 1; |
| agufal | 0:c123bc196680 | 99 | led2 = 1; |
| agufal | 0:c123bc196680 | 100 | led3 = 0; |
| agufal | 0:c123bc196680 | 101 | } |
| agufal | 0:c123bc196680 | 102 | |
| agufal | 0:c123bc196680 | 103 | //pc.printf("channel 0: %x,%x \n", data_read[0], data_read[1]); |
| agufal | 0:c123bc196680 | 104 | |
| agufal | 0:c123bc196680 | 105 | wait(0.5); |
| agufal | 0:c123bc196680 | 106 | |
| agufal | 0:c123bc196680 | 107 | //i2c.stop(); |
| agufal | 0:c123bc196680 | 108 | } */ |
| agufal | 0:c123bc196680 | 109 | } |
