/* * spi_app.cpp * * Created on: 2014/06/06 * Author: sunaga */ #include #include // for sleep #include // for sleep #include "SPI.h" int main() { char addr, buf[8], rx[8]; int l,m,h, p, data; double temp; // char bigdata[320*240*2]; // memset(bigdata, 0x55, 320*240*2); memset(buf, 0, 8); memset(rx, 0, 8); SPI spi(0, SPI_MODE_3, 100000, 8); usleep(1000); // spi.WriteOnly(320*240*2 - 1, bigdata); // return 0; buf[0] = 0x00 + 0x20; buf[1] = 0x90; spi.WriteOnly(2, buf); while(1) { buf[0] = 0xc0 + 0x28; buf[1] = 0x00; spi.WriteRead(4, buf, rx); l = rx[1]; m = rx[2]; h = rx[3]; data = (h << 16) + (m << 8) + l; p = data / 4096; buf[0] = 0x80 + 0x2b; spi.WriteRead(2, buf, rx); l = rx[1]; buf[0] = 0x80 + 0x2c; spi.WriteRead(2, buf, rx); h = rx[1]; short t = (short)((h << 8) + l); temp = t / 480.0 + 42.5; printf("%d %.1f\n", p, temp); sleep(1); } return 0; }