ATHANASIOS POLITIS
/
LM74test
LM74 temperature sensor testing, using PC serial and 20x2 text LCD
main.cpp@0:e43dcd4f2ed8, 2011-03-10 (annotated)
- Committer:
- atpolitis
- Date:
- Thu Mar 10 18:26:48 2011 +0000
- Revision:
- 0:e43dcd4f2ed8
First attempt
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
atpolitis | 0:e43dcd4f2ed8 | 1 | // Hello World! for the TextLCD |
atpolitis | 0:e43dcd4f2ed8 | 2 | |
atpolitis | 0:e43dcd4f2ed8 | 3 | #include "mbed.h" |
atpolitis | 0:e43dcd4f2ed8 | 4 | #include "TextLCD.h" |
atpolitis | 0:e43dcd4f2ed8 | 5 | #include "TmpLM74.h" |
atpolitis | 0:e43dcd4f2ed8 | 6 | |
atpolitis | 0:e43dcd4f2ed8 | 7 | DigitalOut myled(LED1); |
atpolitis | 0:e43dcd4f2ed8 | 8 | |
atpolitis | 0:e43dcd4f2ed8 | 9 | //TextLCD lcd(p15, p16, p17, p18, p19, p20, TextLCD::LCD20x4); // rs, e, d4-d7 |
atpolitis | 0:e43dcd4f2ed8 | 10 | //TextLCD lcd(p15, p16, p17, p18, p19, p20, TextLCD::LCD16x2); // rs, e, d4-d7 |
atpolitis | 0:e43dcd4f2ed8 | 11 | TextLCD lcd(p15, p16, p17, p18, p19, p20, TextLCD::LCD20x2); // rs, e, d4-d7 |
atpolitis | 0:e43dcd4f2ed8 | 12 | Serial pc(USBTX, USBRX); // tx, rx |
atpolitis | 0:e43dcd4f2ed8 | 13 | |
atpolitis | 0:e43dcd4f2ed8 | 14 | TmpLM74 Temp74(p5, p6, p7, p8); // LM74 connected on: mosi, miso, sclk, csLM74 |
atpolitis | 0:e43dcd4f2ed8 | 15 | |
atpolitis | 0:e43dcd4f2ed8 | 16 | void showTemp74(void); |
atpolitis | 0:e43dcd4f2ed8 | 17 | |
atpolitis | 0:e43dcd4f2ed8 | 18 | int main() { |
atpolitis | 0:e43dcd4f2ed8 | 19 | |
atpolitis | 0:e43dcd4f2ed8 | 20 | lcd.cls(); |
atpolitis | 0:e43dcd4f2ed8 | 21 | |
atpolitis | 0:e43dcd4f2ed8 | 22 | wait(2); |
atpolitis | 0:e43dcd4f2ed8 | 23 | lcd.locate(0,0); |
atpolitis | 0:e43dcd4f2ed8 | 24 | // lcd.printf("Hello World12345678!"); |
atpolitis | 0:e43dcd4f2ed8 | 25 | lcd.printf("Hello World!"); |
atpolitis | 0:e43dcd4f2ed8 | 26 | |
atpolitis | 0:e43dcd4f2ed8 | 27 | |
atpolitis | 0:e43dcd4f2ed8 | 28 | pc.printf("HELLO!, testing LM74 temperature sensor ...\n\r"); |
atpolitis | 0:e43dcd4f2ed8 | 29 | wait(2); |
atpolitis | 0:e43dcd4f2ed8 | 30 | |
atpolitis | 0:e43dcd4f2ed8 | 31 | lcd.locate(0,0); // locate(column,row) |
atpolitis | 0:e43dcd4f2ed8 | 32 | lcd.printf("test LM74 tmp sensor"); |
atpolitis | 0:e43dcd4f2ed8 | 33 | lcd.locate(0,1); |
atpolitis | 0:e43dcd4f2ed8 | 34 | lcd.printf("LM74temp = 110.8 *C "); |
atpolitis | 0:e43dcd4f2ed8 | 35 | |
atpolitis | 0:e43dcd4f2ed8 | 36 | wait(1); |
atpolitis | 0:e43dcd4f2ed8 | 37 | |
atpolitis | 0:e43dcd4f2ed8 | 38 | while(1) { |
atpolitis | 0:e43dcd4f2ed8 | 39 | |
atpolitis | 0:e43dcd4f2ed8 | 40 | myled = !myled; |
atpolitis | 0:e43dcd4f2ed8 | 41 | showTemp74(); |
atpolitis | 0:e43dcd4f2ed8 | 42 | wait(2); |
atpolitis | 0:e43dcd4f2ed8 | 43 | /* |
atpolitis | 0:e43dcd4f2ed8 | 44 | myled = !myled; |
atpolitis | 0:e43dcd4f2ed8 | 45 | showTemp74(); |
atpolitis | 0:e43dcd4f2ed8 | 46 | Temp74.shutLM74down(); |
atpolitis | 0:e43dcd4f2ed8 | 47 | wait(1); |
atpolitis | 0:e43dcd4f2ed8 | 48 | */ |
atpolitis | 0:e43dcd4f2ed8 | 49 | } |
atpolitis | 0:e43dcd4f2ed8 | 50 | } |
atpolitis | 0:e43dcd4f2ed8 | 51 | // ****************************************************************** |
atpolitis | 0:e43dcd4f2ed8 | 52 | // ****************************************************************** |
atpolitis | 0:e43dcd4f2ed8 | 53 | |
atpolitis | 0:e43dcd4f2ed8 | 54 | void showTemp74(void){ |
atpolitis | 0:e43dcd4f2ed8 | 55 | |
atpolitis | 0:e43dcd4f2ed8 | 56 | float TempC = Temp74.readTemp(); |
atpolitis | 0:e43dcd4f2ed8 | 57 | lcd.locate(11,1); |
atpolitis | 0:e43dcd4f2ed8 | 58 | lcd.printf(" "); |
atpolitis | 0:e43dcd4f2ed8 | 59 | lcd.locate(11,1); |
atpolitis | 0:e43dcd4f2ed8 | 60 | |
atpolitis | 0:e43dcd4f2ed8 | 61 | pc.printf("Temperature = "); |
atpolitis | 0:e43dcd4f2ed8 | 62 | if(TempC > MAX_LM74_TEMP) { |
atpolitis | 0:e43dcd4f2ed8 | 63 | pc.printf(" ? *C\n", TempC); |
atpolitis | 0:e43dcd4f2ed8 | 64 | lcd.printf(" ? *C", TempC); |
atpolitis | 0:e43dcd4f2ed8 | 65 | } else { |
atpolitis | 0:e43dcd4f2ed8 | 66 | pc.printf("%3.1f *C\n", TempC); |
atpolitis | 0:e43dcd4f2ed8 | 67 | lcd.printf("%3.1f *C", TempC); |
atpolitis | 0:e43dcd4f2ed8 | 68 | } |
atpolitis | 0:e43dcd4f2ed8 | 69 | } |
atpolitis | 0:e43dcd4f2ed8 | 70 | // ****************************************************************** |