Freitag, 24. Januar 2014

ISP Shield für Arduino UNO

Einen Arduino UNO nutzen, um für ATMEGA328P den Bootloader zu laden. Auf dem Arduino UNO läuft der "Arduino ISP" Sketch. Zusätzlich noch einen 6 poligen ISCP Socket angeschlossen. Funktioniert super!

DIY ISP Shield for Arduino UNO
Different view DIY ISP Shield for Arduino UNO



MOSI, MISO und SCK werden wie gewohnt angeschlossen, für RESET wird der Port D10 an den ICSP Socket geführt. Zusätzlich werden noch 3 LED angeschlossen als Anzeige für Bereitschaft (Port D9), Programmierung (Port D7) und Fehlerfall (Port D8).

ArduinoISP Tutorial


DS3232 RTC Modul für Arduino

Nachdem ich fast alle RTC in meinen Projekten mit einem DS1307 umgesetzt hatte und nicht glücklich war mit der "Genauigkeit" dieser RTC, habe ich mich nach Alternativen umgesehen. Der DS3232 ist deutlich teuer, schon nur als Chip ohne Board, wie die meisten DS1307 RTC Module.
Also mußte ich mir erst einmal mein DS3232 RTC Shield bauen, um dann zu sehen, wie genau diese Lösung ticken würde.
DS3232 Shield mit UNO und Leonardo I2C Anpassung

Erster Entwurf für das DS3232 Shield, zu dieser Zeit hatte ich nur Arduino UNO Boards

Ein DIY RTC Shield mit DS3232 (Datenblatt DS3232), I2C Bus für Arduino UNO und Leonardo mit Umschalter. Für UNO an A4 (SDA), A5 (SCL) und D2, D3 für Leonardo Boards.

Die I2C Adresse der RTC ist 0x68. Als Arduino Lib habe ich DS1307new genutzt. 
Es gibt allerdings auch eine Bibliothek speziell für die DS3232RTC.

Mit meiner DCF77 basierenden Arduino-Uhr konnte ich diese Uhr sehr genau stellen und bin begeistert, wie genau diese RTC die Zeit hält.

Nachtrag 17.09.2016

Haben mir gerade diesen Artikel angesehen, das Shield habe ich mit einem DS3232, den ich einzeln für damals 5€, einem das Proto-Board für 4€ und mit einer Batteriehalterung für ein paar Cent gebaut. Den SMD Schaltkreis mit der Hand zu löten ging so. Jetzt habe ich ein komplettes DS3232 Board für 1€ aus China bekommen, so schön es ist, damit zu basteln, der Anreiz etwas selbst zu bauen wird immer geringer. 

MAX232N Programmer für Arduino


Dieser Beitrag hat mich für dieses Projekt inspiriert: avr-programmer-max-232

An meinem Laptop (DELL C640) habe ich noch eine serielle Schnittstelle zur Verfügung, das Projekt soll diesen COM Port nutzen, meine Arduinos und DIY Clones zu programmieren.
Schaltplan für MAX232N AVR Programmer (Quelle: avr-programmer-max-232)

Dazu muß natürlich der Arduino Bootloader installiert worden sein, geht mit dem Arduino ISP Shield.


So sieht das fertige Modul aus, der COM Port ist mit 19200 bps 8N1 ohne Flusskontrolle konfiguriert, DTR über 100 nF mit dem Reset vom Arduino verbunden.
Habe mein Board erfolgreich und recht schnell programmiert, braucht die Stromversorgung über das Board.

Hier ein Bild, das die Verbindung zu den FTDI Verbinder auf dem Board zeigt
Unter txapuzas.blogspot.com und unter arduinodiy.wordpress.com habe ich einen alternativen Aufbau gefunden, der auf Anhieb funktioniert hat.
2. Versuch, ein etwas kompakteres Design
Anwendung mit Programmer Board


Serielle Schnittstelle von Alberto Piganti aus ABC

Dienstag, 14. Januar 2014

Arduino DCF77 mit GLCD 128x64 Display

Projektbeschreibung

Ich liebe Uhren, besonders mechanische mit automatischem Aufzug, so viele Komplikationen, wie möglich, allerdings sollten die Uhren schon genau gehen, und wenn nicht, dann muss man ein Normal als Referenz zur Verfügung haben.
Nachdem ich seit meiner Ausbildung nur noch selten etwas mit Elektronik zu tun hatte, ist meine Leidenschaft mit einem Conrad Adventskalender, der elektronische Bauelemente in den Türen versteckt, dazu gibt es Idiotensichere Beschreibungen zu den kleinen Experimenten, hatte es für meine Töchter gedacht und dann doch selbst damit gebastelt, wieder geweckt worden.

Der Schritt zu einem Arduino und einer kleinen Werkstatt war dann nicht mehr so groß. Nach ein paar Lötübungen an einem Kapaztätsmesser und anderen Bausätzen, habe ich mit dem Arduino Digitale Uhren gebastelt.
RTC Modul an den Arduino angeschlossen, ein 1602 LCD Display genutzt, fertig war die DS1307 basierte Uhr! Unterschiedliche Displays versucht, und immer wieder eine Uhr gebaut.


DS1307 Shield und LCD1602 I2C Display
SD1602 Display aus einem alten Drucker mit einem DS1307 RTC Shield

Das Stellen der Uhren war mir mit der Zeit zu mühsam, es sollte doch möglich sein, eine Uhr mit einer anderen zu synchronisieren.
Natürlich sollte die Uhr, mit der man synchronisiert auch recht genau gehen.

Aus dem Haushalt kennt man ja die DCF77 Uhren, sehr genau und man freut sich, wenn mal wieder die Uhren umgestellt werden müssen und man mit diesen keine Arbeit hat.



Mit einem günstigem DCF77 Modul von Pollin und einem SN74HC14N zur Impulsformung konnte man schon ein schönes DCF77 Signal sehen. Für die 3V Versorgungsspannung habe ich die Idee mit der Masse-Erhöhung durch die vorgeströmten Dioden aufgegriffen, aber durch eine LED ersetzt.

200ms DCF77 Signal für logisch 1

Hardware

  • Pollin DCF77 Modul, hier eine sehr gute Beschreibung von Herrn Bernard Redemann zum DCF77 Empfänger
  • Arduino
  • LCD oder GLCD Display

Software

Ablauf

Erster Aufbau mit einem Breadboard, Versorgungsspannung OK, PON OK, Signal mit einer LED an einem OPV und mit DIY Scope überprüft. Signalpegel hat nicht für TTL gereicht, nach Einsatz des SN74HC14N habe ich ein sehr schönes DCF77 Signal bekommen.

Erster Aufbau mit dem Pollin DCF77 Modul und IIC Display
Der nächste Schritt bestand darin, ein DCF77 Shield zu bauen. Ohne Sinn und Verstand angefangen, zu löten und dabei nicht bemerkt, dass...
Erster Versuch DCF77 Shield
ich auf der Unterseite des Prototype Boards bestückt hatte! Super, funktioniert, kann man aber nicht als Shield nutzen. Außerdem hatte dieser Aufbau nur ein OPV zur Signalaufbereitung, hat beim UNO funktioniert, aber beim Leonardo nicht. Der Pegel war nicht TTL konform.

DCF77 board mit 2004 LCD
Wie man im Bild sieht, ist es dann doch gelungen, mit der u8g.setScale2x2(); Funktion, die den gewählten Font vergrößert.


Ergebnis: Arduino Leonardo mit DIY DCF77 Shield und 128x64 GLCD per SPI Schnittstelle  
Alles zusammengebaut, die beiden Displays angeschlossen, fertig! Eine genaue Uhr im Keller, jetzt fehlt das Gehäuse! Leider habe ich überhaupt kein Geschick mit Gehäusen...
Blick auf das DIY Shield für RTC Modul, IIC und SPI