Hallo, ich habe ein recht interessantes problem: im internet habe ich folgendes projekt gefunden: http://antoniak.ep.com.pl/index.php?id=mini_clip dieses habe ich nachgebaut. aus den sourcecode-dateien hab ich mir dabei die informationen für den anschluss eines LCDs abgeleitet. und genau da setzt das problem schon an: der sourcecode! im sourcecode ist auch eine fertige hex-file dabei, die hab ich auf den mega8 gebrannt und es funktioniert. ansatzweise. denn: ich bekomme anzeige auf dem display. aber nur den "startbildschirm" "wait...", sowie hin und wieder eine anzeige "BIG NOISE" wenn ich die telefon-leitung etwas stümperhaft anschliesse. aber ansonsten nichts. bei angeschlossener telefonleitung und eingehendem anruf ändert sich auf dem display nichts. entsprechend meine idee: na, guckst doch mal, ob da überhaupt das call-interrupt gegeben wird bei einem normalen anruf. also sourcecode geändert, dass er eben bei aufwachen aus dem sleep-mode was aufm display anzeigt. aber schon geht der ärger los: make geht nicht. die mitgelieferte makefile ist mit den aktuellen gcc-sourcefiles anscheinend nicht mal ansatzweise kompatibel. also alles mal in eclipse geladen (mit entsprechendem avr-plugin in eclipse) und dort rumgeguckt. das erste was natürlich sofort auffällt: zweimal eine signal-funktion, beide ohne irgend einen bezeichner (ich hab zum spass mal beiden void gegeben, schliesslich geben beide nichts zurück, aber das geht so anscheinend nicht so recht) sowie eine neue makefile gemacht. zusätzlich fehlende bibliotheken (progmem.h, sig-avr.h) besorgt. die c-file für die lcd-anzeige hab ich inzwischen auch schon so weit angepasst dass sie jetzt immerhin schon ohne fehler kompiliert - nur die "hauptfile" weigert sich noch, eben genau wegen dieser doppelten signal-definition. hat da irgendwer eine idee, wie ich das ganze richten kann? ich muss ehrlich zugeben, programieren ist nun wirklich nicht gerade mein lieblingsgebiet, auch wenn wir im studium schon ein wenig in c und ähnlichem programieren mussten.
immerhin bin ich jetzt schon einen (kleinen) schritt weiter: Es lässt sich jetzt komplett so kompilieren, wies vom autor ausgeliefert wurde (im avrstudio und mit einigen kleinen anpassungen der includes bzw. nachlieferung selbiger) allerdings: das fertige programm funktioniert nach dem schreiben auf den µC nicht. nicht mal das display bekommt der µC initialisiert. hat da vielleicht irgendwer irgendeine idee, warum diese software nicht so laufbar gemacht werden kann? ist doch schon seltsam, dass da so gar nichts richtig funktionieren will. -.-
auch wenn mir anscheinend keiner helfen will od. kann, mal ein kleines update: inzwischen hab ich mit einem kleinen testprogramm herausgefunden, dass der call-pin in der gegebenen hardwarekonfiguration nicht bei anruf getriggert wird. woran das liegt kann ich nicht genau sagen, allerdings habe ich wege gefunden, das ganze zu umgehen: die eine möglichkeit ist, zu dem 2.2µF-kondensator einen 10µF (hat zumidnest bei mir mit so einem gepasst) parallel zu schalten. eventuell kann man da auch einfach direkt einen größeren einsetzen. dies führte bei mir zu einer zuverlässigen auslösung des call-pins. die zweite möglichkeit wäre, zu dem 47kOhm-widerstand einen kleineren parallel zu schalten. ich habe es bei mir mit einem 1kOhm getestet und dies hat auch ganz gut funktioniert. (allerdings sollte der R wahrscheinlich etwas besser angepasst sein, ich denk mal so 10kohm od. auch 20kohm könnten auch funktionieren) somit bin ich jetzt wohl einen schritt weiter. die eigentliche software liefert aber nun bei anrufen nur den hinweis "Big noise" auf dem display. anhand der erfahrungen würde ich fast mal tippen, dass das die gleichen ursachen wie der call-pin, nämlich eine fehldimensionierung der hardware hat? ich weis allerdings bis jetzt noch nicht genau, was ich an der schaltung ändern müsste. vielleicht könnte es aber auch am A/D-Wandler liegen? dass dieser einfach etwas mehr Vref z.b. haben müsste? kann jetzt vielleicht jemand weiterhelfen?
Hi
>kann jetzt vielleicht jemand weiterhelfen?
Nicht wirklich. Aber hast du die Fuses richtig gesetzt?
MfG Spess
hmm. fuses hab ich mal durchgeguckt - tatsache ist, die frequenz-fuses waren nicht richtig gesetzt. jetzt sind sie richtig gesetzt mit der folge, dass die anzeige sehr viel schneller und flüssiger läuft. dabei dacht ich eigentlich, dass die fuses noch gesetzt wären, schliesslich hatte ich früher schon mal ein bischen mit dem selben µC gebastelt (eigentlich nur grundlagen bzgl. avr erforscht). dies ändert aber leider nichts an der fehlfunktion. nach wie vor bekomme ich die "big-noise"-fehlermeldung. nun aber fast schon synchron mit dem telefon-klingeln.
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.