Hallo Leute,
ich versuche ein 12864B GLCD mithilfe eines ATMEGA 3250 anzusteuern.
Dazu habe ich die Libary etc. von :
https://code.google.com/p/u8glib/wiki/avr runtergeladen. Ich bin der
Anleitung gefolgt und habe alle .c und .h zu meinem Projekt hizugefügt,
allerdings wenn ich jetzt ein Beispielprogramm wie HalloWelt aufspielen
will, erscheinen ca. 50 "undifined reference to..." Fehlermeldungen.
Ich weiss nicht wie ich diese beheben könnte. Oder hätte jemand eine
bessere Idee als diese u8g libarys?
Danke im Vorraus
Til schrieb:> erscheinen ca. 50 "undifined reference to..." Fehlermeldungen.
Tja, hättest du jetzt ans Stelle von "..." hingeschrieben, was genau da
undefined ist, hätte man helfen können. So wird das schwierig.
Zu vermuten ist, daß du doch nicht alle erforderlichen .c-Files richtig
zu deinem Projekt hinzugefügt hast.
Oliver
Danke für die schnelle Antwort,
nun offenbar habe ich nicht alle korrekt verknüpft. Dieses Problem ist
nun aber auch behoben, allerdings folgt darauf das nächste...
Nun wird mir angezeigt, dass mehrer Variabeln wie z.B. TWMS1, TWMS2 und
so weiter nicht deklariert sind.
Ich könnte diese natürlich selber deklarieren, ich denke aber nicht das
diese einfach vergessen wurden und die Files unfertig zum download zur
Verfügung stehen. Deshalb möchte ich fragen ob hier zu auch jemand eine
Lösung hat.
Danke im Vorraus
Da habe ich mich wohl vertippt, ich meinte TWS1, etc.
Und die befinden sich im u8g_com_i2c.c file, welches ich dem Projekt
angehängt habe. Oder kann es sein, dass ich mit dem Anhängen an das
Projekt etwas falsch verstanden habe?
Ich habe unter http://code.google.com/p/u8glib/ U8glib for AVR
runtergeladen und die Anweisungen befolgt, das sollte doch schon den
richtigen Quellcode beinhalten, oder etwa nicht?
Danke im Vorraus
Gibt es auch nicht. In der u8g_com_i2c.c gibt es nur TWSR, TWBR, TWCR
etc.
Ist ja auch egal. Dein ATmega 3250 hat schlicht und ergreifend kein
"Hardware TWI". Das kannst du nur über USI machen oder eben als
Software-Implementierung.
Wenn ich das richtig sehe ist das auch schon in den Quellen so
vorgesehen, aber du darfst dann U8G_ATMEGA_HW_TWI nicht "definen"
Okei danke,
allerdings habe ich noch nicht einmal versucht das ganze auf den
ATMEGA3250 zu laden. Dies ist mir auch nicht möglich, da es sich durch
den Fehler ja nicht kompilieren lässt...
Mein Problem liegt also noch irgendwo im Code und noch nicht am
Prozessor.
Ich habe mal meine Error list angehängt. Vieleicht nützt das etwas.
Aber eine andere Frage: Meinst du es ist mit einem ATMEGA3250 gar nicht
realisierbar? oder muss ich etwas ändern?
Danke im Vorraus
Wie gesagt du hast kein Hardware TWI in deinem µC. Du musst halt immer
#undef U8G_ATMEGA_HW_TWI machen, damit das per Software gemacht wird.
Dann sind auch die Fehler weg.
Timmo H. schrieb:> Wie gesagt du hast kein Hardware TWI in deinem µC. Du musst halt immer> #undef U8G_ATMEGA_HW_TWI machen, damit das per Software gemacht wird.> Dann sind auch die Fehler weg.
Nun gut, was heisst ich muss das immer machen?
Also wann und wo?
Vielen Dank für die Hilfe schon mal!
Fehler habe ich jetzt keine mehr im Programm, wenn ich nun alles mit dem
folgenden Code testen will, klappt aber noch nichts. An den 3 Datenpins
habe ich nur am RS ein ständiges High und sonst nichts. Kann es sein das
ich auch hier eine Anpassung machen muss? oder kennt jemand sonst eine
Lösung?
1
/*
2
3
main.c
4
5
Hello World for ATMEGA Controller
6
7
Universal 8bit Graphics Library
8
9
Copyright (c) 2012, olikraus@gmail.com
10
All rights reserved.
11
12
Redistribution and use in source and binary forms, with or without modification,
13
are permitted provided that the following conditions are met:
14
15
* Redistributions of source code must retain the above copyright notice, this list
16
of conditions and the following disclaimer.
17
18
* Redistributions in binary form must reproduce the above copyright notice, this
19
list of conditions and the following disclaimer in the documentation and/or other
20
materials provided with the distribution.
21
22
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
23
CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
24
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
25
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
26
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
27
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
28
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
29
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
30
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
31
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
32
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
33
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF