This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi,
Customer is using F28034 for motor control. Now they face one issue about PIE vector table re-mapping.
During system power up/down test, very few times, in fun2(), test1 can be 10 instead of 20, which is quite confused. What can be the issue?
F28034 external reset is setting to 3.14V. Power up/down frequency is from 1s, 2s, 3s and step to 10s, and again to 1s, 2s... During power down, after 5s, reset pin is driven low; after 6s, F28034 totally lost the power. 3.3V went to 0V.
The code is like this:
main()
{
system_peripheral_init();
test1=10; // test1 default value 10
EALLOW;
PieVectTable.ADCINT1=&fun1(); // map to fun1()
EDIS;
EINT;
for(;;)
{
if(...) // the condition will be true for only one time;
{
test1=20; // test1 set with another value 20
EALLOW;
PieVectTable.ADCINT1=&fun2(); // Re-map, to func2(), it's executed only one time.
EDIS;
}//if(...)
...
...
}//for(;;)
}//main()
fun1() {...}
fun2()
{
printf(test1);
}
Thanks a lot.
Br, Jordan
Hi,
Can you check if the test variable is declared as volatile ?
Thanks
Vasudha