Vraag:
Problemen bij het migreren van ATmega88 naar ATmega88P, met V-USB / AVR-USB?
todbot
2009-11-26 15:22:20 UTC
view on stackexchange narkive permalink

Ik werk aan een V-USB (ook bekend als AVR-USB) -gebaseerd circuit dat werkt op 5 V (d.w.z. twee 3,6 V zeners over D + & D-) en op 12 MHz. Ik heb een ATmega88P geprobeerd in plaats van de ATmega88-chips die ik normaal gebruik en ik kan het circuit niet laten opsommen. De Atmel-appnotes over mega88-> mega88P-migratie beschrijven geen voor de hand liggende valstrikken.

Heeft iemand enige ervaring / tips met de verschillen in ATmega88P-chips?

Dat zal me leren om de vraag niet goed te lezen. Mijn antwoord geschrapt omdat het alleen verwees naar hetzelfde blad dat door todbot werd genoemd als: "De Atmel-appnotes over mega88-> mega88P-migratie".
Een antwoord:
todbot
2009-12-12 03:39:19 UTC
view on stackexchange narkive permalink

Het probleem is dat het AVR-GCC-bibliotheekbestand "iom88p.h" voor de ATmega88P (en vergelijkbare bestanden voor ATmega168P en ATmega328P) kapot is. Het definieert niet de SIG_INTERRUPT0 interupt vector handler en definieert alleen de alternatieve handler naam INT0_vect. De V-USB-assembly-code gebruikt SIG_INTERRUPT0 en om de een of andere reden pikt avr-as de null-definitie niet op.

Dit bibliotheekprobleem is ook waarom je in Arduino niet langer definities als "PC3" kunt gebruiken en in plaats daarvan "PORTC3" moet gebruiken.

De oplossing in het geval van V-USB is om naar de "usbconfig.h" voor uw project te gaan en toe te voegen:

 #define USB_INTR_VECTOR INT0_vect 


Deze Q&A is automatisch vertaald vanuit de Engelse taal.De originele inhoud is beschikbaar op stackexchange, waarvoor we bedanken voor de cc by-sa 2.0-licentie waaronder het wordt gedistribueerd.
Loading...