Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Drehspuluhr
#1
Hallo zusammen

Mark und rumliegende Instrument ist schuld, dass ich eine baue.

Meine Konzept sieht so aus, dass Atmega regelmässig RTC abfragt und dann PWM (pulsweitemodulation) für Instrument erzeugen. Wichtig ist: Kein Verlust von Uhrzeit beim Netzspannungsausfall bzwl leere Batterie.
Deshalb  batteriegestützte RTC basiert IC DS1307.



Zutaten:
 
1x Arduino (wichtig ist Atmega 328)  ( http://www.ebay.de/itm/272445645685?_trk...EBIDX%3AIT )
1x DS1307  ( http://www.ebay.de/itm/281904226543?_trk...EBIDX%3AIT )
3x Poti (20k)
3x Widerstand (10k)
2x Taste

und natürlich 3x Instrument.



Aktuelle Stand ist Gehause (war  Testadapter ) mitsamt Instrument bestückt.
http://radio-bastler.de/forum/attachment...nail=34103

Aufgrund fehlende  DS1307 (unterwegs aus China)  läuft Uhr auf eigene Takt, der Code auch noch nicht optimiert ist. = Gangfehler von mehre Sekunden pro Stunden  möglich.
Mir ist wichtiger: Funktion von PWM und Eichung von Instrument per Poti.

Später kommt dann Stellfunktion dazu und natürlich wird dann DS1307 anbinden.
Schaltplan wird später auch erzeugt.


.txt   main.txt (Größe: 2,16 KB / Downloads: 34) ACHTUNG: Keine ARDUINO-Quellcode, sondern C-Quellcode. (Grund: wo gibt billige Board mit Atmega328, Quarz und so) drauf? )
(Quellcode, vorlaufig,  auf eigene Takt laufen, ohne Stellmögichleit)


Grüss
Matt
Zitieren
#2
Matt, erstmal frohes Neues Smile
warum für jedes Analoges ein Poti? Wo doch schon PWM da ist, und Tasten zum Stellen eh nötig sind...
Ein Widerling zum Schutz vor grober Überlast/ grobe Anpassung an den Strombereich (50µ bis 100?mA) und den Rest in SW?

Wenn schon mit viel Hardware, dann dazu noch DCF77 mit Röhrenvorstufe , die sich einmal pro Tag (und auf Knopfdruck Smile ) anwärmt Tongue

Gruß Henrik
Zitieren
#3
hi Hendrik.

Atmega 328 hat 3x Timer = 6 PWM-Kanal, davon ist  nur  eine 16 bit Timer
D.H. ich brauche  mindenst 3x PWM  d.H. ich müsste mit 8bit Timer auskommen.
8 bit macht dann 255 Schritte.. das ist schon magere 1-4 Einstellbereich. (60-120-180-240), wenn man saubere Sprung haben will. Ansonst kann man so machen, Sekunden wird halt einfach fliessend angezeigt.


Achja, heute kleine Aktualisierung:  Skala passend beschriften und gedruckt

   

auch hier gilt 2017 lieber Matt: Bitte Bilder in den Beitrag einfügen, vielen Dank

Grüss
Matt
Zitieren
#4
Heute bin ich weiter.

wobei einer hat mir von DS1307 abgeratet und mir DS2321 empfholen.
Warum ?
Chinese lötete irgenwelchere Quarz rein, da ist grössere Gangfehler möglich, der beim DS2321 elemiert ist.
Aber Code ist für beide Module  kombitabel.

-> http://www.ebay.de/itm/391499267511

Code ist auf neuste Stand.  Siehe ZIP File.. (fertige HEX-file ist auch da,  aber ACHTUNG: keine Arduino-Code)

.zip   meterclock.zip (Größe: 13,89 KB / Downloads: 42)

Schaltplan ist nach Kinderstil, aber selbstklärend gemalt.
   

Grüss
Matt

VIEL SPASS damit
Zitieren
#5
ACHTUNG: Keine ARDUINO-Quellcode, sondern C-Quellcode. (Grund: wo gibt billige Board mit Atmega328, Quarz und so) drauf? )

Hallo Matt,
wo ist da genau der Unterschied, ich baue nämlich auch gerade mit Arduino Mega 2560. Nehme ich den Arduinoquellcode (auch normales ANSI-C) und nenne die Dateien von .ino um in .c oder .cpp, die Libs sind entpackt ja sowieso .h und .c/.cpp Dateien, werfe alles den avrgcc vor, wird auch ein Hex zum laden über den Bootloader erzeugt. 
Kann es sein das die Arduino-IDE nur ein besser verpacktes avrgcc oder ein C-Compiler in Java geschrieben und mit Java-IDE ist? Von der Hardware aus sind die Arduino ja AVR-Kontroller auf genormten Evaluation-boards. Mit den Arduino Nanos gibt es 5 Stück mit 328Mega für um die 15 EUR. Da löte ich nicht mehr selbst bei dem Preis.
Ansprechpartner für Umbau oder Modernisierung von Röhrenradios mittels SDR,DAB+,Internetradio,Firmwareentwicklung. 
Unser Open-Source Softwarebaukasten für Internetradios gibt es auf der Github-Seite! Projekt: BM45/iRadio (Google "github BM45/iRadio")
Zitieren
#6
Hallo Matt,

ich kann mir die Antwort selbst geben: https://de.wikipedia.org/wiki/Arduino_(Plattform)

Zitat: "...Die Entwicklungsumgebung basiert auf Processing (ein vereinfachtes Java) und soll auch technisch weniger Versierten den Zugang zur Programmierung und zu Mikrocontrollern erleichtern. Die Programmierung selbst erfolgt in C bzw. C++, wobei technische Details wie Header-Dateien vor den Anwendern weitgehend verborgen werden und umfangreiche Bibliotheken und Beispiele die Programmierung vereinfachen...."

Also sind die Arduinoquellcodes mit C/CPP gleichzusetzen was mein Versuch oben bestätigt.
Ansprechpartner für Umbau oder Modernisierung von Röhrenradios mittels SDR,DAB+,Internetradio,Firmwareentwicklung. 
Unser Open-Source Softwarebaukasten für Internetradios gibt es auf der Github-Seite! Projekt: BM45/iRadio (Google "github BM45/iRadio")
Zitieren
#7
ich weiss nicht, wie Arduino IDE mit reine C Code umgeht.. wenn der doch direkt mit C Code umgehen könnte, dann finde ich nochmals toller. Ich wird aber nicht mit Arduino IDE benutzen, keine Notwendigkeit gibt da, weil ich schon direkt mit C losgehe.
Eins hab ich gemerkt, dass Arduino-Sprache nah an C ist. dafür vereinfachert.

AVR-GCC, damit arbeite ich, reicht aus und ist leistungstark, lass aber nicht von Kommandozeilen-Eingabe abschrecken. (ich hab da kleine Hilfe gemacht, eine Stapeldatei *.bat geschrieben und damit geht es los)


(13.01.2017, 20:22)Bernhard45 schrieb: Mit den Arduino Nanos gibt es 5 Stück mit 328Mega für um die 15 EUR. Da löte ich nicht mehr selbst bei dem Preis.
Das ist Grund, warum ich diese Board benutzen und Bootloader rauswerfen (eher durch USBasp an ICSP übergeschrieben) .

Grüss
Matt
Zitieren
#8
Ja die Nanos sind wirklich praktisch! Leider bin ich noch auf den Bootloader angewiesen, denn ich habe noch keinen eigenständigen Brenner der über ICSP geht.

Weiter im Wiki stand noch: "Die Arduino-IDE bringt einen Code-Editor mit und bindet gcc als Compiler ein. Zusätzlich werden die avr-gcc-Library und weitere Arduino-Librarys eingebunden, die die Programmierung in C und C++ stark vereinfachen."

Also läuft doch letztendlich alles auf den avr-gcc heraus. Toll das das alles so Plattformunabhängig funktioniert, so kann ich auf meinen ODROID C2 die ganze Programmierung der AVR erledigen. Aber nun zurück zum Thema.
Ansprechpartner für Umbau oder Modernisierung von Röhrenradios mittels SDR,DAB+,Internetradio,Firmwareentwicklung. 
Unser Open-Source Softwarebaukasten für Internetradios gibt es auf der Github-Seite! Projekt: BM45/iRadio (Google "github BM45/iRadio")
Zitieren
#9
Sorry, spät geantwortet, Bernhard, da kannst du USBasp nehmen, der kostet nichtma, 5€, müsste aber an Arduino 6polige ICSP (ist AVR-Standard, nutze ich auch) angepasst, was es mit  angepasste Kabeln erledigt ist.


diese Code  mit kleine Änderung (6 Zeile) dazugeschrieben wird auch   für andere Uhr genutzt.
I²C Display, die ich komplett selbst entwickelt habe, mitsamt Lattice CPLD.
Zifferzeichen ist  von  TIL311  & HP 5082-7300 abgeguckt, allerdings auf 3cm Ziffergrösse vergrössert und mit SMD LED bestückt.
Name hat der schon "bigTIL"

.jpg   IMG_2205.JPG (Größe: 36,68 KB / Downloads: 100)
Zitieren


Gehe zu: