Jim Belesiu
/
HelloWorld
First experiment with mbed
Fork of HelloWorld by
Embed:
(wiki syntax)
Show/hide line numbers
main.cpp
00001 // Ultra Sonice Range Finder 00002 // Experiement #1 00003 // Belesiu 00004 // 2014.12.26 00005 00006 #include "mbed.h" 00007 00008 DigitalOut myled(LED1); 00009 00010 I2C rangefinder(p9, p10); // sda, sc1 00011 Serial pc(USBTX, USBRX); // tx, rx 00012 00013 const int addr = 0xE0; 00014 char config_r[2]; 00015 char range_read[2]; 00016 float range; 00017 00018 int main() 00019 { 00020 int x = 0; 00021 00022 while(1) { 00023 00024 // Test serial port 00025 myled = 1; 00026 wait(0.2); 00027 myled = 0; 00028 wait(0.2); 00029 pc.printf("Hello Jim! - %d\n", x++); 00030 00031 // For MB7040 00032 00033 config_r[0] = 0x00; // set pointer reg to ‘cmd register' 00034 config_r[1] = 0x51; // config data byte1 00035 rangefinder.write(addr, config_r, 2); 00036 wait(0.07); 00037 00038 config_r[0] = 0x02; //set pointer reg to 'data register' 00039 rangefinder.write(addr, config_r, 1); //send to pointer 'read range' 00040 rangefinder.read(addr, range_read, 2); //read the two-byte range data 00041 range = ((range_read[0] << 8) + range_read[1]); 00042 00043 pc.printf("Range = %.2f cm\n\r", range); //print range on screen 00044 wait(0.05); 00045 00046 } 00047 }
Generated on Wed Jul 13 2022 20:04:56 by 1.7.2