Kenneth Lujan
/
kl46z_slider_v1
Homework 5.1
Fork of kl46z_slider_v1 by
Embed:
(wiki syntax)
Show/hide line numbers
main.cpp
00001 #include "mbed.h" 00002 #include "TSISensor.h" 00003 #include "SLCD.h" 00004 #define TSILIMIT 0.99 00005 #define LCDCHARLEN 10 00006 #define DATAINTERVAL 0.1 00007 #define PROGNAME "kl46z_slider_test_v1\n\r" 00008 00009 SLCD slcd; //define LCD display 00010 Serial pc(USBTX, USBRX); 00011 Ticker tick; 00012 00013 volatile bool ticked; 00014 00015 float tsidata; 00016 00017 void LCDMess(char *lMess){ 00018 slcd.Home(); 00019 slcd.clear(); 00020 slcd.printf(lMess); 00021 } 00022 00023 void tickFunction( void ) { 00024 ticked = true; 00025 } 00026 00027 int main(void) { 00028 ticked = false; 00029 tick.attach(&tickFunction, 0.10); 00030 char lcdData[LCDCHARLEN]; 00031 PwmOut gled(LED_GREEN); 00032 PwmOut rled(LED_RED); 00033 pc.printf(PROGNAME); 00034 TSISensor tsi; 00035 00036 while (1) { 00037 tsidata = tsi.readPercentage(); 00038 if(ticked){ 00039 if (tsidata > TSILIMIT){ 00040 gled = 0.0; 00041 rled = 0.0; 00042 00043 }else { 00044 pc.printf("\n Position %f\n\r", tsidata); 00045 sprintf (lcdData,"%0.4f",tsidata); 00046 LCDMess(lcdData); 00047 gled = tsidata; 00048 rled = 1.0 - tsidata; 00049 00050 } 00051 //wait(DATAINTERVAL); 00052 ticked = false; 00053 } 00054 } 00055 }
Generated on Thu Aug 11 2022 10:13:03 by 1.7.2