Tell us about yourself!

Complete Your Profile
  • 16x128 Display Showing Date, Time, Temp, Humidity

    In void Temp() float f = dht.readTemperature(true); // Read temperature as Fahrenheit = (true), // //For Deg C >>> float f = dht.readTemperature()... Remove "true" inside braces

    View Instructable »
  • 16x128 Display Showing Date, Time, Temp, Humidity

    My bad. I was playing with the RTC prior to using it in this project so it was already set. I was going to insert a section to run the "RTC Set Date" sketch I had. but I guess I did not finish it...Here is a sketch to set the time and date in the RTC.Thnaks[code]#include "Wire.h"#define DS3231_I2C_ADDRESS 0x68// Convert normal decimal numbers to binary coded decimalbyte decToBcd(byte val){ return( (val/10*16) + (val%10) );}// Convert binary coded decimal to normal decimal numbersbyte bcdToDec(byte val){ return( (val/16*10) + (val%16) );}void setup(){ Wire.begin(); Serial.begin(9600); // set the initial time here: // DS3231 seconds, minutes, hours, day, date, month, year// setDS3231time(02,32,23,7,9,04,16); //Uncomment this line and replace numbers with dat...

    see more »

    My bad. I was playing with the RTC prior to using it in this project so it was already set. I was going to insert a section to run the "RTC Set Date" sketch I had. but I guess I did not finish it...Here is a sketch to set the time and date in the RTC.Thnaks[code]#include "Wire.h"#define DS3231_I2C_ADDRESS 0x68// Convert normal decimal numbers to binary coded decimalbyte decToBcd(byte val){ return( (val/10*16) + (val%10) );}// Convert binary coded decimal to normal decimal numbersbyte bcdToDec(byte val){ return( (val/16*10) + (val%16) );}void setup(){ Wire.begin(); Serial.begin(9600); // set the initial time here: // DS3231 seconds, minutes, hours, day, date, month, year// setDS3231time(02,32,23,7,9,04,16); //Uncomment this line and replace numbers with date format as above line states. Run Once! Then comment out!}void setDS3231time(byte second, byte minute, byte hour, byte dayOfWeek, bytedayOfMonth, byte month, byte year){ // sets time and date data to DS3231 Wire.beginTransmission(DS3231_I2C_ADDRESS); Wire.write(0); // set next input to start at the seconds register Wire.write(decToBcd(second)); // set seconds Wire.write(decToBcd(minute)); // set minutes Wire.write(decToBcd(hour)); // set hours Wire.write(decToBcd(dayOfWeek)); // set day of week (1=Sunday, 7=Saturday) Wire.write(decToBcd(dayOfMonth)); // set date (1 to 31) Wire.write(decToBcd(month)); // set month Wire.write(decToBcd(year)); // set year (0 to 99) Wire.endTransmission();}void readDS3231time(byte *second,byte *minute,byte *hour,byte *dayOfWeek,byte *dayOfMonth,byte *month,byte *year){ Wire.beginTransmission(DS3231_I2C_ADDRESS); Wire.write(0); // set DS3231 register pointer to 00h Wire.endTransmission(); Wire.requestFrom(DS3231_I2C_ADDRESS, 7); // request seven bytes of data from DS3231 starting from register 00h *second = bcdToDec(Wire.read() & 0x7f); *minute = bcdToDec(Wire.read()); *hour = bcdToDec(Wire.read() & 0x3f); *dayOfWeek = bcdToDec(Wire.read()); *dayOfMonth = bcdToDec(Wire.read()); *month = bcdToDec(Wire.read()); *year = bcdToDec(Wire.read());}void displayTime(){ byte second, minute, hour, dayOfWeek, dayOfMonth, month, year; // retrieve data from DS3231 readDS3231time(&second, &minute, &hour, &dayOfWeek, &dayOfMonth, &month, &year); // send it to the serial monitor Serial.print(hour, DEC); // convert the byte variable to a decimal number when displayed Serial.print(":"); if (minute<10) { Serial.print("0"); } Serial.print(minute, DEC); Serial.print(":"); if (second<10) { Serial.print("0"); } Serial.print(second, DEC); Serial.print(" "); Serial.print(month, DEC); Serial.print("/"); Serial.print(dayOfMonth, DEC); Serial.print("/"); Serial.print(year, DEC); Serial.print(" Day of week: "); switch(dayOfWeek){ case 1: Serial.println("Sunday"); break; case 2: Serial.println("Monday"); break; case 3: Serial.println("Tuesday"); break; case 4: Serial.println("Wednesday"); break; case 5: Serial.println("Thursday"); break; case 6: Serial.println("Friday"); break; case 7: Serial.println("Saturday"); break; }}void loop(){ displayTime(); // display the real-time clock data on the Serial Monitor, delay(1000); // every second}[/code]

    View Instructable »
  • 16x128 Display Showing Date, Time, Temp, Humidity

    Here is a better link...3.75 Unit Board 64 16 Dot Matrix LED Display Screen F3.75 Module 304 76mm http://r.ebay.com/YHj2AM

    displays are from ebay.New link =http://www.ebay.com/itm/3-75-Unit-Board-64-16-Dot-Matrix-LED-Display-Screen-F3-75-Module-304-76mm/141637118333?_trksid=p2047675.c100005.m1851&_trkparms=aid%3D222007%26algo%3DSIC.MBE%26ao%3D2%26asc%3D41376%26meid%3Dad5fcbba7660429a98474dd8b0ad2545%26pid%3D100005%26rk%3D4%26rkt%3D6%26mehot%3Dpp%26sd%3D271677857457

    View Instructable »
  • 16x128 display showing Date, Time, Temp, Humidity

    This was built for using 2 displays.You would have to edit the code and choose to either display temp and hum or day and date.In "void sevenseg(int input_number)"edit lines below in code,after "drawChar(" 1st number is column location...change this to match location you want it displayed.Widths are in sets of 8 as in = 0,8,16,24,32,40...ectstudy code for day and time to see location numbers.Make a " if " statement or use an input, timer counter or something to select either date/time or temp/hum to display in same location. if (count5<25){ //Display Temperature if (Temp1000>=1){ drawChar(64,0,Temp1000,0,false); } else{ drawChar(64,0,' ',0,false); } drawChar(72,0,Temp100,0,false); drawChar(80,0,(Temp10),0,false); drawChar(88,0,('.'),0,...

    see more »

    This was built for using 2 displays.You would have to edit the code and choose to either display temp and hum or day and date.In "void sevenseg(int input_number)"edit lines below in code,after "drawChar(" 1st number is column location...change this to match location you want it displayed.Widths are in sets of 8 as in = 0,8,16,24,32,40...ectstudy code for day and time to see location numbers.Make a " if " statement or use an input, timer counter or something to select either date/time or temp/hum to display in same location. if (count5<25){ //Display Temperature if (Temp1000>=1){ drawChar(64,0,Temp1000,0,false); } else{ drawChar(64,0,' ',0,false); } drawChar(72,0,Temp100,0,false); drawChar(80,0,(Temp10),0,false); drawChar(88,0,('.'),0,false); drawChar(96,0,(Temp1),0,false); drawChar(104,0,'F',0,false); drawChar(112,0,' ',0,false); drawChar(120,0,' ',0,false); } if(count5>25&&count5<40){ //Display Humidity if (Hum1000>=1){ drawChar(64,0,Hum1000,0,false); } else{ drawChar(64,0,' ',0,false); } drawChar(72,0,Hum100,0,false); drawChar(80,0,(Hum10),0,false); drawChar(88,0,('.'),0,false); drawChar(96,0,(Hum1),0,false); drawChar(104,0,'%',0,false); drawChar(112,0,'r',0,false); drawChar(120,0,'h',0,false); }}"Hope this helps...I have not rebuilt this to see if it works on the newer version of the Arduino program. I believe I was using version 1.6 when this was built.Jeff

    View Instructable »
  • 16x128 display showing Date, Time, Temp, Humidity

    check the code, make sure it was not changed or a char "t" was not mistyped in to code.Look at error message, it will give line number in code where error is and should also highlight it.

    In void Temp() float f = dht.readTemperature(true); // Read temperature as Fahrenheit = (true), // //For Deg C >>> float f = dht.readTemperature()... Remove "true" inside braces

    for problem with all text on 1 board I would have to see how you connected your displays. the data lines have to feed the right display and the second display connects via ribbon cable for left side of right display to right side of left displayText feeds from left to right...Hope this helps.Sorry for the delay very busy at work and I have been heavy into ESP8266's building differnt project I hope to put up soon.

    for inverse text problem look in program for:void drawCharcomment out line = //if (inverse) charbytes[i] = ~charbytes[i];

    View Instructable »