Archiv für Kategorie ‘Arduino’

C++ einfach mal was Serial gesendet

man möchte aus seinm Progrämmchen einfach mal was schicken können. Da ich ziemlich lange damit rum gemacht habe hier die Lösung, die einfach funktioniert und kaum Zeilen Code braucht. Das Progrämmchen liest einen String von der Console und schickt ihn z.B an einen Arduino


#include "SenSerial.h"
#include // include boost
using namespace::boost::asio; // save tons of typing
#include
#include
using std::cin;

const char *PORT = "/dev/ttyUSB0";
serial_port_base::baud_rate BAUD(19200);
serial_port_base::flow_control FLOW( serial_port_base::flow_control::none );
serial_port_base::parity PARITY( serial_port_base::parity::none );
serial_port_base::stop_bits STOP( serial_port_base::stop_bits::one );

int main()
{
io_service io;
serial_port port( io, PORT );
port.set_option( BAUD );
port.set_option( FLOW );
port.set_option( PARITY );
port.set_option( STOP );

std::string command = "";
cin >> command;
command += "\n";
write( port, buffer( command, 8 ) );
printf("Done !");
return 0;
}

Arduino in Japan

Arduino auf japanisch…

Japanino

Das ganze ist ein ziemlich Dickes Buch mit Anleitungen und Hintergrund Infos zur Szene. 33 Euro finde ich da nicht zu viel

Display Modul

nach dem Ich ja einen das Arduino am 5110 Nokia Display am Laufen hatte wollte ich das ganze ein wenig Modularisieren und habe die Schaltung nachbauen wollen. Leider verträgt das 5119 Display nur 3,3 Volt als habe ich die Bastler Kollegen befragt und einen Spannungsteiler organisiert, der aus den 5V der Schaltung 3,3 V für das Display macht.

Hier die gesamt Schaltung für das Modul, daß nun das Display , den Dreh Encoder und den SpannungsTeiler enthält

Display_Encoder_Modul

So sieht die Schaltung fertig aufgebaut aus…die Unterseite zeige ich mal nicht, so der perfekte Löter bin ich nämlich nicht

Display_Encoder_gebaute_Schaltung

Und dass es wirklich funktioniert sieht man hier

Display_Encoder_funktioniert

So als nächstes steht die Programmierung und das Stepper Treiber Modul an. Dann ist er bald fertig, der kleine Stepper Tester oder Experiementierer
Wohl noch ein schönes Stück Arbeit und gefummel bis alle Hard und Software Probleme behoben sind aber man braucht ja noch Projekte 😉

Minimalistischer Ansatz

Hier zur Erinnerung wie man einen mit Arduino geflashten Atmega328 Seriall anschliessen kann

Als Serielle Verbindung dient z.B. ein USB to Seriell Adapter wie er für Arduino Mini’s verwendet wird, Daher auch die Pinbelegung der Verbindungs Anschlusse, müssen keine Schraubbaren sein, besser sind sogar einfache Stifleisten

MinimalistikSeriallToArduino

MinimalistikSeriallToArduino

Ist noch ein wenig kümmerlich, weil ja nicht mal ne LED angeschlossen ist aber man braucht ja noch Projekte 😉

Arduino am 5110 Nokia Display

Hier mal wieder was aus der Arduino Ecke als Notiz an mich weil es doch immer einen Augenblick dauert bis man das so laufen hat, wenn man die Specs nicht gefressen hat 😉

Das Standard LCD für 5110 und 3110 Handy war das PCD8544 (84×84 Punkte) Display. Wer nach einer dieser Bezeichnungen sucht wird erschlagen von guten und teileweise sinnlosen Infos und downloads.

Hier kann man das Display für fünf Euro bestellen Komputer.de

Bei alhin.de gibt’s eine gute Beschreibung wie es belegt ist und die wichtigsten Libraries und Code Beispiele zum Download

Bei Frank Eberle gibt’s einen schönen kurzen Artikel, der aber auf das Problem mit den veraltetn Includes hinweist

Hier kann ich auch mal auf mich selbst verlinken, weil die Arduino IDE einfach rotz ist und immer die Libraries an unmöglichen Stellen sucht, wenn man schon mal was ausgefeilteres gesehen hat will man nicht glauben was ArduinoPfadehier zu lesen ist…

Bei Sparkfun gibt eine ganz gute Übersicht wie man das Display bei den verschiedenen Arduinos anschliesst
Das Display verträgt nur 3,3 Volt !!!

Bei Ladyada gibt’s noch mal eine gute Beschreibung.
Auf PINOUT achten, es gibt jede Menge Displays, die sich 5110 kompatibel nennen aber dann ein anderes PIN OUT haben

Wenn man dann alles beachtet hat, einen Arduino Duemilanova und das oben genannte Display verdrahtet hat sieht das in etwa so aus

5110ArduinoDuemilanova

5110ArduinoDuemilanova

Leider läßt WordPress den Upload von SVGs nicht zu,daher hier als tar.gz File 5110ArduinoDuemilanove.svg.tar.gz

Und so sieht’s dann aus wenn man den Beispiel Code von Sparkfun hochgeladen hat und wie oben beschrieben verdrahtet hat

ArduinoDisplay

ArduinoDisplay

weil nicht viel erkennt hier noch mal ohne Beleuchtung. Wer genau hinsieht, wird die fehlende Brücke zwischen Pin 1 und 8 bemerken.

ArduinoDisplayDunkel

ArduinoDisplayDunkel

Wer ein anderes Display betreiben will hat damit eine gute Grundlage, da auch dieses Display über den SPI Standard angeschlossen ist. Dies ist eine Kombination aus Serialler Bus Verdrahtung mit Steuerprotokoll, auf Wikipedia gibt es dazu einen Artikel, der mehr erklärt

So jetzt können die Displays kommen, man braucht ja noch Projekte 😉

arduino „does not name a type“

Wieder mal ein Posting zu meiner Erinnerung, weil ein sehr merkwürdiges Verhalten, der Arduino IDE dazu führt daß man Stunden verbrät ohne ein Ergebnis zu Produzieren.Auch gibt es wenig dazu bei GOOGLE

Bei der 1.0.1 Version ist sogar die Fehlermeldung irreführend
„….does not name a type“

Bei der 1.0 Version lautete die Fehlermeldung noch
„…No such file or directory“

was eher stimmt. Irreführend ist auch, daß alle Libraries aufgehen aber nicht compiliert werden können.

Lösung
man muss die Library direkt ins libraries Verzeichnis kopieren.
Das ist bei einer über die Paket Verwaltung installierten Arduino IDE einfach nur anstrengend.
Daher besser downloaden und ins Home Verzeichnis installieren und das richtige Verzeichnis suchen

[Edit]
Bei der Version 1.0.3 tritt das gleiche Problem auf. Es gibt zwar eine Readme aber die enthält nur einen toten Link
Richtig ist daß die librarie und alle ihr Includes ins Verzeichnis sketbook libraries geladen werden. Z.B unter Linux
~/sketchbook
Der Pfad läßt sich in der IDE unter File->Preferences->Sketch Location einstellen/heraus finden

Nach oben