Using Hexiware, Hexiware dock and an Alcohol click board, create your own breathalizer that connects to Wolksense to record your readings

Dependencies:   Hexi_KW40Z Hexi_OLED_SSD1351

Fork of Hexi_OLED_Text_Example by Hexiwear

main.cpp

Committer:
khuang
Date:
2016-08-26
Revision:
1:42e8e50ae4ac
Parent:
0:a1af4ae04b06
Child:
2:47c3dad2c8ef
Child:
3:d633281e5f83

File content as of revision 1:42e8e50ae4ac:

#include "mbed.h"
#include "Hexi_OLED_SSD1351.h"
#include "OLED_types.h"
#include "OpenSans_Font.h"
#include "string.h"

int main() {
    char text[20];  /* Text Buffer */ 
    Timer time;     /* Instantiate Time */

    /* Instantiate the SSD1351 OLED Driver */ 
    SSD1351 oled(PTB22,PTB21,PTC13,PTB20,PTE6, PTD15); /* (MOSI,SCLK,POWER,CS,RST,DC) */
    
    /* Get OLED Class Default Text Properties */
    oled_text_properties_t textProperties = {0};
    oled.GetTextProperties(&textProperties);    

    /* Turn on the backlight of the OLED Display */
    oled.DimScreenON();
    
    /* Fills the screen with solid black */         
    oled.FillScreen(COLOR_BLACK);

    /* Display Text at (x=7,y=0) */
    strcpy((char *) text,"TEXT EXAMPLE");
    oled.Label((uint8_t *)text,7,0);
        
    /* Change font color to blue */ 
    textProperties.fontColor   = COLOR_BLUE;
    oled.SetTextProperties(&textProperties);

    /* Display text at (x=5,y=40) */ 
    strcpy(text,"Timer(s):");
    oled.Label((uint8_t *)text,5,40);
        
    /* Set text properties to white and right aligned for the dynamic text */
    textProperties.fontColor = COLOR_WHITE;
    textProperties.alignParam = OLED_TEXT_ALIGN_RIGHT;
    oled.SetTextProperties(&textProperties);    

    
    time.start(); /* start timer */

    while (true) {
        
        /* Format the time reading */
        sprintf(text,"%.2f",time.read());
        
        /* Display time reading in 35px by 15px textbox at(x=55, y=40) */
        oled.TextBox((uint8_t *)text,55,40,35,15); 
             
        Thread::wait(1000);
    }
}