Hallo Leute,
ich versuche seit Stunden das DogM132-5 mit dem MSP430G2231 zum laufen
zu bekommen. Da ich das Launchpad erst seit gestern habe, fehlen mir
noch die Infos das per Hardware SPI zu machen, bzw. steig ich bisher
durch deren Datasheets nur bedingt durch...bin wohl doch zu sehr von den
AVRs verwöhnt scheinbar....
Hier mein Source bisher, bitte nicht auf die Kommentare achten da ich
die Sourcen nur zusammen gehauen habe...
Auf dem Display passiert bisher NULL, wenn ich die "pins" an die LEDs
hänge leuchten sie so wie sie es sollten...nu bin ich gerade ein bissel
ratlos.
Die Initsequence für das Display muß gehen da ich das Display mit den
ATMEGA 644 mit diesem Init zum laufen bekomme!
Hier der Source
Harry S. schrieb:> Hat denn wirklich niemand eine Idee?
1) Oszi dranhängen, Signal aufzeichnen, mit 644 vergleichen.
2) Der MSP arbeitet bei Dir mit 1MHz, soweit ich sehen kann. Passt das?
3) Der 2231 hat ein SPI-Interface eingebaut, warum benutzt Du das nicht?
Ich weiß das der 2231 ein SPI-Interface eingebaut hat, doch bisher
steige ich durch die Datenblätter von TI noch nicht durch....
Ich finde sie leider nicht so sonderlich klar durchdacht wie z.b. die
von Atmel :(
Das mit Oszi wäre eine super Sache, doch habe ich leider keines.
Wenn ich LEDs an die Pins stecke, verhalten die sich zumindest so wie
sie sollen, CS, DatenOut, Reset, Clock, alles wie erwartet, ich teste
das im Einzelschritt..doch....nix tut sich auf den Display.
Dummerweise kann ich den ATMega nicht im Einzelschritt testen da ich mit
dem STK500 arbeite.
Nur, weil sich irgendwelche Pegel statisch so verhalten, wie sie sollen,
müssen sie das lange noch nicht tun, wenn's dynamisch wird. Du könntest
probieren, die Pegelwechsel langsamer zu gestalten, indem Du Pausen
dazwischen einbaust. Oder Du besorgst Dir ein Oszi. Oder Du liest Dich
in die SPI-Thematik ein. Oder Du besorgst Dir ein Oszi.
PS: Besorg' Dir ein OSZI!
Harry S. schrieb:> Ich weiß das der 2231 ein SPI-Interface eingebaut hat, doch bisher> steige ich durch die Datenblätter von TI noch nicht durch....
Also das SPI vom MSP ist wirklich ne Sache von 2 Minuten. Der User's
Guide beeinhaltet alles super erklärt.
Sag womit du Probleme hast und dir wird geholfen.
Hallo Dennis,
super vielen Dank. Ich schau es mir heute Abend nochmal an, die Register
hab ich heute morgen entdeckt gehabt, aber zu mehr war ich noch nicht
gekommen.
Hallo Dennis,
wäre nett wenn du mal drüber schauen könntest, natürlich auch jeder
andere der sich mit dem 430g2231 auskennt :)
Hab den Source mal weggelassen nur die spi_send ist noch drin, ist wohl
übersichtlicher.
typedef unsigned char u8;
Konfiguration für SPI in der main()
USICTL0=USIPE7+USIPE6+USIPE5+USILSB+USIMST+USIGE+USIOE;
USICKCTL=USISSEL_1;
[c]
u8 spi_send(u8 val)
{
u8 in;
USISR=val;
USICNT=USICNT3;
while(USICTL1&(1<<USIIFG))
in=USISR;
return in;
}
[c]
Bin ich soweit richtig?
Liebe Grüße
Harry
..läuft leider immer noch nicht. Hab das Display mal wieder an den
ATMega angeschloßen und läuft. Also der InitString ist okay und auch die
Pins sind richtig definiert. Irgendwas mit dem SPI haut noch nicht
hin...
Hi!
Also ich guck mir das nachher mal an. Hier ist mal eine Übersicht über
die kompletten USI-Register. Das habe ich mir letztes Jahr mal gemacht,
damit ich nicht immer durch den User's Guide gucken muss.
Gruß
Ich hab dir mal ein Minimalbsp. angehängt mit dem bei mir das SPI
funktioniert hat. War mit einem MCP23017 (SPI Version) von Microchip.
Was ich bei mir festgestellt habe ist, dass ich immer nach einem Reboot
einmal was raus schreiben musste, sonst hat die Kommunikation nicht
funktioniert. In den Errata hab ich dazu aber nichts gefunden. Der Code
für das SPI ist nicht von mir, der war von nem Ninja Serial SPI Adapter.
Wie gesagt, funktioniert definitiv, einfach den MCP Kram ignorieren und
nur die SPI relevanten Sachen raus nehmen.
EDIT: Das Project ist für das Code Composer Studio, geile IDE im
Übrigen, nicht vergleichbar mit dem IAR Ding.
Super, vielen Dank. Werde mich gleich mal dran machen.
Was mich allerdings noch ein wenig stört muß ich sagen, die
verfügbarkeit dieser kleinen Sch**cherchen...
Die AVRs bekommt man ja echt an jeder Straßenecke inzwischen, aber bei
den MSP430G2231 z.B. ist es fast günstiger immer die Boards zu kaufen ;)
Nachtrag:
Ja das verwende ich auch, ganz angenehm. Auch wenn es echt ne Umstellung
ist wenn man vorher nur mit dem PN oder der Atmel IDE gearbeitet hat.
Aber ich bin ja lernwillig :)
Ja ich weiß, habe ich damals bei den PICs auch sehr gern gemacht :)
Wow es läuft super!!!!
EXTREM Wichtig, das erste mal senden Zeile spi_write8(0xff);
Hattest Du geschrieben und nu kann ich es sogar bestätigen!!
Keine Ahnung wieso, aber nu läuft es, merkwürdiges verhalten muß ich
sagen.
So richtig was machen kann ich nu leider trotzdem nicht, da der Speicher
nicht ausreicht um eine Kopie des Inhalts vorzuhalten :(
Aber Grundsätzlich gehts, darum gings erstmal!
Vielen Dank nochmals!!
Liebe Grüße
Ja, am Speicher bin ich dann auch gescheitert. Ich glaub das Wissen
könnte man vll. für einen seriell SPI Adapter nehmen, wo man die Daten
nur durchreicht, so wie das bei dem Ninja Projekt gemacht wurde. Was
willst du denn bauen?
Dennis kannst Du trotzdem gern machen. Momentan kann ich soviele Sourcen
wie möglich brauchen :)
Naja das Display hatte ich nur grad rumliegen, wollte nur testen obs
damit eben läuft. Das mit dem Speicher war ja schon von vornherein klar
;)
Ich habe vor die MSP mit den RF868 zu nutzen, dafür brauche ich ja
ebenfalls die SPI Schnittstelle die nun läuft. Habs auch inzwischen
angepasst und den Takt auf max geschaltet. Damit ist das Display echt
sehr schnell.
Vorher bei der Routine konnte ich sehen wie er die Zeilen beschrieb oder
löschte, jetzt ist es eben einfach leer oder voll beschrieben.
War auch t/128 eingeschaltet.
Also das war mal zum Auslesen eines externen ADCs. Ist sehr simpel
gestrickt...so würde ich es nicht mehr machen, weil ohne Interrupts mit
Warteschleifen, aber es geht glaube ich auch mehr um die
Initialisierung.
Hier werden auch nur Daten reingeholt, keine verschickt. Daher ohne SDO.
Ich muss mal gucken, wo ich noch andere Beispiele zum USI hab. Benutz
den kaum noch, weil die größeren Modelle alle USCIs haben, die ja wieder
ganz anders sind.
Aber ich mein, jetzt haste es eh schon hinbekommen :)
Bei konkreten Fragen helfe ich dir natürlich gern.
Hallo Dennis,
vielen Dank für die Sourcen!!
Mein Display läuft auch inzwischen soweit.
Bin leider noch nicht dazu gekommen die RFM zu testen, darum ging es
eigentlich ja ;) Das display war nur weil ich grad rumliegen hatte ;)
Liebe Grüße
Harry