Sto lavorando a un progetto ATMega che manterrà il tempo e sto provando a farlo in modo da avere un'opzione di RTC (time millis () basati su software), DS1307 o DS3231 (ChronoDot).
Al massimo, quello che vorrei fare è avere intestazioni per un ChronoDot disponibili per la saldatura e quindi in qualche modo nel software rilevare se ChronoDot è collegato e passare a usarlo. In genere sarebbe abbastanza facile verificare che sia presente il DS1307 o DS3231 poiché utilizzano lo stesso registro I2C, ma dopo quel controllo iniziale si discostano un po 'l'uno dall'altro e quest'ultimo ha più funzionalità. Quindi voglio ancora determinare quale è collegato. In generale, ho in programma di avere un posto direttamente a bordo per saldare nel DS1307 come opzione predefinita e il supporto DS3231 sarebbe con un ChronoDot completo solo tramite doppie intestazioni a 4 pin. ChronoDot si adatterebbe sostanzialmente al punto in cui normalmente si collocherebbe il DS1307 (in questo caso non verrebbe popolato). Il motivo principale per cui mi sto concentrando su ChronoDot è che è ' è popolare, facile da acquisire e non richiede saldatura SMD per l'utente finale (questo se per un kit). Quindi, ecco cosa sto pensando ...
Sia il DS1307 che il DS3231 hanno una linea Vbat sul chip, ma non è davvero necessario per nulla. Tuttavia, ChronoDot ha un pin VBat effettivo sulla scheda di breakout. Potrei forse collegare solo Vbat dall'intestazione ChronoDot e non il DS1307 e collegarlo a un pin di ingresso digitale sul mio ATMega. Ma quel pin di input è stato messo a terra da un resistore (non sei sicuro di quale valore ... forse 4.7k?). Se la mia teoria EE è corretta posso quindi leggere quel pin e se ottengo un minimo, non c'è cronografo, ma se ottengo un alto, c'è.
Qualcosa come questo:
simula questo circuito - Schema creato usando CircuitLab
La mia domanda principale qui è se farlo finirà per scaricare la batteria di backup sull'RTC? Normalmente non verrebbe assorbita corrente dalla batteria di backup mentre l'alimentazione principale, 5 V, viene fornita, ma collegandola a un ingresso digitale la assorbirebbe sempre dalla batteria? Oppure, c'è una modalità in cui avrei bisogno di inserire il pin dopo averlo letto per "disconnetterlo", per così dire? So che potrei cambiarlo in output, ma credo che se fosse impostato come output e basso avrei fondamentalmente messo a terra la batteria.
Comunque, i miei corsi EE erano molto tempo fa. Qualsiasi aiuto sulla teoria qui sarebbe apprezzato.