Help me photohunt

Dependencies:   mbed

Committer:
Peeraya
Date:
Sat Nov 28 14:53:02 2015 +0000
Revision:
0:ff615d611c5c
Display

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Peeraya 0:ff615d611c5c 1 #ifndef __TTSDISPLAY_H__
Peeraya 0:ff615d611c5c 2 #define __TTSDISPLAY_H__
Peeraya 0:ff615d611c5c 3
Peeraya 0:ff615d611c5c 4 #ifndef uchar
Peeraya 0:ff615d611c5c 5 #define uchar char
Peeraya 0:ff615d611c5c 6 #endif
Peeraya 0:ff615d611c5c 7
Peeraya 0:ff615d611c5c 8 // definitions for TM1636
Peeraya 0:ff615d611c5c 9 #define ADDR_AUTO 0x40
Peeraya 0:ff615d611c5c 10 #define ADDR_FIXED 0x44
Peeraya 0:ff615d611c5c 11 #define STARTADDR 0xc0
Peeraya 0:ff615d611c5c 12
Peeraya 0:ff615d611c5c 13 // definitions for the clock point of the digit tube
Peeraya 0:ff615d611c5c 14 #define POINT_ON 1
Peeraya 0:ff615d611c5c 15 #define POINT_OFF 0
Peeraya 0:ff615d611c5c 16
Peeraya 0:ff615d611c5c 17 // definitions for brightness
Peeraya 0:ff615d611c5c 18 #define BRIGHT_DARKEST 0
Peeraya 0:ff615d611c5c 19 #define BRIGHT_TYPICAL 2
Peeraya 0:ff615d611c5c 20 #define BRIGHTEST 7
Peeraya 0:ff615d611c5c 21
Peeraya 0:ff615d611c5c 22 //Special characters index of tube table
Peeraya 0:ff615d611c5c 23 #define INDEX_NEGATIVE_SIGH 16
Peeraya 0:ff615d611c5c 24 #define INDEX_BLANK 17
Peeraya 0:ff615d611c5c 25
Peeraya 0:ff615d611c5c 26
Peeraya 0:ff615d611c5c 27 class TTSDisplay{
Peeraya 0:ff615d611c5c 28
Peeraya 0:ff615d611c5c 29
Peeraya 0:ff615d611c5c 30 private:
Peeraya 0:ff615d611c5c 31
Peeraya 0:ff615d611c5c 32 uchar Cmd_SetData;
Peeraya 0:ff615d611c5c 33 uchar Cmd_SetAddr;
Peeraya 0:ff615d611c5c 34 uchar Cmd_Dispdisplay;
Peeraya 0:ff615d611c5c 35 uchar _PointFlag; //_PointFlag=1:the clock point on
Peeraya 0:ff615d611c5c 36 uchar _brightness;
Peeraya 0:ff615d611c5c 37 uchar Clkpin;
Peeraya 0:ff615d611c5c 38 uchar Datapin;
Peeraya 0:ff615d611c5c 39 uchar dtaDisplay[4];
Peeraya 0:ff615d611c5c 40
Peeraya 0:ff615d611c5c 41 private:
Peeraya 0:ff615d611c5c 42
Peeraya 0:ff615d611c5c 43 void writeByte(uchar wr_data); //write 8bit data to tm1637
Peeraya 0:ff615d611c5c 44 void start(void); //send start bits
Peeraya 0:ff615d611c5c 45 void stop(void); //send stop bits
Peeraya 0:ff615d611c5c 46 void set(uchar = BRIGHT_TYPICAL, uchar = 0x40, uchar = 0xc0); //To take effect the next time it displays.
Peeraya 0:ff615d611c5c 47 uchar coding(uchar DispData);
Peeraya 0:ff615d611c5c 48
Peeraya 0:ff615d611c5c 49
Peeraya 0:ff615d611c5c 50 //**********************************************************************************************************
Peeraya 0:ff615d611c5c 51 //*************************** USER INTERFACE ***************************************************************
Peeraya 0:ff615d611c5c 52 //**********************************************************************************************************
Peeraya 0:ff615d611c5c 53 public:
Peeraya 0:ff615d611c5c 54
Peeraya 0:ff615d611c5c 55 TTSDisplay();
Peeraya 0:ff615d611c5c 56
Peeraya 0:ff615d611c5c 57 void display(uchar loca, uchar dta); // display a single num(0-9)
Peeraya 0:ff615d611c5c 58 void num(int dta); // display a num (0-9999)
Peeraya 0:ff615d611c5c 59 void time(uchar hour, uchar min); // display time, such as: 11:26
Peeraya 0:ff615d611c5c 60 void clear(); // clear display
Peeraya 0:ff615d611c5c 61
Peeraya 0:ff615d611c5c 62 void pointOn(); // display :
Peeraya 0:ff615d611c5c 63 void pointOff(); // undisplay :
Peeraya 0:ff615d611c5c 64
Peeraya 0:ff615d611c5c 65 };
Peeraya 0:ff615d611c5c 66
Peeraya 0:ff615d611c5c 67 #endif
Peeraya 0:ff615d611c5c 68
Peeraya 0:ff615d611c5c 69 //#include <Arduino.h>
Peeraya 0:ff615d611c5c 70 #include<mbed.h>
Peeraya 0:ff615d611c5c 71 //#include <Streaming.h>
Peeraya 0:ff615d611c5c 72
Peeraya 0:ff615d611c5c 73 //#include "TTSDisplay.h"
Peeraya 0:ff615d611c5c 74
Peeraya 0:ff615d611c5c 75 //0~9,A,b,C,d,E,F,"-"," "
Peeraya 0:ff615d611c5c 76 const uchar TubeTab[] =
Peeraya 0:ff615d611c5c 77 {
Peeraya 0:ff615d611c5c 78 0x3f,0x06,0x5b,0x4f,
Peeraya 0:ff615d611c5c 79 0x66,0x6d,0x7d,0x07,
Peeraya 0:ff615d611c5c 80 0x7f,0x6f,0x77,0x7c,
Peeraya 0:ff615d611c5c 81 0x39,0x5e,0x79,0x71,
Peeraya 0:ff615d611c5c 82 0x40,0x00
Peeraya 0:ff615d611c5c 83 };
Peeraya 0:ff615d611c5c 84
Peeraya 0:ff615d611c5c 85 //#define PINCLK 7 // pin of clk
Peeraya 0:ff615d611c5c 86 //#define PINDTA 8 // pin of data
Peeraya 0:ff615d611c5c 87
Peeraya 0:ff615d611c5c 88 TTSDisplay::TTSDisplay()
Peeraya 0:ff615d611c5c 89 {
Peeraya 0:ff615d611c5c 90 DigitalOut Clkpin(D7);
Peeraya 0:ff615d611c5c 91 DigitalOut Datapin(D8);
Peeraya 0:ff615d611c5c 92 /*Clkpin = PINCLK;
Peeraya 0:ff615d611c5c 93 Datapin = PINDTA;
Peeraya 0:ff615d611c5c 94
Peeraya 0:ff615d611c5c 95 pinMode(Clkpin,OUTPUT);
Peeraya 0:ff615d611c5c 96 pinMode(Datapin,OUTPUT);*/
Peeraya 0:ff615d611c5c 97
Peeraya 0:ff615d611c5c 98 for(int i=0; i<4; i++)
Peeraya 0:ff615d611c5c 99 {
Peeraya 0:ff615d611c5c 100 dtaDisplay[i] = 0x00;
Peeraya 0:ff615d611c5c 101 }
Peeraya 0:ff615d611c5c 102
Peeraya 0:ff615d611c5c 103 set();
Peeraya 0:ff615d611c5c 104 //clear();
Peeraya 0:ff615d611c5c 105 }
Peeraya 0:ff615d611c5c 106
Peeraya 0:ff615d611c5c 107 /*********************************************************************************************************
Peeraya 0:ff615d611c5c 108 * Function Name: display
Peeraya 0:ff615d611c5c 109 * Description: display a num in certain location
Peeraya 0:ff615d611c5c 110 * Parameters: loca - location, 3-2-1-0
Peeraya 0:ff615d611c5c 111 * num - number to display
Peeraya 0:ff615d611c5c 112 * Return: None
Peeraya 0:ff615d611c5c 113 *********************************************************************************************************/
Peeraya 0:ff615d611c5c 114 void TTSDisplay::display(uchar loca, uchar dta)
Peeraya 0:ff615d611c5c 115 {
Peeraya 0:ff615d611c5c 116
Peeraya 0:ff615d611c5c 117 //if(loca > 3 || loca < 0) return;
Peeraya 0:ff615d611c5c 118
Peeraya 0:ff615d611c5c 119 if(loca > 3) return;
Peeraya 0:ff615d611c5c 120 dtaDisplay[loca] = dta;
Peeraya 0:ff615d611c5c 121
Peeraya 0:ff615d611c5c 122 loca = 3-loca;
Peeraya 0:ff615d611c5c 123
Peeraya 0:ff615d611c5c 124 uchar segData = coding(dta);
Peeraya 0:ff615d611c5c 125
Peeraya 0:ff615d611c5c 126 start(); //start signal sent to TM1637 from MCU
Peeraya 0:ff615d611c5c 127 writeByte(ADDR_FIXED);
Peeraya 0:ff615d611c5c 128 stop();
Peeraya 0:ff615d611c5c 129
Peeraya 0:ff615d611c5c 130 start();
Peeraya 0:ff615d611c5c 131 writeByte(loca|0xc0);
Peeraya 0:ff615d611c5c 132 writeByte(segData);
Peeraya 0:ff615d611c5c 133 stop();
Peeraya 0:ff615d611c5c 134
Peeraya 0:ff615d611c5c 135 start();
Peeraya 0:ff615d611c5c 136 writeByte(Cmd_Dispdisplay);
Peeraya 0:ff615d611c5c 137 stop();
Peeraya 0:ff615d611c5c 138
Peeraya 0:ff615d611c5c 139 }
Peeraya 0:ff615d611c5c 140
Peeraya 0:ff615d611c5c 141 /*********************************************************************************************************
Peeraya 0:ff615d611c5c 142 * Function Name: num
Peeraya 0:ff615d611c5c 143 * Description: display a num that 0 - 9999
Peeraya 0:ff615d611c5c 144 * Parameters: num - number to display
Peeraya 0:ff615d611c5c 145 * Return: None
Peeraya 0:ff615d611c5c 146 *********************************************************************************************************/
Peeraya 0:ff615d611c5c 147 void TTSDisplay::num(int dta)
Peeraya 0:ff615d611c5c 148 {
Peeraya 0:ff615d611c5c 149 if(dta < 0 || dta > 9999) return; // bad data
Peeraya 0:ff615d611c5c 150
Peeraya 0:ff615d611c5c 151 //clear();
Peeraya 0:ff615d611c5c 152
Peeraya 0:ff615d611c5c 153 pointOff();
Peeraya 0:ff615d611c5c 154 if(dta < 10)
Peeraya 0:ff615d611c5c 155 {
Peeraya 0:ff615d611c5c 156 display(0, dta);
Peeraya 0:ff615d611c5c 157 display(1, 0x7f);
Peeraya 0:ff615d611c5c 158 display(2, 0x7f);
Peeraya 0:ff615d611c5c 159 display(3, 0x7f);
Peeraya 0:ff615d611c5c 160 }
Peeraya 0:ff615d611c5c 161 else if(dta < 100)
Peeraya 0:ff615d611c5c 162 {
Peeraya 0:ff615d611c5c 163 display(1, dta/10);
Peeraya 0:ff615d611c5c 164 display(0, dta%10);
Peeraya 0:ff615d611c5c 165 display(2, 0x7f);
Peeraya 0:ff615d611c5c 166 display(3, 0x7f);
Peeraya 0:ff615d611c5c 167 }
Peeraya 0:ff615d611c5c 168 else if(dta < 1000)
Peeraya 0:ff615d611c5c 169 {
Peeraya 0:ff615d611c5c 170 display(2, dta/100);
Peeraya 0:ff615d611c5c 171 display(1, (dta/10)%10);
Peeraya 0:ff615d611c5c 172 display(0, dta%10);
Peeraya 0:ff615d611c5c 173 display(3, 0x7f);
Peeraya 0:ff615d611c5c 174 }
Peeraya 0:ff615d611c5c 175 else
Peeraya 0:ff615d611c5c 176 {
Peeraya 0:ff615d611c5c 177 display(3, dta/1000);
Peeraya 0:ff615d611c5c 178 display(2, (dta/100)%10);
Peeraya 0:ff615d611c5c 179 display(1, (dta/10)%10);
Peeraya 0:ff615d611c5c 180 display(0, dta%10);
Peeraya 0:ff615d611c5c 181 }
Peeraya 0:ff615d611c5c 182 }
Peeraya 0:ff615d611c5c 183
Peeraya 0:ff615d611c5c 184 /*********************************************************************************************************
Peeraya 0:ff615d611c5c 185 * Function Name: time
Peeraya 0:ff615d611c5c 186 * Description: display time
Peeraya 0:ff615d611c5c 187 * Parameters: hour - hour
Peeraya 0:ff615d611c5c 188 * min - minutes
Peeraya 0:ff615d611c5c 189 * Return: None
Peeraya 0:ff615d611c5c 190 *********************************************************************************************************/
Peeraya 0:ff615d611c5c 191 void TTSDisplay::time(uchar hour, uchar min)
Peeraya 0:ff615d611c5c 192 {
Peeraya 0:ff615d611c5c 193 // if(hour > 24 || hour < 0) return; // bad data
Peeraya 0:ff615d611c5c 194 if(hour > 24) return; // bad data
Peeraya 0:ff615d611c5c 195 // if(min > 60 || min < 0) return; // bad data
Peeraya 0:ff615d611c5c 196 if(min > 60) return; // bad data
Peeraya 0:ff615d611c5c 197
Peeraya 0:ff615d611c5c 198
Peeraya 0:ff615d611c5c 199 display(3, hour/10);
Peeraya 0:ff615d611c5c 200 display(2, hour%10);
Peeraya 0:ff615d611c5c 201 display(1, min/10);
Peeraya 0:ff615d611c5c 202 display(0, min%10);
Peeraya 0:ff615d611c5c 203 }
Peeraya 0:ff615d611c5c 204
Peeraya 0:ff615d611c5c 205 /*********************************************************************************************************
Peeraya 0:ff615d611c5c 206 * Function Name: clear
Peeraya 0:ff615d611c5c 207 * Description: clear all
Peeraya 0:ff615d611c5c 208 * Parameters: None
Peeraya 0:ff615d611c5c 209 * Return: None
Peeraya 0:ff615d611c5c 210 *********************************************************************************************************/
Peeraya 0:ff615d611c5c 211 void TTSDisplay::clear()
Peeraya 0:ff615d611c5c 212 {
Peeraya 0:ff615d611c5c 213 display(0x00,0x7f);
Peeraya 0:ff615d611c5c 214 display(0x01,0x7f);
Peeraya 0:ff615d611c5c 215 display(0x02,0x7f);
Peeraya 0:ff615d611c5c 216 display(0x03,0x7f);
Peeraya 0:ff615d611c5c 217 }
Peeraya 0:ff615d611c5c 218
Peeraya 0:ff615d611c5c 219 /*********************************************************************************************************
Peeraya 0:ff615d611c5c 220 * Function Name: writeByte
Peeraya 0:ff615d611c5c 221 * Description: write a byte to tm1636
Peeraya 0:ff615d611c5c 222 * Parameters: wr_data: data to write
Peeraya 0:ff615d611c5c 223 * Return: None
Peeraya 0:ff615d611c5c 224 *********************************************************************************************************/
Peeraya 0:ff615d611c5c 225 void TTSDisplay::writeByte(uchar wr_data)
Peeraya 0:ff615d611c5c 226 {
Peeraya 0:ff615d611c5c 227 uchar i,count1;
Peeraya 0:ff615d611c5c 228 for(i=0;i<8;i++) // sent 8bit data
Peeraya 0:ff615d611c5c 229 {
Peeraya 0:ff615d611c5c 230 Clkpin=0;
Peeraya 0:ff615d611c5c 231 //digitalWrite(Clkpin,LOW);
Peeraya 0:ff615d611c5c 232 //if(wr_data & 0x01)digitalWrite(Datapin,HIGH); // LSB first
Peeraya 0:ff615d611c5c 233 if(wr_data & 0x01)Datapin=1; // LSB first
Peeraya 0:ff615d611c5c 234 //else digitalWrite(Datapin,LOW);
Peeraya 0:ff615d611c5c 235 else Datapin=0;
Peeraya 0:ff615d611c5c 236 wr_data >>= 1;
Peeraya 0:ff615d611c5c 237 Clkpin=1;
Peeraya 0:ff615d611c5c 238 //digitalWrite(Clkpin,HIGH);
Peeraya 0:ff615d611c5c 239 }
Peeraya 0:ff615d611c5c 240
Peeraya 0:ff615d611c5c 241 Clkpin=0;
Peeraya 0:ff615d611c5c 242 Datapin=1;
Peeraya 0:ff615d611c5c 243 Clkpin=1;
Peeraya 0:ff615d611c5c 244 DigitalIn Datapin(D8);
Peeraya 0:ff615d611c5c 245
Peeraya 0:ff615d611c5c 246 /*digitalWrite(Clkpin,LOW); // wait for the ACK
Peeraya 0:ff615d611c5c 247 digitalWrite(Datapin,HIGH);
Peeraya 0:ff615d611c5c 248 digitalWrite(Clkpin,HIGH);
Peeraya 0:ff615d611c5c 249 pinMode(Datapin,INPUT);*/
Peeraya 0:ff615d611c5c 250
Peeraya 0:ff615d611c5c 251 //while(digitalRead(Datapin))
Peeraya 0:ff615d611c5c 252 while(Datapin)
Peeraya 0:ff615d611c5c 253 {
Peeraya 0:ff615d611c5c 254 count1 += 1;
Peeraya 0:ff615d611c5c 255 if(200 == count1)
Peeraya 0:ff615d611c5c 256 {
Peeraya 0:ff615d611c5c 257 //pinMode(Datapin,OUTPUT);
Peeraya 0:ff615d611c5c 258 DigitalOut Datapin(D8);
Peeraya 0:ff615d611c5c 259 //digitalWrite(Datapin,LOW);
Peeraya 0:ff615d611c5c 260 Datapin=0;
Peeraya 0:ff615d611c5c 261 count1 =0;
Peeraya 0:ff615d611c5c 262 }
Peeraya 0:ff615d611c5c 263 //pinMode(Datapin,INPUT);
Peeraya 0:ff615d611c5c 264 DigitalIn Datapin(D8);
Peeraya 0:ff615d611c5c 265 }
Peeraya 0:ff615d611c5c 266 //pinMode(Datapin,OUTPUT);
Peeraya 0:ff615d611c5c 267 //DigitalOut Datapin(D8);
Peeraya 0:ff615d611c5c 268
Peeraya 0:ff615d611c5c 269 }
Peeraya 0:ff615d611c5c 270
Peeraya 0:ff615d611c5c 271 /*********************************************************************************************************
Peeraya 0:ff615d611c5c 272 * Function Name: start
Peeraya 0:ff615d611c5c 273 * Description: send start signal to TTSDisplay
Peeraya 0:ff615d611c5c 274 * Parameters: None
Peeraya 0:ff615d611c5c 275 * Return: None
Peeraya 0:ff615d611c5c 276 *********************************************************************************************************/
Peeraya 0:ff615d611c5c 277 void TTSDisplay::start(void)
Peeraya 0:ff615d611c5c 278 {
Peeraya 0:ff615d611c5c 279 /*digitalWrite(Clkpin,HIGH); //send start signal to TM1637
Peeraya 0:ff615d611c5c 280 digitalWrite(Datapin,HIGH);
Peeraya 0:ff615d611c5c 281 digitalWrite(Datapin,LOW);
Peeraya 0:ff615d611c5c 282 digitalWrite(Clkpin,LOW);*/
Peeraya 0:ff615d611c5c 283 Clkpin=1;
Peeraya 0:ff615d611c5c 284 Datapin=1;
Peeraya 0:ff615d611c5c 285 Datapin=0;
Peeraya 0:ff615d611c5c 286 Clkpin=0;
Peeraya 0:ff615d611c5c 287 }
Peeraya 0:ff615d611c5c 288
Peeraya 0:ff615d611c5c 289 /*********************************************************************************************************
Peeraya 0:ff615d611c5c 290 * Function Name: stop
Peeraya 0:ff615d611c5c 291 * Description: send end signal
Peeraya 0:ff615d611c5c 292 * Parameters: None
Peeraya 0:ff615d611c5c 293 * Return: None
Peeraya 0:ff615d611c5c 294 *********************************************************************************************************/
Peeraya 0:ff615d611c5c 295 void TTSDisplay::stop(void)
Peeraya 0:ff615d611c5c 296 {/*
Peeraya 0:ff615d611c5c 297 digitalWrite(Clkpin,LOW);
Peeraya 0:ff615d611c5c 298 digitalWrite(Datapin,LOW);
Peeraya 0:ff615d611c5c 299 digitalWrite(Clkpin,HIGH);
Peeraya 0:ff615d611c5c 300 digitalWrite(Datapin,HIGH);*/
Peeraya 0:ff615d611c5c 301 Clkpin=0;
Peeraya 0:ff615d611c5c 302 Datapin=0;
Peeraya 0:ff615d611c5c 303 Clkpin=1;
Peeraya 0:ff615d611c5c 304 Datapin=1;
Peeraya 0:ff615d611c5c 305 }
Peeraya 0:ff615d611c5c 306
Peeraya 0:ff615d611c5c 307 /*********************************************************************************************************
Peeraya 0:ff615d611c5c 308 * Function Name: set
Peeraya 0:ff615d611c5c 309 * Description: init
Peeraya 0:ff615d611c5c 310 * Parameters: brightness - brightness
Peeraya 0:ff615d611c5c 311 * SetDta - data
Peeraya 0:ff615d611c5c 312 * SetAddr - address
Peeraya 0:ff615d611c5c 313 * Return: None
Peeraya 0:ff615d611c5c 314 *********************************************************************************************************/
Peeraya 0:ff615d611c5c 315 void TTSDisplay::set(uchar brightness,uchar SetData,uchar SetAddr)
Peeraya 0:ff615d611c5c 316 {
Peeraya 0:ff615d611c5c 317 _brightness = brightness;
Peeraya 0:ff615d611c5c 318 Cmd_SetData = SetData;
Peeraya 0:ff615d611c5c 319 Cmd_SetAddr = SetAddr;
Peeraya 0:ff615d611c5c 320 Cmd_Dispdisplay = 0x88 + brightness;
Peeraya 0:ff615d611c5c 321 }
Peeraya 0:ff615d611c5c 322
Peeraya 0:ff615d611c5c 323 /*********************************************************************************************************
Peeraya 0:ff615d611c5c 324 * Function Name: pointOn
Peeraya 0:ff615d611c5c 325 * Description: display :
Peeraya 0:ff615d611c5c 326 * Parameters: None
Peeraya 0:ff615d611c5c 327 * Return: None
Peeraya 0:ff615d611c5c 328 *********************************************************************************************************/
Peeraya 0:ff615d611c5c 329 void TTSDisplay::pointOn()
Peeraya 0:ff615d611c5c 330 {
Peeraya 0:ff615d611c5c 331 _PointFlag = 1;
Peeraya 0:ff615d611c5c 332
Peeraya 0:ff615d611c5c 333 for(int i=0; i<4; i++)
Peeraya 0:ff615d611c5c 334 {
Peeraya 0:ff615d611c5c 335 display(i, dtaDisplay[i]);
Peeraya 0:ff615d611c5c 336 }
Peeraya 0:ff615d611c5c 337 }
Peeraya 0:ff615d611c5c 338
Peeraya 0:ff615d611c5c 339 /*********************************************************************************************************
Peeraya 0:ff615d611c5c 340 * Function Name: pointOff
Peeraya 0:ff615d611c5c 341 * Description: no :
Peeraya 0:ff615d611c5c 342 * Parameters: None
Peeraya 0:ff615d611c5c 343 * Return: None
Peeraya 0:ff615d611c5c 344 *********************************************************************************************************/
Peeraya 0:ff615d611c5c 345 void TTSDisplay::pointOff()
Peeraya 0:ff615d611c5c 346 {
Peeraya 0:ff615d611c5c 347 _PointFlag = 0;
Peeraya 0:ff615d611c5c 348
Peeraya 0:ff615d611c5c 349 for(int i=0; i<4; i++)
Peeraya 0:ff615d611c5c 350 {
Peeraya 0:ff615d611c5c 351 display(i, dtaDisplay[i]);
Peeraya 0:ff615d611c5c 352 }
Peeraya 0:ff615d611c5c 353 }
Peeraya 0:ff615d611c5c 354
Peeraya 0:ff615d611c5c 355 /*********************************************************************************************************
Peeraya 0:ff615d611c5c 356 * Function Name: coding
Peeraya 0:ff615d611c5c 357 * Description: coding
Peeraya 0:ff615d611c5c 358 * Parameters: None
Peeraya 0:ff615d611c5c 359 * Return: None
Peeraya 0:ff615d611c5c 360 *********************************************************************************************************/
Peeraya 0:ff615d611c5c 361 uchar TTSDisplay::coding(uchar DispData)
Peeraya 0:ff615d611c5c 362 {
Peeraya 0:ff615d611c5c 363
Peeraya 0:ff615d611c5c 364 uchar PointData = _PointFlag ? 0x80 : 0x00;
Peeraya 0:ff615d611c5c 365 DispData = (0x7f == DispData) ? PointData : (TubeTab[DispData]+PointData);
Peeraya 0:ff615d611c5c 366 return DispData;
Peeraya 0:ff615d611c5c 367 }
Peeraya 0:ff615d611c5c 368
Peeraya 0:ff615d611c5c 369
Peeraya 0:ff615d611c5c 370 /*********************************************************************************************************
Peeraya 0:ff615d611c5c 371 END FILE
Peeraya 0:ff615d611c5c 372 *********************************************************************************************************/
Peeraya 0:ff615d611c5c 373
Peeraya 0:ff615d611c5c 374
Peeraya 0:ff615d611c5c 375 //#include <Wire.h>
Peeraya 0:ff615d611c5c 376 //#include <TTSDisplay.h>
Peeraya 0:ff615d611c5c 377
Peeraya 0:ff615d611c5c 378
Peeraya 0:ff615d611c5c 379 //TTSDisplay disp; // instantiate an object
Peeraya 0:ff615d611c5c 380
Peeraya 0:ff615d611c5c 381
Peeraya 0:ff615d611c5c 382 /*void setup()
Peeraya 0:ff615d611c5c 383 {
Peeraya 0:ff615d611c5c 384 // nothing to setup
Peeraya 0:ff615d611c5c 385 }*/
Peeraya 0:ff615d611c5c 386
Peeraya 0:ff615d611c5c 387 int main()
Peeraya 0:ff615d611c5c 388 {
Peeraya 0:ff615d611c5c 389 TTSDisplay disp;
Peeraya 0:ff615d611c5c 390 while(1)
Peeraya 0:ff615d611c5c 391 {
Peeraya 0:ff615d611c5c 392 disp.time(11,26); // display time, 11:26
Peeraya 0:ff615d611c5c 393 disp.pointOn(); // display :
Peeraya 0:ff615d611c5c 394 wait_ms(1000); // wait 1s
Peeraya 0:ff615d611c5c 395 }
Peeraya 0:ff615d611c5c 396 }
Peeraya 0:ff615d611c5c 397
Peeraya 0:ff615d611c5c 398 /*********************************************************************************************************
Peeraya 0:ff615d611c5c 399 END FILE
Peeraya 0:ff615d611c5c 400 *********************************************************************************************************/