Seit einiger Zeit arbeite ich bei der Entwicklung von einem Mikroprozessorsystem. Als Mikroprozessor verwende ich pic18f2680 : Programmspeichergröße: 64KB RAM-Speichergröße: 3.25KB EEPROM: 1024Bytes Hardware habe ich schrittweise entwickelt. CAN, RS232 wurden an der Hautplatine platziert. Visualisierung mit 162A Display und Matrixtastatur: Beitrag "Matrix Tastatur (Matrixtastatur) mit 74HC4051 und 162A Display." Anzahl von I/o habe ich durch Multiplexschaltung erweitert: digitale Ausgänge 16 stück, digitale Eingänge 8 stück, analoge Eingänge 8 stück. Noch direkte einzelne I/O Ports stehen zu Verfügung. Von Anfang an habe ich mir als Ziel gesetzt das alles unter beiden Compiler: c18 und sdcc lauffähig zu machen. Und das ist gelungen. Jetzt arbeite ich auf der ersten Anwendung: Steuerung für meine Heizung. Bei compilieren mit c18 kam mal eine Meldung: Error - section '.udata_Heizung.o' can not fit the section. Section '.udata_Heizung.o' length=0x0000010c C18 kann nur in einer Sektion nur Variable bis gesamter Länge 256 bearbeiten.Danach muss man die Anweisung bringen: #pragma udata my_section_2 Jetzt kann man nächsten Variablen deklarieren. Das kann etwas lästig sein. Bei sdcc existiert das Problem nicht aber beim casting muss man sehr oft benutzen Makro __data , z.B (__data *char). Wahrscheinlich wird dann erst richtige Adresse generiert. Ins gesamt bin ich mit sdcc sehr zufrieden. Gruß an die Entwickler!
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.