www.mikrocontroller.net

Forum: Compiler & IDEs Hitex - ARM7 LPCStick


Autor: Chris (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
bin dabei mich mit dem LPC-Stick herumzuärgern.
Naja klappt manchmal... habe aus dem Forum hier mit Anregungen das 
Blinklicht rot-grün nachgebaut.
Hat funktioniert. Nun will ich das ganze Timer-gesteuert machen. Aus 
irgendwelchen gründen blinkt nichts; die beiden LEDs gehen einfach an. 
Auffällig finde ich auch dass in dem Disassemle-View von Hitop noch 
Einträge drinnen sind die ich definitiv schon länger rausgelöscht habe.
Kennt jemand Probleme mit dem Disassemble?
Könntet ihr mal über mein c-File drüberschauen was ich falsch gemacht 
hab?

Gruß
Chris

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
habe folgendes geänder das offensichtlich nicht in Ordnung war:
VIC_Controller_basis=VIC_BASE;
VIC_Controller_basis->VIC_VectAddress[4] = (unsigned)isr_TMR0;
VIC_Controller_basis->VIC_VectPriority[4] = 0x0000000E;
VIC_Controller_basis->VIC_IntEnable |= (1 << 4);

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
..... hab mich selbst verarscht; das Bit-schieben um 5 war vollkommen in 
Ordnung...
also liegts an etwas anderem

Autor: Martin Thomas (mthomas) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
- C-Code alleine reicht bei ARM Projekten mit GNU-Tools meistens nicht, 
um wirklich nachvollziehen zu können, was passiert. Zumindest auch den 
Startup-Code zeigen.

- IRQ global aktiviert? Vgl. Startup-Code, meist zusammen mit 
Stack-Inits, I_BIT im CPSR des gewählten Modes nicht setzen.

- Uff: if (green=='1') ... green = 0; ... green = 1; Das ist sicher nur 
zur Belustigung - oder?

- Indexfehler ja schon selbst bemerkt.

- Wo wird IRQ in der ISR 'acknowledged'? (In VICVectAddr schreiben).

- Steckt irgendwo noch ein IRQ-Wrapper? Wenn ja, vorherigen Punkt 
ignorieren. Wrapper-Code zeigen. Bei Wrapper attribute IRQ nicht 
verwenden. function-attribute für Handler in GCC sind ohnehin möglicher 
Quell vieler Probleme, ein Wrapper ersparen diese auf Kosten etwas 
höherer Latenz.

- NXP bietet ein paar brauchbare Beispielcodes für LPC23xx/24xx für den 
Einstieg. Zumindest mal angeschaut? Sind zwar für RealView Tools gemacht 
aber nicht allzu schwer auf GNU tools anzupassen (z.B. IRQ-Handler 
Definition ändern, fehlende volatiles ergänzen).

- Betr. TTC TTCR grade selbst nicht sicher. Habe ich bisher nicht 
gebraucht.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.