janko.kaljevic wrote:Hello,
Please can you explain in more details the problem that you are facing.
Aldo if you can post here the project that is causing this behavior so we can inspect it.
Best regards.
The problem is the acess in the BANK 1, 2 and 3!
I was reading the mikroC manual and there is this:
"
Limits of Indirect Approach Through FSR
Pointers with PIC16 are "near": they carry only the lower 8 bits of the address. Compiler will automatically clear the 9th bit upon startup, so that pointers will refer to banks 0 and 1. To access the objects in banks 3 or 4 via pointer, user should manually set the IRP, and restore it to zero after the operation. The stated rules apply to any indirect approach: arrays, structures and unions assignments, etc.
Note: It is very important to take care of the IRP properly, if you plan to follow this approach. If you find this method to be inappropriate with too many variables, you might consider upgrading to PIC18.
Note: If you have many variables in the code, try rearranging them with linker directive
absolute. Variables that are approached only directly should be moved to banks 3 and 4 for increased efficiency.
"
This messagen is in the page 33 of the mikroC Manual.
So, what I want to know. How can I use the bank 3 and 4? How can I have access in this banks? The manual show de solution, but doesn´t show how to use this solution.
How I use the directive "absolute"? I don´t have idea!
In the mikroC the message is:
102 1511 IRP bit must be set manually for indirect access to 'pe' variable AutoClave.c
101 1511 IRP bit must be set manually for indirect access to 'pd' variable AutoClave.c
0 1511 IRP bit must be set manually for indirect access to '?lstr1_AutoClave' variable AutoClave.c
0 1511 IRP bit must be set manually for indirect access to '?lstr10_AutoClave' variable AutoClave.c
If you really need, I will post the code.