- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello. Aurix team.
I'm using development studio and i have an issue that a variant is not updated with assignment operator.
please see below picture.
all variables are 'global variable'(can i monitoring local variable? i tried to see it, but i failed)
in line 746, rawData = g_rx_L_POS_u16[1]; is operated.
and current break point is line 764.(between line 746 ~ 764 is hidden)
refer expression window, rawData is zero and g_rx_L_POS_u16[1] has it's own value.
i checked g_rx_L_POS_u16[1] has value before implement line 746.
and i set rawData's initial value as 0x10, but rawData is set zero after implement line 746.
when i do debugging step by step, sometimes g_rx_L_POS_u16[1]'s value is transfered to rawData sucessfully.(1~2time when i try 10 times)
but when i set break after line 746, it is set as zero 100%.
do you know why this phenomenon happening?
please help me. thank you.
please help me.
thank you.
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
If this is a bug, then Zero you seen is not real. You can use a judgment statement to test. Otherwise I used below code to test ADS 1.8.0 and looks OK. You can try below code to test also.
/**********************************************************************************************************************
* file Cpu0_Main.c
* copyright Copyright (C) Infineon Technologies AG 2019
*
* Use of this file is subject to the terms of use agreed between (i) you or the company in which ordinary course of
* business you are acting and (ii) Infineon Technologies AG or its licensees. If and as long as no such terms of use
* are agreed, use of this file is subject to following:
*
* Boost Software License - Version 1.0 - August 17th, 2003
*
* Permission is hereby granted, free of charge, to any person or organization obtaining a copy of the software and
* accompanying documentation covered by this license (the "Software") to use, reproduce, display, distribute, execute,
* and transmit the Software, and to prepare derivative works of the Software, and to permit third-parties to whom the
* Software is furnished to do so, all subject to the following:
*
* The copyright notices in the Software and this entire statement, including the above license grant, this restriction
* and the following disclaimer, must be included in all copies of the Software, in whole or in part, and all
* derivative works of the Software, unless such copies or derivative works are solely in the form of
* machine-executable object code generated by a source language processor.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
* WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
* COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
* IN THE SOFTWARE.
*********************************************************************************************************************/
/*title ADC queued source
* abstract The Enhanced Versatile Analog-to-Digital Converter (EVADC) is configured to measure multiple analog signals in a sequence using queued request.
* description The Queued Request of the Enhanced Versatile Analog-to-Digital Converter (EVADC) module is used to
* continuously scan the analog inputs channels 1, 4 and 5 of group 2.
*
*
ame ADC_Queued_Scan_1_KIT_TC397_TFT
* version V1.0.2
* board APPLICATION KIT TC3X7 V2.0, KIT_A2G_TC397_5V_TFT, TC39xXX_B-Step
* keywords ADC, queued, conversion, EVADC, AURIX, ADC_Queued_Scan_1
* documents https://www.infineon.com/aurix-expert-training/Infineon-AURIX_ADC_Queued_Scan_1_KIT_TC397_TFT-TR-v01_00_02-EN.pdf
* documents https://www.infineon.com/aurix-expert-training/TC39B_iLLD_UM_1_0_1_12_1.chm
* lastUpdated 2021-03-22
*********************************************************************************************************************/
#include "Ifx_Types.h"
#include "IfxCpu.h"
#include "IfxScuWdt.h"
#include "ADC_Queued_Scan.h"
IFX_ALIGN(4) IfxCpu_syncEvent g_cpuSyncEvent = 0;
uint16 rawData,g_rx_u16[99],txData[64];
void core0_main(void)
{
int i;
IfxCpu_enableInterrupts();
/* !!WATCHDOG0 AND SAFETY WATCHDOG ARE DISABLED HERE!!
* Enable the watchdogs and service them periodically if it is required
*/
IfxScuWdt_disableCpuWatchdog(IfxScuWdt_getCpuWatchdogPassword());
IfxScuWdt_disableSafetyWatchdog(IfxScuWdt_getSafetyWatchdogPassword());
/* Wait for CPU sync event */
IfxCpu_emitEvent(&g_cpuSyncEvent);
IfxCpu_waitEvent(&g_cpuSyncEvent, 1);
/* Function to initialize the EVADC with default parameters */
//initEVADC();
for(i=0;i<99;i++)
g_rx_u16[i]=(uint16)i;
/* Continuously update the conversion results */
while(1)
{
// readEVADC();
rawData=g_rx_u16[1];
for(i=3;i<64;i++)
txData[i]=0xAA;
}
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
If this is a bug, then Zero you seen is not real. You can use a judgment statement to test. Otherwise I used below code to test ADS 1.8.0 and looks OK. You can try below code to test also.
/**********************************************************************************************************************
* file Cpu0_Main.c
* copyright Copyright (C) Infineon Technologies AG 2019
*
* Use of this file is subject to the terms of use agreed between (i) you or the company in which ordinary course of
* business you are acting and (ii) Infineon Technologies AG or its licensees. If and as long as no such terms of use
* are agreed, use of this file is subject to following:
*
* Boost Software License - Version 1.0 - August 17th, 2003
*
* Permission is hereby granted, free of charge, to any person or organization obtaining a copy of the software and
* accompanying documentation covered by this license (the "Software") to use, reproduce, display, distribute, execute,
* and transmit the Software, and to prepare derivative works of the Software, and to permit third-parties to whom the
* Software is furnished to do so, all subject to the following:
*
* The copyright notices in the Software and this entire statement, including the above license grant, this restriction
* and the following disclaimer, must be included in all copies of the Software, in whole or in part, and all
* derivative works of the Software, unless such copies or derivative works are solely in the form of
* machine-executable object code generated by a source language processor.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
* WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
* COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
* IN THE SOFTWARE.
*********************************************************************************************************************/
/*title ADC queued source
* abstract The Enhanced Versatile Analog-to-Digital Converter (EVADC) is configured to measure multiple analog signals in a sequence using queued request.
* description The Queued Request of the Enhanced Versatile Analog-to-Digital Converter (EVADC) module is used to
* continuously scan the analog inputs channels 1, 4 and 5 of group 2.
*
*
ame ADC_Queued_Scan_1_KIT_TC397_TFT
* version V1.0.2
* board APPLICATION KIT TC3X7 V2.0, KIT_A2G_TC397_5V_TFT, TC39xXX_B-Step
* keywords ADC, queued, conversion, EVADC, AURIX, ADC_Queued_Scan_1
* documents https://www.infineon.com/aurix-expert-training/Infineon-AURIX_ADC_Queued_Scan_1_KIT_TC397_TFT-TR-v01_00_02-EN.pdf
* documents https://www.infineon.com/aurix-expert-training/TC39B_iLLD_UM_1_0_1_12_1.chm
* lastUpdated 2021-03-22
*********************************************************************************************************************/
#include "Ifx_Types.h"
#include "IfxCpu.h"
#include "IfxScuWdt.h"
#include "ADC_Queued_Scan.h"
IFX_ALIGN(4) IfxCpu_syncEvent g_cpuSyncEvent = 0;
uint16 rawData,g_rx_u16[99],txData[64];
void core0_main(void)
{
int i;
IfxCpu_enableInterrupts();
/* !!WATCHDOG0 AND SAFETY WATCHDOG ARE DISABLED HERE!!
* Enable the watchdogs and service them periodically if it is required
*/
IfxScuWdt_disableCpuWatchdog(IfxScuWdt_getCpuWatchdogPassword());
IfxScuWdt_disableSafetyWatchdog(IfxScuWdt_getSafetyWatchdogPassword());
/* Wait for CPU sync event */
IfxCpu_emitEvent(&g_cpuSyncEvent);
IfxCpu_waitEvent(&g_cpuSyncEvent, 1);
/* Function to initialize the EVADC with default parameters */
//initEVADC();
for(i=0;i<99;i++)
g_rx_u16[i]=(uint16)i;
/* Continuously update the conversion results */
while(1)
{
// readEVADC();
rawData=g_rx_u16[1];
for(i=3;i<64;i++)
txData[i]=0xAA;
}
}