Hallo, ich habe ein Assemblerprogramm geschrieben um Daten an das RFM12-Modul zu senden. Das Senden der Daten über die SPI-Schnittstelle funktioniert aber nur wenn kein Funkmodul angeschlossen ist. Ich habe schon mehrere Module und Controller ausprobiert, aber Das Problem tritt immer auf. Ohne RFM12 läuft das Programm auch nur an wenn ich längere Zeit den Resettaster gedrückt halte. Die Module sind folgendermaßen verbunden: MOSI --> SDI MISO --> SDO SCK --> SCK SS --> nSel PB3 --> nIRQ (zur Erkennung dass das Modul bereit ist zu senden, habe ich auch schon mal direkt auf Masse gelegt, ohne Erfolg) Zum Flashen benutze ich das Evaluationboard von Pollin und PonyProg. Prozessor: ATMega32. Das Komische daran ist, dass einfache Programme wie die Ausgabe eines Rechtecksignals einwandfrei funktionieren ohne dass ich den Resetbutton drücken muss. Kann es vielleicht sein, dass das Eva-Board mir die uC schießt ? Im Datenblatt des Controllers steht, die max. negative Eingangsspannung an den PortPins dürfe nur -0,5V betragen. Durch den RS232 / TTL Pegelwandler liegen jedoch bis zu -0,7V an (Dieser besteht nämlich nur aus Widerstand un d einer Diode gegen Masse) Das Problem klingt vielleicht ein bisschen komisch, aber ich zerbreche mir schon Stundenlang den Kopf darüber.. P.S: Das Programm habe ich beigefügt
@ Sebastian (Gast) >zu senden. Das Senden der Daten über die SPI-Schnittstelle funktioniert >aber nur wenn kein Funkmodul angeschlossen ist. Ich habe schon mehrere Also funktioniert es nicht! >Module und Controller ausprobiert, aber Das Problem tritt immer auf. >Ohne RFM12 läuft das Programm auch nur an wenn ich längere Zeit den >Resettaster gedrückt halte. Die Module sind folgendermaßen verbunden: ??? >Kann es vielleicht sein, dass das Eva-Board mir die uC schießt ? Im Unwahrscheinlich, wenn du keinen Verdrahtungsfehler drauf hast. >Datenblatt des Controllers steht, die max. negative Eingangsspannung an >den PortPins dürfe nur -0,5V betragen. Durch den RS232 / TTL >Pegelwandler liegen jedoch bis zu -0,7V an (Dieser besteht nämlich nur >aus Widerstand un d einer Diode gegen Masse) ??? Dadurch entstehen keine negativen Spannungen. Hast du Masse verbunden? MfG Falk
Falk Brunner wrote: >>Datenblatt des Controllers steht, die max. negative Eingangsspannung an >>den PortPins dürfe nur -0,5V betragen. Durch den RS232 / TTL >>Pegelwandler liegen jedoch bis zu -0,7V an (Dieser besteht nämlich nur >>aus Widerstand un d einer Diode gegen Masse) > > ??? > Dadurch entstehen keine negativen Spannungen. > Hast du Masse verbunden? Doch, wenn die RS232 TxD Leitung vom Computer auf -12V liegt. Oh mann, wieso macht man denn sowas? Sowas ist natürlich völlig tabu. Benutze was anständiges ala MAX232.
Für RS232 ist auf dem Funk-Evaluationsboard von Pollin schon ein Max232 verbaut. Als ISP wird eine Transistorschaltung verbaut, die von RS232 wandelt. Was mich an dem Board stört, ist die Versorgung des RFM12. Warum glaubt man, dass ein Optokoppler den Strom für den RFM12 liefern kann? Gruß Gerd
Danke für die Antworten, ich werde mal versuchen die neg. Spannung am Eingang des uC mit einer Diode zu blocken. Müsste doch eigentlich funktionieren. Der High-Pegel wird halt dann um 0,7V gesenkt.. Aber warum läuft das Programm nur wenn der uC einen Reset bekommt ? Habt ihr euch mal das Programm angesehen ? Gibt es vielleicht einen Grundlegenden Fehler ?
Hallo, Ich habe die SPI jetzt zum Laufen gebracht. Es gab wohl einen Fehler in der Initialisierung des Controlregisters. Zum Testen versuche ich nun das Statusregister des RFM12-Moduls auszulesen. Leider kann man aus dem Timingdiagramm im Programmers-Guide nicht erfahren mit welcher Frequenz der SCK-Eingang getaktet werden muss. Derzeit nutze ich den internen RC-Oszillator mit 1MHz und einen Taktteiler von 128, also ca 8kHz am SCK-Ausgang. Aber eigentlich dürfte es doch nach unten keine Grenzen geben, oder ?
Ich habe den Fehler gefunden: Der nSEL-Pin muss nach der Übertragung des Datenwortes kurz auf High gelegt werden damit die Informationen übernommen werden. Ich hätte mir das Datenblatt wohl genauer ansehen müssen. Apropos Datenblatt: Ich habe mich bisher immer mit dem Datenblatt fürs RFM12-Modul abgegeben, dabei ist das RF12-Datenblatt viel detaillierter, welches ich leider viel zu spät entdeckt habe.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.