Forum: Mikrocontroller und Digitale Elektronik Fehler = Register Setzen?


von SDFlight (Gast)


Lesenswert?

Moin Moin ihr Spezialisten

Beim Compilieren bekomme ich folgenden Fehler!

Error : 222   Line :   583   Illegal character [expected (, got '' [N]] 
, in File : E:\STUDIUMSDATEN\PROJEKTARBEIT\MICROCONTROLLER\NETZTEIL.BAS
Error : 1     Line :   583   Unknown statement [.EQU not found for:DDRE] 
, in File : E:\STUDIUMSDATEN\PROJEKTARBEIT\MICROCONTROLLER\NETZTEIL.BAS
Error : 222   Line :   583   Illegal character [expected (, got '' [N]] 
, in File : E:\STUDIUMSDATEN\PROJEKTARBEIT\MICROCONTROLLER\NETZTEIL.BAS
Error : 1     Line :   583   Unknown statement [.EQU not found for:PINE] 
, in File : E:\STUDIUMSDATEN\PROJEKTARBEIT\MICROCONTROLLER\NETZTEIL.BAS

Nun habe ich schon herausgefunden, dass es evtl sein könnte, dass das 
Programm das Register bzw den Port E nutzen will, denn es im ATMEGA168 
aber nicht gibt! Kann das sein? Wenn ja, wie kann ich das ausschließen.

Viele Grüße und noch ein schönes Wochenende
SDFlight

: Verschoben durch Admin
von g457 (Gast)


Lesenswert?

Wie wärs mit etwas mehr Quellcode.. Glaskugel.. Nebel.. nix zu sehen..

Ansonsten: Ja, einen Port E gibbet nicht beim m168. Ausschließen? Die 
Funktionalität woanders hinlegen, z.B. auf einen existierenden und 
unbenutzten Pin der Ports B, C oder D.

von SDFlight (Gast)


Angehängte Dateien:

Lesenswert?

Ich habe den gesamten Quelltext angehängt, bis auf den o.g. Fehler 
compiliert alles problemlos. Die Ports sind alle belegt und es scheint 
mir einfach ein internes Speicherproblem zu sein, bei dem der uC 
versucht einen internen Speicherbereich zu nutzen, der nicht existiert.

Gruß´ausm Norden

von g457 (Gast)


Lesenswert?

So, im dritten Anlauf [1] läuft sogar Bascom.. Mir dünkt Du hast was 
beim LCD was verbuxelt - der KS108 ist afaik ein GLCD, Deine 
Konfiguration mit '40x4' liest sich aber mehr wie ein Text-LCD. Nochmals 
überprüfen.

Achja falls grad mal ein Mod mitliest: Kann man den Fred verschieben? 
Codesammlung passt ja nu nich wirklich.

[1] 1. Versuch: $dll fehlt. 2. Versuch: SIGSEGV beim Start..

von SDFlight (Gast)


Lesenswert?

Stimmt das Display ist ein 4*40LCD Text Display. Da habe ich wohl ein 
falsche Libary File angegeben, dass muss ich wohl ändern. aber auch mit 
der Standard lib "mcs.lib" ebenso bei der "LCD4.lib" kommt wieder der 
besagte Fehler.

Gruß

von SDFlight (Gast)


Lesenswert?

So sachte weiß ich echt nicht mehr weiter. Habe jetzt alles möglich 
probiert,
habe das Display auf 2fach Enable umgestellt und den Programmtext 
angepasst
das lib in "lcd4e2.lbx" geändert,
Bascom neu installiert

immer kommt dieser bescheidene Fehler...
Vielleicht hat ja einer von euch noch eine Idee oder bekommt das ganze 
compiliert.

Viele Grüße
ein Verzweifelter

von SDFlight (Gast)


Angehängte Dateien:

Lesenswert?

Ich habe die SPIout Befehle als Kommentar gekennzeichnet und schon 
funktioniert es.
Somit weiß ich zumindest mal wo ich suche muss.

Nach erneutem Durchsehen, stellte sich das ganze als Variablensalat 
heraus, ergo Byte und Integer Variablen wurden völlig vermischt, da SPI 
aber keine Integervariablen verarbeiten kann, lief das Programm nicht. 
Jetzt muss ich nur noch sehen ob die Sache mit den ADC so finktioniert, 
oder der größere Variablen als Byte benötigt. Der überarbeitete Text 
hängt anbei, für diejenigen die es interessiert.

Danke für eure Mühen.

von g457 (Gast)


Lesenswert?

Fehler lokalisiert:
1
Config Spi = Soft , Din = None , Dout = Portc.3 , Ss = None , Clock = Portb.6

Laut Doku [1] ist 'None' für Din nicht zulässig. Setze einen 
vorhandenen, unbenutzten Pin ein und es compiliert.

Für mutige Experimentierfreunde: Was passiert, wenn man einen physisch 
abwesenden, aber speichermäßig anwesenden Pin einstetzt, wie z.B. 
PORTC.7? Theoretisch müsste er mit Soft-SPI einfach(tm) immer eine '0' 
lesen.. wer probierts aus? :-)

HF

[1] http://avrhelp.mcselec.com/index.html?config_spi.htm

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
Noch kein Account? Hier anmelden.