Hallo, kann mir jemand sagen, wie ich ein Assembler NOP (no operation) in C einbinde?? Muß das in Assembler machen. Kenne weder den Assembler Code dafür, noch den C-Teil da ich sowas noch nie gemacht hab. Danke, Zulu
Hallo Zulu,
ich benutze gerade eine Warteschleife die so aussieht:
void i2c_wait(void)
{
unsigned int i;
for (i = 0; i < I2CWAIT; i++)
{
_NOP();
_NOP();
_NOP();
_NOP();
}
}
weiterhin habe ich in meiner IAR Workbench den Header In430.h
eingefügt, der folgende Zeile enthält
void _NOP(void);
Schau mal in deinen Headerfiles nach, es könnte auch nop() oder _nop_()
heißen.
Gruß m@is
Hi m@is, danke, stimmt, NOP ist im header definiert, das macht die Sache natürlich einfach. Funzt! Brauche nur einen NOP um den benötigten Zeitstop zu erhalten: _NOP(); Danke, Zulu
da ich gerade drauf gestoßen bin hier der Auszug aus iomacros.h von
mspgcc:
...
/***** USEFULL MACROS DEFENITIONS *********/
/* no operation */
#define nop() _asm_ __volatile__("nop"::)
/* IAR compatibility functs */
#define _NOP() nop()
...
Gruß m@is
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.