Viewing 8 posts - 185 through 192 (of 210 total)
  • Author
    Posts
  • #9152
    oriolo20
    Participant

    <of any display> quindi metto tutto in parallelo i varinumerisull uscita della 7441 !!

    <visualizzare anche la temperatura>
    vorrei mantenere per questo progettino il vintage, quindi solo ora al max come ho scritto la data solo per 5 secondi ogni minuto

    #9154
    Amilcare
    Keymaster

    Si tutti in parallelo poi attivi di volta in volta la sola cifra da visualizzare

    #9156
    Picmicro675
    Participant

    Problematiche che intravedo sono come interfacciare orario di rtc con esp o gps per correzione/sovrappososizione orario che arriva da esp o gps senza perdite di dati. Poi gestione multiplexer.

    Il discorso si ripete. Aggiornati come funziona il multiplexing. In effetti si arriva ad accendere (per dispositivi luminosi), rilevare contatti (per dispositivi di contatto) uno alla volta per una determinata riga quando una colonna diventa attiva.
    Allora tutti i catodi per una determinata cifra sono in comune, sarà la colonna a determinare quale diventa attiva in un determinato istante. Infine ci sono 6 colonne che sono gestite in maniera che si deve accendere una sola. Negli ultimi schemi questo lo decidono le uscite D2~D7 (tutt’e sei),
    Poi per quanto riguarda le linee di informazione, si cita (come nella discussione separata) quali linee si possono impegnare. Dai miei esperimenti, la ESP non è affidabile sulla UART, in special modo con il FW dei comandi AT.
    Per questo su questo caso ho previsto che se ne parli in quella discussione.

    #9160
    oriolo20
    Participant

    <Problems that I see > si confermo tante, e sicuramente superabili.

    In procinto dell arrivo dell ormai “famous ” pcb ho fatte delle semplici prove sempre utilizzando UNO, con il modulo NEO GPS dotato di antenna con attacco SMA, sicuramente migliore rispetto a quello con antenna quasi solidale al modulo.
    Funziona sempre, fatto un pò copia e incolla da web e adattato al mio lcd sketch dove ho sempre data e ora perfetti, o quasi solo due ore indietro per fusorario non corretto, come posso ovviare?
    Il secondo sketch controllo con conteggio da zero a 9 una nixia utilizzando una 7441.
    Posso postare sketch qui come listato o come faccio per magari inviarli come files?

    #9164
    Amilcare
    Keymaster

    Crea una cartella complessa la carichi sul sito e ne posti il link nel messaggio

    #9175
    oriolo20
    Participant

    https://www.elettroamici.org/?p=9174&preview=true

    • This reply was modified 2 years, 12 months ago by oriolo20.
    • This reply was modified 2 years, 12 months ago by oriolo20.
    #9185
    oriolo20
    Participant

    at the moment there it is, mi segna solo per non corretto fuso orario due ore indietro
    // Arduino GPS real time clock with NEO-6M GPS module, inserito anche time zone ma mi da errore, in ogni caso tale modulo ripeto quello con attacco antenna sma è un miracolo di tecnologia.

     
    #include <TinyGPS++.h>           // Include TinyGPS++ library
    #include <SoftwareSerial.h>      // Include software serial library
    #include <LiquidCrystal.h>       // Include LCD library
    
    #include <Adafruit_GPS.h>
    
    TinyGPSPlus gps;
                        
    #define S_RX    12                //  cambiati per prg oriolo nano  Define software serial RX pin
    #define S_TX    13                // cambiati per prg oriolo nano   Define software serial TX pin
     
    SoftwareSerial SoftSerial(S_RX, S_TX);    // Configure SoftSerial library
    
    #define LCD_ADDRESS 0x27        
    #define LCD_ROWS       4
    #define LCD_COLUMNS 20
    #define LCD_BACKLIGHT 1   
    #include <LiquidCrystal_PCF8574.h>
    LiquidCrystal_PCF8574 lcd(LCD_ADDRESS);         // LCD I2  
     
    byte last_second;
    char Time[]  = "TIME:00:00:00";
    char Date[]  = "DATA:00/00/2000";
     
    void setup(void) {
      SoftSerial.begin(9600);
     
      // set up the LCD's number of columns and rows
      //lcd.begin(16, 4);
       //lcd.setCursor(0, 0);
       lcd.begin(LCD_COLUMNS, LCD_ROWS);
      // backlight turned on
      lcd.setBacklight(LCD_BACKLIGHT);
      lcd.print(Time);                           // Display time
      lcd.setCursor(0, 2);                         // cambio riga da 1 a 4 
     // lcd.print(Date);                           // Display calendar
    }
    void loop() {
      while (SoftSerial.available() > 0) {
        if (gps.encode(SoftSerial.read())) {
          if (gps.time.isValid()) {
            Time[5]  = gps.time.hour()   / 10 + 48;
            Time[6]  = gps.time.hour()   % 10 + 48;
            Time[8]  = gps.time.minute() / 10 + 48;
            Time[9]  = gps.time.minute() % 10 + 48;
            Time[11] = gps.time.second() / 10 + 48;
            Time[12] = gps.time.second() % 10 + 48;
          }
          if (gps.date.isValid()) {
            Date[5]  = gps.date.day()    / 10 + 48;
            Date[6]  = gps.date.day()    % 10 + 48;
            Date[8]  = gps.date.month()  / 10 + 48;
            Date[9]  = gps.date.month()  % 10 + 48;
            Date[13] =(gps.date.year()   / 10) % 10 + 48;
            Date[14] = gps.date.year()   % 10 + 48;
          }
          if(last_second != gps.time.second()) {
            last_second = gps.time.second();
            lcd.setCursor(0, 0);
            lcd.print(Time);                           // Display time
            lcd.setCursor(0, 1);       
            lcd.print(Date);                           // Display calendar
          }
        }
      }
    }
    • This reply was modified 2 years, 12 months ago by oriolo20.
    • This reply was modified 2 years, 12 months ago by oriolo20.
    #9188
    oriolo20
    Participant

    Even the RTC 3231 it is another jewel, sperimentata per più di un mese, con cambi di temperatura forzata, dai raggi del sole + 30 °C a 10 °C sempre orario perfetto, ho utilizzato anche uscita 1PPS collegato al primo contatore del mio vecchio orologio, precisione nell’arco di 40 days – 1 secondo rispetto all’ora esatta.
    // semplice test con 7441. andata a buon fine, gestita da UNO conta da 0 -9 con varie frequenze// Primo step per multiplexer

    void setup() {
       pinMode(8, OUTPUT);
      pinMode(9, OUTPUT);
      pinMode(10, OUTPUT);
      pinMode(11, OUTPUT);  
       Serial.begin(9600);
    }
     
    void loop() {
       for(int i = 0; i < 10; i++) {
        Serial.println(i);
        PORTB = i;
        delay(700);
      } 
    }
    • This reply was modified 2 years, 12 months ago by oriolo20.
    • This reply was modified 2 years, 12 months ago by oriolo20.
Viewing 8 posts - 185 through 192 (of 210 total)
  • You must be logged in to reply to this topic.