Forum

Einloggen | Registrieren | RSS  

xy(R)

E-Mail

27.12.2018,
19:57

@ xy

µC-Uhr

» Ich werds die Tage mal ausprobieren, hab den Controller und solcherlei
» Quarze im Fundus. Interessiert mich jetzt selbst.

Also, solcherlei Quarze (12MHz in HC-49/US) haben eine Ziehempfindlichkeit von etwa 10ppm/pF.

Mit 47pF je Kondensator wird man recht nahe an die Sollfrequenz kommen.

mnemonic(R)

27.12.2018,
19:17
(editiert von mnemonic
am 27.12.2018 um 19:20)


@ matzi682015

OCR1AL

» » » » » » Du musst das Compare Register OCR1 anpassen, das steuert die
» » 100stel
» » » » » » Sekunden.
» » » » » » Alle 40.000 Zyklen wird eine 100stel Sekunde hochgezählt. Im
» Code
» » » ist
» » » » » das
» » » » » » gut dargestellt.
» » » » » » Alternativ könntest du z. B. um Mitternacht 5 Sekunden abziehen.
» » » » »
» » » » » Hallo, das µC-Kerlchen ist ein AT89C2051, habe den in eine Fassung
» » » » » gesteckt. Kann ich den rausnehmen und irgendwie aus-/einlesen? Das
» » » habe
» » » » ich
» » » » » noch nie gemacht! Wie geht das? Ich habe so ein paar
» » Programmierkits,
» » » » z.B.
» » » » » das Board STK500 von ATmel. Und ein SmartUSB- light -
» » Programmierstick
» » » » » (AVR-ISP-Programmer), "mySmartUSB light" steht drauf.
» » » »
» » » » Die SW hinter dem Link ist nicht für diesen Controller gedacht.
» » Deshalb
» » » » wird das nix mit dem Register OCR1
» » » » Sorry.
» » »
» » » welche SW hinter welchem Link bitte?
» »
» » Dieser Link https://www.mikrocontroller.net/articles/AVR-Tutorial:_Uhr
» » steht in deinem ersten Posting.
» » Wenn du dem Link folgst und dort etwas nach unten scrollst findest du
» das
» » Assembler Programm für eine Uhr. Die Chinesen kopieren gerne solche
» SW/HW
» » und vermarkten sie dann billigst im ebay oder bei Ali.
»
» Wie kann ich denn kucken was für ein Programm da drauf ist in meiner Uhr?
» Also den Programmcode, die SW, wo kann ich die anzeigen lassen und lesen?

Wenn der Controller nicht geschützt ist, kannst du das Programm schon auslesen und disassemblieren. Dann kann man das Programm auch nachvollziehen.
Alternativ könntest du auch ein wenig googeln und nach einer SW für deinen Controller schauen. Die Chinese kopieren lieber als dass sie selbst entwickeln (was sie oft auch nicht können).
Hier z.B. : https://github.com/forughi/DigitalClock_8051_Assembly

--
"Immer genügend Widerstand mitbringen"

finni(R)

27.12.2018,
18:58

@ gast

OCR1AL

» Aus dem µC kannst du nichts auslesen - also fast nicht. Dort ist nur mehr
» der HEX Code
» den der Compiler erzeugt hat. Revers Ingeniering wird sich da wohl nicht
» auszahlen

Frag die Chinesen wie Reverse Engineering geht, die sind darin Spitze. :-D

gast

27.12.2018,
18:41

@ matzi682015

OCR1AL

»
» Wie kann ich denn kucken was für ein Programm da drauf ist in meiner Uhr?
» Also den Programmcode, die SW, wo kann ich die anzeigen lassen und lesen?

Vom Anbieter die SW verlangen oder downloden, ändern (anpassen) und neu aufspielen.
Aus dem µC kannst du nichts auslesen - also fast nicht. Dort ist nur mehr der HEX Code
den der Compiler erzeugt hat. Revers Ingeniering wird sich da wohl nicht auszahlen und eventuell
sind Fuses gegen das auslesen gesetzt.

matzi682015(R)

E-Mail

Aachen,
27.12.2018,
18:28

@ mnemonic

µC-Uhr

» » » » Gibt zwar Grenzen beim
» » » » "Ziehen", die sollten aber noch nicht erreicht sein.
» » »
» » » Ich werds die Tage mal ausprobieren, hab den Controller und solcherlei
» » » Quarze im Fundus. Interessiert mich jetzt selbst.
» » »
» » » » Außerdem, 5sek am Tag, na ja... Ich weiß ja nicht was du mit der Uhr
» » » » vorhast. Sind in 14 Tagen nur rund 1 Minute.
» » »
» » » 5s/d ist schon mehr als man tolerieren muss, das kann so ein Quarz
» schon
» » » besser.
» »
» » Also ich habe schon sehr sehr viele Quarz-Uhren gebaut in meinem kleinen
» » Elektronikerleben :-D , mit 3,2768MHz- oder 32,768kHz-Quarzen, und die
» » musste ich nie stellen. Das waren keine µC-Uhren, sondern diskret mit
» 4060
» » als Oszillator und 4017-usw.-Zählern und Treibern halt. Und auch Uhren
» die
» » die Netzfrequenz als Takt haben, die gehen auch immer richtig.
»
» Da Quarze nicht so teuer sind würde ich einfach einen odere mehrere andere
» ausprobieren und schauen ob das Problem auch dann noch auftritt. Falls ja,
» ist es vielleicht ein SW Problem oder C-Problem, falls nein, Problem
» gelöst.

Also meinem ersten Link folgend...

https://www.mikrocontroller.net/articles/AVR-Tutorial:_Uhr

... erfahre ich dass die Ganggenauigkeit auch sehr von der Software abhängig ist.

--
greets from aix-la-chapelle

Matthes :hungry:

matzi682015(R)

E-Mail

Aachen,
27.12.2018,
18:26

@ mnemonic

OCR1AL

» » » » » Du musst das Compare Register OCR1 anpassen, das steuert die
» 100stel
» » » » » Sekunden.
» » » » » Alle 40.000 Zyklen wird eine 100stel Sekunde hochgezählt. Im Code
» » ist
» » » » das
» » » » » gut dargestellt.
» » » » » Alternativ könntest du z. B. um Mitternacht 5 Sekunden abziehen.
» » » »
» » » » Hallo, das µC-Kerlchen ist ein AT89C2051, habe den in eine Fassung
» » » » gesteckt. Kann ich den rausnehmen und irgendwie aus-/einlesen? Das
» » habe
» » » ich
» » » » noch nie gemacht! Wie geht das? Ich habe so ein paar
» Programmierkits,
» » » z.B.
» » » » das Board STK500 von ATmel. Und ein SmartUSB- light -
» Programmierstick
» » » » (AVR-ISP-Programmer), "mySmartUSB light" steht drauf.
» » »
» » » Die SW hinter dem Link ist nicht für diesen Controller gedacht.
» Deshalb
» » » wird das nix mit dem Register OCR1
» » » Sorry.
» »
» » welche SW hinter welchem Link bitte?
»
» Dieser Link https://www.mikrocontroller.net/articles/AVR-Tutorial:_Uhr
» steht in deinem ersten Posting.
» Wenn du dem Link folgst und dort etwas nach unten scrollst findest du das
» Assembler Programm für eine Uhr. Die Chinesen kopieren gerne solche SW/HW
» und vermarkten sie dann billigst im ebay oder bei Ali.

Wie kann ich denn kucken was für ein Programm da drauf ist in meiner Uhr? Also den Programmcode, die SW, wo kann ich die anzeigen lassen und lesen?

--
greets from aix-la-chapelle

Matthes :hungry:

matzi682015(R)

E-Mail

Aachen,
27.12.2018,
15:37
(editiert von matzi682015
am 27.12.2018 um 15:39)


@ mnemonic

OCR1AL

» » » » » Du musst das Compare Register OCR1 anpassen, das steuert die
» 100stel
» » » » » Sekunden.
» » » » » Alle 40.000 Zyklen wird eine 100stel Sekunde hochgezählt. Im Code
» » ist
» » » » das
» » » » » gut dargestellt.
» » » » » Alternativ könntest du z. B. um Mitternacht 5 Sekunden abziehen.
» » » »
» » » » Hallo, das µC-Kerlchen ist ein AT89C2051, habe den in eine Fassung
» » » » gesteckt. Kann ich den rausnehmen und irgendwie aus-/einlesen? Das
» » habe
» » » ich
» » » » noch nie gemacht! Wie geht das? Ich habe so ein paar
» Programmierkits,
» » » z.B.
» » » » das Board STK500 von ATmel. Und ein SmartUSB- light -
» Programmierstick
» » » » (AVR-ISP-Programmer), "mySmartUSB light" steht drauf.
» » »
» » » Die SW hinter dem Link ist nicht für diesen Controller gedacht.
» Deshalb
» » » wird das nix mit dem Register OCR1
» » » Sorry.
» »
» » welche SW hinter welchem Link bitte?
»
» Dieser Link https://www.mikrocontroller.net/articles/AVR-Tutorial:_Uhr
» steht in deinem ersten Posting.
» Wenn du dem Link folgst und dort etwas nach unten scrollst findest du das
» Assembler Programm für eine Uhr. Die Chinesen kopieren gerne solche SW/HW
» und vermarkten sie dann billigst im ebay oder bei Ali.

SW = Software, HW = Hardware? (Ja!!!) Hätteste ja auch gleich schreiben können :-D

--
greets from aix-la-chapelle

Matthes :hungry:

mnemonic(R)

27.12.2018,
12:24

@ matzi682015

µC-Uhr

» » » Gibt zwar Grenzen beim
» » » "Ziehen", die sollten aber noch nicht erreicht sein.
» »
» » Ich werds die Tage mal ausprobieren, hab den Controller und solcherlei
» » Quarze im Fundus. Interessiert mich jetzt selbst.
» »
» » » Außerdem, 5sek am Tag, na ja... Ich weiß ja nicht was du mit der Uhr
» » » vorhast. Sind in 14 Tagen nur rund 1 Minute.
» »
» » 5s/d ist schon mehr als man tolerieren muss, das kann so ein Quarz schon
» » besser.
»
» Also ich habe schon sehr sehr viele Quarz-Uhren gebaut in meinem kleinen
» Elektronikerleben :-D , mit 3,2768MHz- oder 32,768kHz-Quarzen, und die
» musste ich nie stellen. Das waren keine µC-Uhren, sondern diskret mit 4060
» als Oszillator und 4017-usw.-Zählern und Treibern halt. Und auch Uhren die
» die Netzfrequenz als Takt haben, die gehen auch immer richtig.

Da Quarze nicht so teuer sind würde ich einfach einen odere mehrere andere ausprobieren und schauen ob das Problem auch dann noch auftritt. Falls ja, ist es vielleicht ein SW Problem oder C-Problem, falls nein, Problem gelöst.

--
"Immer genügend Widerstand mitbringen"

mnemonic(R)

27.12.2018,
12:22

@ matzi682015

OCR1AL

» » » » Du musst das Compare Register OCR1 anpassen, das steuert die 100stel
» » » » Sekunden.
» » » » Alle 40.000 Zyklen wird eine 100stel Sekunde hochgezählt. Im Code
» ist
» » » das
» » » » gut dargestellt.
» » » » Alternativ könntest du z. B. um Mitternacht 5 Sekunden abziehen.
» » »
» » » Hallo, das µC-Kerlchen ist ein AT89C2051, habe den in eine Fassung
» » » gesteckt. Kann ich den rausnehmen und irgendwie aus-/einlesen? Das
» habe
» » ich
» » » noch nie gemacht! Wie geht das? Ich habe so ein paar Programmierkits,
» » z.B.
» » » das Board STK500 von ATmel. Und ein SmartUSB- light - Programmierstick
» » » (AVR-ISP-Programmer), "mySmartUSB light" steht drauf.
» »
» » Die SW hinter dem Link ist nicht für diesen Controller gedacht. Deshalb
» » wird das nix mit dem Register OCR1
» » Sorry.
»
» welche SW hinter welchem Link bitte?

Dieser Link https://www.mikrocontroller.net/articles/AVR-Tutorial:_Uhr steht in deinem ersten Posting.
Wenn du dem Link folgst und dort etwas nach unten scrollst findest du das Assembler Programm für eine Uhr. Die Chinesen kopieren gerne solche SW/HW und vermarkten sie dann billigst im ebay oder bei Ali.

--
"Immer genügend Widerstand mitbringen"

bastelix(R)

27.12.2018,
01:54

@ matzi682015

µC-Uhr

Hallo Matzi,

» aber wie kann der µC bzw. das Programm bzw. der Programmcode feststellen, dass mein quarz 1 kHz weniger hat?
Ohne zusätzliche, externe, Referenzen?
Vorstellbar wäre, dass man ein Programm ausführt, dessen Laufzeit bekannt bzw. exakt berechenbar ist und darüber eine Kalibrierung vornimmt.
Kleines Beispiel für so ein Programm:
Sortiere das Array [1,2,3,4,5] von groß zu klein. Ergebnis: [5,4,3,2,1]. Die Laufzeit lässt sich, bei bekanntem Sortier-Algorithmus, berechnen. Wenn man die Laufzeit der Sortierung anhand der Systemzeit misst und mit bekannten Laufzeiten vergleicht könnte man die Abweichung des Quarzes ermittelt.
Ich kann mir aber nicht vorstellen, dass man diesen Aufwand betreibt, anstatt bessere Bauteile zu verwenden. Und wenn die Bauteile nix kosten dürfen ist die Genauigkeit eher auch Wurst.

Wie schon im anderen Post geschrieben, lass uns mal auf die Test-Ergebnisse von xy warten :)

bastelix(R)

27.12.2018,
01:39

@ matzi682015

µC-Uhr

» Nein, den Code für die Uhr habe ich nicht. Besorgen kann ich den auch
» nicht, weil es ist ein aus der Bucht von China sehr billiges Teil, ein
» Bausatz.
Du könntest mal den Händler anschreiben, kann etwas bringen, muss aber nicht. Ich hab das schon öfter gemacht. Von "Keine Ahnung, ich verkaufe das Zeug nur" bis zu "Schau mal in den Anhang, wenn dir das nicht hilft melde dich nochmal" war schon alles dabei. Bei letzterem war im Anhang eine Sammlung von Datenblättern, Beispielcode, angepasste Bibliotheken und noch einiges mehr (teilweise auf Chinesisch ;) )

» TripelEdit: Ich weiß auch nicht warum ich geschrieben habe es mit diesem
» Uhrenmodul zu lassen. Ich gebe zu schnell auf.
Manchmal bekommt man halt nen Rappel... Aber aufgegeben hast ja anscheinend doch nicht ;-)

» Das posting ist doch gar nicht gelöscht!? Hast Du weiter geblättert? Er ist
» jetzt nur nach hinten gerückt, weil es ja immer neue Threads gibt. Auf
» Seite 2 steht er noch.
Ich meinte damit, dass du deinen Text editiert und den ursprünglichen Post dadurch gelöscht hast. Sel hat (vermutlich) einen Full-Quote gemacht ( http://www.elektronik-kompendium.de/forum/forum_entry.php?id=266580&page=0&category=all&order=time ) aber besser lesbar (für die Nachwelt) wäre es gewesen, wenn du deinen initialen Post nicht entfernt hättest. Ist aber auch nicht so wild.

» Doppeledit: Das Schaltbild wird dieses hier sein:
»
»
Ja, hab den Teil vom Quarz im Schaltplan im Post von Sel mit deinen Fotos verglichen. Der Quarz bestimmt die Takt-Fequenz des µC und darüber wir dann per Software die Uhrzeit bestimmt. (Sofern die da nix sehr, sehr, verdammt wildes im Code vom µC machen... Glaub ich aber eher nicht) Den Ansatz kenne ich als eher ungenau, weil man da im Code noch einiges machen kann um die interne Uhr vom µC zu verstellen. Ist für den internen Ablauf des Programms meistens unerheblich, aber für eine Uhr eher ungeeignet. Andererseits soll dein µC und dessen Code nicht viel mehr machen als eine Uhr zu sein...

Da xy das mal nachstellen möchte, würde ich mal auf seine Ergebnisse warten. Danach können wir noch immer schauen wie wir deinen µC umprogrammiert bekommen und zur Not ein RTC-Modul an den Bausatz anflanschen können. (Also das Problem mit mehr Hardware erschlagen ;-) )

matzi682015(R)

E-Mail

Aachen,
27.12.2018,
01:17
(editiert von matzi682015
am 27.12.2018 um 01:18)


@ bastelix

µC-Uhr

» » Quarz austauschen ginge auch? Also die genaue Quarzfrequenz ist doch
» auch
» » irgendwie direkt zu Anfang des Programmcodes fest definiert, kann man
» also
» » trotzdem einen Quarz nehmen der 1kHz oder so weniger hat??
» Nein! Du kannst einen anderen Quarz mit der gleichen Frequenz verwenden,
» aber die Frequenz muss zu der Konfiguration des µC passen. Also einen
» anderen 12MHz Quarz kannst du ohne weiteres einsetzen. Eine andere Frequenz
» kannst du nur verwenden, wenn du den µC neu Programmieren und die
» Konfiguration für die Takt-Frequenz ändern kannst.

Hallo Bastelix, aber wie kann der µC bzw. das Programm bzw. der Programmcode feststellen, dass mein quarz 1 kHz weniger hat? Die Quarze haben doch auch Toleranzen! Puuh, das ist ein nicht so einfaches Thema...

--
greets from aix-la-chapelle

Matthes :hungry:

bastelix(R)

27.12.2018,
00:57

@ matzi682015

µC-Uhr

» Quarz austauschen ginge auch? Also die genaue Quarzfrequenz ist doch auch
» irgendwie direkt zu Anfang des Programmcodes fest definiert, kann man also
» trotzdem einen Quarz nehmen der 1kHz oder so weniger hat??
Nein! Du kannst einen anderen Quarz mit der gleichen Frequenz verwenden, aber die Frequenz muss zu der Konfiguration des µC passen. Also einen anderen 12MHz Quarz kannst du ohne weiteres einsetzen. Eine andere Frequenz kannst du nur verwenden, wenn du den µC neu Programmieren und die Konfiguration für die Takt-Frequenz ändern kannst.

matzi682015(R)

E-Mail

Aachen,
26.12.2018,
20:40

@ mnemonic

OCR1AL

» » » Du musst das Compare Register OCR1 anpassen, das steuert die 100stel
» » » Sekunden.
» » » Alle 40.000 Zyklen wird eine 100stel Sekunde hochgezählt. Im Code ist
» » das
» » » gut dargestellt.
» » » Alternativ könntest du z. B. um Mitternacht 5 Sekunden abziehen.
» »
» » Hallo, das µC-Kerlchen ist ein AT89C2051, habe den in eine Fassung
» » gesteckt. Kann ich den rausnehmen und irgendwie aus-/einlesen? Das habe
» ich
» » noch nie gemacht! Wie geht das? Ich habe so ein paar Programmierkits,
» z.B.
» » das Board STK500 von ATmel. Und ein SmartUSB- light - Programmierstick
» » (AVR-ISP-Programmer), "mySmartUSB light" steht drauf.
»
» Die SW hinter dem Link ist nicht für diesen Controller gedacht. Deshalb
» wird das nix mit dem Register OCR1
» Sorry.

welche SW hinter welchem Link bitte?

--
greets from aix-la-chapelle

Matthes :hungry:

mnemonic(R)

26.12.2018,
20:28

@ matzi682015

OCR1AL

» » Du musst das Compare Register OCR1 anpassen, das steuert die 100stel
» » Sekunden.
» » Alle 40.000 Zyklen wird eine 100stel Sekunde hochgezählt. Im Code ist
» das
» » gut dargestellt.
» » Alternativ könntest du z. B. um Mitternacht 5 Sekunden abziehen.
»
» Hallo, das µC-Kerlchen ist ein AT89C2051, habe den in eine Fassung
» gesteckt. Kann ich den rausnehmen und irgendwie aus-/einlesen? Das habe ich
» noch nie gemacht! Wie geht das? Ich habe so ein paar Programmierkits, z.B.
» das Board STK500 von ATmel. Und ein SmartUSB- light - Programmierstick
» (AVR-ISP-Programmer), "mySmartUSB light" steht drauf.

Die SW hinter dem Link ist nicht für diesen Controller gedacht. Deshalb wird das nix mit dem Register OCR1
Sorry.

--
"Immer genügend Widerstand mitbringen"