We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
I was taught if the variable might be changed by OS,hardware, or interrupt routine asynchronous it must be declared as "volatile" !
But reviewing current code base I found no "volatile" variables for H/W but it works well...
My question is: besides using "volatile" variable is there any way to access peripheral device mapped to XDATA ?
Hi,
Thank for your kink reply. I still not understand how to configure the setting. Please can you guide me?
Thank you.
What setting?
You say that it currently "works" - so the basic memory access must be OK.
Your only risk is that optimisations might cause the compiler to "cache" the value when it shouldn't - and the one and only way to prevent that is to use the volatile qualifier.
What other "setting(s)" are you thinking of?
For Author n00b help -> I think your post is NOT for this topic, right ?
For other Authors -> I tend to believe what happened to me is bad luck and afterwards I will use volative and _at_ to access memory-mapped devices...
liaoo