Hallo, ich habe einen Pic18 und arbeite mit C18. Ich habe in C eine Variable im ROM definiert und eine im RAM:
1 | rom unsigned char var_1[] = {0x13, 0x22, 0x20}; |
2 | unsigned char var_2[3]; |
Mein Assembler code soll nun die Bytes aus var_1 nach var_2 kopieren:
1 | ... |
2 | extern var_1 |
3 | extern var_2 |
4 | |
5 | code |
6 | asm_copy |
7 | movff var_1, TBLPTR ; Adresse von var_1 in Tablepointer kopieren |
8 | tblrd* ; laden |
9 | movff TABLAT, var_2 ; nach var_2 kopieren |
10 | |
11 | return |
12 | end |
Nur leider funktioniert das so nicht. Was mache ich hier falsch?