le mie informazioni di contatto
Posta[email protected]
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
RH850 L'RTC (orologio in tempo reale) dell'MCU adotta il formato di codifica BCD (decimale codificato binario), supporta l'identificazione automatica degli anni bisestili e dispone di funzioni di riporto per secondi, minuti, ore, giorni, settimane, mesi e anni. Tra questi, il secondo è diviso in 60 portate, l'ora è portata 12 o 24, la settimana è portata 7, il giorno è portato 28, 29, 30, 31 a seconda del mese, il mese è portato 12 e l'anno è 00~99.
Recentemente stiamo utilizzando RenesasMCU L'RTC dell'RH850 ha riscontrato un problema di eccezione del riporto temporale. Durante la stampa della variabile tempo tramite UART, si è riscontrato che il riporto di secondi e minuti non era il riporto previsto di 60, ma appariva erroneamente come riporto di 90. Questo fenomeno ha attirato la nostra attenzione.
Tuttavia, utilizzando un emulatore per monitorare direttamenteRTCEsaminando i registri interni SEC, MIN e altri, si è riscontrato che si svolgevano normalmente dopo aver raggiunto 0x59, il che dimostra che non vi sono problemi con la funzione di temporizzazione dell'RTC stesso.
Dopo un'attenta osservazione, abbiamo scoperto una regola fondamentale: quando i secondi superano 09, il valore visualizzato salterà direttamente a 16, per poi continuare ad aumentare. Questo fenomeno indica che il problema potrebbe risiedere nella conversione del formato dei dati. Poiché l'RTC utilizza internamente il formato di codifica BCD, lo elaboriamo come dati decimali quando li inviamo all'assistente di debug della porta seriale tramite UART, con conseguenti deviazioni di visualizzazione.
In risposta a questo problema, abbiamo modificato di conseguenza il formato di elaborazione dell'output UART. Dopo la regolazione, l'ora visualizzata sull'assistente di debug della porta seriale è finalmente tornata alla normalità, verificando che la nostra analisi era corretta.
Per riassumere, il registro interno RTC dell'MCU RH850 adotta un formato di codifica BCD unico, che richiede di prestare particolare attenzione alla conversione del formato durante l'elaborazione dei dati correlati. Altrimenti è facile che si creino malintesi e problemi simili.