Ik heb een klokmodule (Dallas semiconductor iButton, DS1904)
Dit is in principe een 32 bits secondenteller, maar mijn microcontroller kan maar met 16 bit berekeningen uitvoeren, wat inhoud dat:
- ik geen decimalen heb
- geen getallen groter dan 66536 (hex FFFF) kan gebruiken.
Kan iemand mij helpen met het berekenen dat ik de minuten en uren (in 24 uren) in variabelen kan krijgen?
Ik kan met mijn microcontroller wel delen, vermenigvuldigen, optellen en aftrekken en dergelijken, evenals logische functies enzo (het gaat om een parallax BS2p uC, en later wil ik dit uitbreiden naar een PIC16F628)
Ik krijg dus bijvoorbeeld dit binnen uit de klokmodule:
Alle tips zijn welkom
Dit is in principe een 32 bits secondenteller, maar mijn microcontroller kan maar met 16 bit berekeningen uitvoeren, wat inhoud dat:
- ik geen decimalen heb
- geen getallen groter dan 66536 (hex FFFF) kan gebruiken.
Kan iemand mij helpen met het berekenen dat ik de minuten en uren (in 24 uren) in variabelen kan krijgen?
Ik kan met mijn microcontroller wel delen, vermenigvuldigen, optellen en aftrekken en dergelijken, evenals logische functies enzo (het gaat om een parallax BS2p uC, en later wil ik dit uitbreiden naar een PIC16F628)
Ik krijg dus bijvoorbeeld dit binnen uit de klokmodule:
code:
1
2
3
4
5
6
7
8
| 0000003C hex = 00000060 dec = 1 minuut 00000E10 hex = 00003600 dec = 1 uur 00015180 hex = 00086400 dec = 24 uur 00000E4C hex = 00003660 dec = 1 uur, 1 minuut bij: 00015FCC hex = 00090060 dec moet de klok dus 1 uur 1 minuut weergeven... |
Alle tips zijn welkom
[ Voor 5% gewijzigd door 3lmowww op 26-10-2003 13:20 ]