nachdem ich auf das leidige EUSART Problem gestossen bin, habe ich die Weiterentwicklung der Firmware nicht mehr weiterverfolgt. Der Code befindet sich also in einem ziemlich wuesten Status - im Wesentlichen setzt er auf das CDC Beispiel auf, welches sich nur mit dem C18 kompilieren laesst (bin zunaechst davon ausgegangen, dass ich das Limit von drei Monaten locker einhalten kann, im Endeffekt haette das Modul nach einem Tag laufen koennen…).
Ausserdem enthaelt er den MIDI Parser aus dem urspruenglichen MBHP_USB Projekt
Ich koennte Dir die Files zuschicken, doch ich weiss nicht, was daran noch funktioniert, und was “kaputtgedebuged” wurde (zunaechst bin ich von einem Problem mit den Interrupts ausgegangen…)
ich habe mit dem CCS noch nicht gearbeitet, evtl. musst Du der Variable ein spezielles Attribut mitgeben, damit sie nicht in das “unbanked” Memory (<0x80) abgelegt wird? Oder Du weist der Variablen einer bestimmten Sektion zu (deren Namen du frei waehlst), und lokatierst diese an die gewuenschte Addresse (gibt es ein Locator-File?)
Im Zweifelsfall sollte der direkte Memoryzugriff wie folgt funktionieren:
(*((volatile unsigned int *)(0x400))) = 0x12; // schreibt 0x12 nach 0x400
Ich mache mir daraus immer ein Macro:
#define MEM(register) (*((volatile unsigned int *)(register)))
so dass ein direkter Speicherzugriff wie folgt funktioniert:
MEM(0x400) = 0x12;
CCS und USB: gehe mal nach forum.microchip.com, klicke auf “search”, tippe “ccs usb” und waehle (das ist der Trick!) “Time filter: All Topics” an