Hi there!
I have some problems with the new 7.6 version...
I have a project formerly written and compiled in mP 7.1, I have to do some very small changes, but unfortunately I found that after compiling it with mP 7.6 it does not work correctly...
I think some of reading and writing to system devices such as timers, I2C and others are not made correctly.
One and the same project, without any changes, compiled with two different versions gives that result...
Any ideas?
p.s. I'm attaching coplete code, hex and listings from the two compilators
mP problem with version 7.6
-
- Posts: 11
- Joined: 03 Mar 2012 09:45
mP problem with version 7.6
- Attachments
-
- Proiavitelna-Stepping-MP-7.6.zip
- (260.95 KiB) Downloaded 86 times
-
- Proiavitelna-Stepping-MP-7.1.zip
- (260.87 KiB) Downloaded 88 times
Re: mP problem with version 7.6
Hi,
Have you tried debugging the code to see where exactly does the issue appear ?
Regards,
Filip.
Have you tried debugging the code to see where exactly does the issue appear ?
Regards,
Filip.
-
- Posts: 11
- Joined: 03 Mar 2012 09:45
Re: mP problem with version 7.6
Hi!
Debugging in realtime is not an easy option in my situation...
For example, reading values of timer registers makes sense only in realtime - the same program compiled with 7.1 works fine, reads register correctly (the impulses from encoder) are read from TMR1.
But compiled with 7.6 version (the same unaltered code, only just recompiled) reads only zeroes from that register, wich is obviously not correct...
And when programing back with the hex from 7.1 - voila, it works... again programing with 7.6 hex - not working...
There is no other culprit exept the compiler, for me.
If there are known differences between versions of the compiler, that requires to make changes to the program code in order to work correctly then let us know them...
Debugging in realtime is not an easy option in my situation...
For example, reading values of timer registers makes sense only in realtime - the same program compiled with 7.1 works fine, reads register correctly (the impulses from encoder) are read from TMR1.
But compiled with 7.6 version (the same unaltered code, only just recompiled) reads only zeroes from that register, wich is obviously not correct...
And when programing back with the hex from 7.1 - voila, it works... again programing with 7.6 hex - not working...
There is no other culprit exept the compiler, for me.
If there are known differences between versions of the compiler, that requires to make changes to the program code in order to work correctly then let us know them...
Re: mP problem with version 7.6
Hi,
There are definitely some differences between the compiler, you can find this in the whatsnew.txt file in the compiler's installation folder.
It would be best if I could reproduce this issue on my side, so could you please tell me if your project is dependant on some custom HW ?
Regards,
Filip.
There are definitely some differences between the compiler, you can find this in the whatsnew.txt file in the compiler's installation folder.
It would be best if I could reproduce this issue on my side, so could you please tell me if your project is dependant on some custom HW ?
Regards,
Filip.
-
- Posts: 11
- Joined: 03 Mar 2012 09:45
Re: mP problem with version 7.6
To reproduce the problem, you should send some impulses (e.g. from generator of square pulses) to the input of TMR1 (pin 7 (RC3) is configured like that).
The TMR1 is set to count these pulses, so if you could read something different than zeroes from TMR1, that is working condition...
At my side, all these requirements are met and the hardware and software are working, if compiled with mP7.1.
With mP7.6. all readings from the TMR1 are zeroes - e.g. no input impulses at all, but the impulses are there, surely...
I've noticed that I2C also is not working correctly if compiled with mP7.6...
That's why I'm asking are there any differences in working with registers - another addressing system or what else...
The TMR1 is set to count these pulses, so if you could read something different than zeroes from TMR1, that is working condition...
At my side, all these requirements are met and the hardware and software are working, if compiled with mP7.1.
With mP7.6. all readings from the TMR1 are zeroes - e.g. no input impulses at all, but the impulses are there, surely...
I've noticed that I2C also is not working correctly if compiled with mP7.6...
That's why I'm asking are there any differences in working with registers - another addressing system or what else...