Quantcast
Channel: Infineon Forums
Viewing all 9892 articles
Browse latest View live

Reset issue in Tc37x

$
0
0
I can not perform a SW reset using the Demo application provided, although it is working on Tc38x.
The only difference between the two controllers is the UCB, as the TC387's UCB that works with the SW reset is updated with the DemoApp UCB data, but TC377's UCB, which does not work with SW reset (Hang after the reset), is not updated.

I tried it on two different controllers (TC377 and TC375) with the same not working behavior, as it totally hangs without the possibility of stoping the controller using the debugger.
If the UCB is somehow related, can I know the possible reasons, please?

Thanks,

Aurix 2G SMU ALM8[10] configured as RESET will reset which cores?

$
0
0
Quote:

Originally Posted by MoD View Post
Reset (hardware and software) is always a chip wide reset, the complete device will be reset. You can only make a reset with your own software (e.g. manual reset of all necessary registers or reset via CPU Kernel Reset Registers). You can configure the WDT alarms to generate a NMI (will be distributed to all CPUs) and check in the handler if the corresponding alarm is triggered and execute your manual software reset. Otherwise you can configure the WDT alarms to different interrupts which are configured to 1 CPU only.

Hello support,
could you please elaborate how to reset via CPU Kernel Reset Registers as I tried to reset by writing ‘1’ into both of reset registers CPU0_KRST1.RST and CPU0_KRST0.RST but nothing affected however CPU0_KRST0.RSTSTAT bit = 0x2 which indicates that is kernel reset was requested by software.
Kindly advice if there are any additional configurations required to trigger the CPU reset or if the mentioned configurations are enough so how to make sure that the CPU0 reset is done correctly.

TC212 Low-power modes

$
0
0
method 1)

power basics**- turn of all I/O drive to bare minimum subset,*IE GPIO/etc pins should be set to input
-* if something has to be an output, then you may want to visit what it is driving and make sure that is low power
- turn off clocks to all modules not being used

keep an eye on power usage as you do each step

method 2)
looks like the number you are looking at for 10mA is will all peripherals in sleep but at 55C Tj. Can you reduce Tj ? I believe there are some equations provided for estimating that



method 3)
design something low power outside of aurix that kicks it out of standby mode, and allows standby - it's also very likely you will need to control the leakage current out the pins with some external fet like device

Safe operating area for FF23MR12W1M1P_B11

$
0
0
Hi Alex,

The FF23MR12W1M1 module is one of the first SiC-Mosfet modules we have released. We decided to start with halfbridge modules as they are a universal building blocks suitable for a wide variety of applications. Also the IGBT module business started with halfbrigdes. Please note that now we have dedicated modules in the topology you intend to use. Nevertheless, using individual halfbridges is also possible.

Now coming to your questions in detail:

- switching this module at 700 V DC / 62 A is not causing any concern as long as commutation inductance is low enough. See for example that a pulsed drain current of 100 A is specified and diagrams for switching energies provides data up to 100 A.
- The first statement just addresses the switching. If you can run a sinewave current with 62 A peak current depends on the cooling conditions. You may either evaluate the junction temperature by manual calculations using Rdson, switching energies and thermal path data from the datasheet or you may use our online simulation tool IPOSIM. In both cases you additionally need some information on the Rth for your heatsink. As long as the junction temperaure stays below 150°C everything is fine.
- If the junction temperature stays below 125°C as stated (how do you know ?) you seem to have reasonable cooling and then of course running a sinewave with 62 A peak is fine.
- on the definition of heatsink temperature for power semiconductors please refer to IEC 60747-15, Rev. 3.0. The heatsink temperature is measured using a drilled hole in the heatsink below the chip. For baseplateless modules like our Easy-modules it is not possible to measure case temperature like for a baseplate module. The hole that would need to be drilled for this measurement would already disturb the heatflow.
- Where did you find a 100°C limit ? There is no such limit in the datasheet. The current capability of such a module strongly is a function of the cooling conditions applied externally.

Best regards,

electricuwe

AURIX Development Studio Debugger Takes A Very Long TIme to Load .elf File

$
0
0
Thanks for the reply teoBits.

I tried 1.2.4 but there's no improvement unfortunately.

AURIX single supply mode

$
0
0
Hi all,

I would like to know that how to setup AURIX to single supply mode(e.g. 5V or 3.3V)? How to configure the HWCFG?

Is there reference design about AURIX TC2xx/TC3xx power supplied by a single 5V/3V rail?

Thank you very much.

Best regards.

AURIX TC27x, How to get out from Trap Handler?

$
0
0
Thank you for reply.

We want to record global data that generates memory protection traps before the input trap handler.
We use registers to set memory protection boundaries for global variables intentionally. ex) CPU_DPR0, CPU_DPRE0, CPU_DPWE0 ...

So if we approach a global variable, it triggers a protective trap and records global data ahead of the input trap handler.
And then, we want to execute faulty pc line that generates the trap after the trap is over.

But now we have found that the trap repeats indefinitely because I have not solved the cause of causing the protective trap.
We want to execute a faulty pc line that generates the trap after the trap is over. Not repeated infinitely.

How can we get out of the trap after finishing it just once?
We already know why we got protection traps because we intentionally set memory protection boundaries.

Thank you for reading.

CPU Kernel Reset

$
0
0
could you please elaborate how to reset via CPU Kernel Reset Registers as I tried to reset by writing ‘1’ into both of reset registers CPU0_KRST1.RST and CPU0_KRST0.RST but nothing affected however CPU0_KRST0.RSTSTAT bit = 0x2 which indicates that is kernel reset was requested by software.
Kindly advice if there are any additional configurations required to trigger the CPU reset or if the mentioned configurations are enough so how to make sure that the CPU0 reset is done correctly.

How to calculate EVADC conversion time

$
0
0
I am having some trouble with calculating the conversion time, I have now derived all the required parameters to substitute in the conversion time formula, however the result I am getting is far from what I observe if I calculate the conversion time with STM.

Fosc is configured to be 20Mhz. NDIV+1 and PDIV+1 in PERPLLCON as 28 and 1, KDIV2+1 is 5. so I derived from the following Fpll1 = 112Mhz, and from CCUCON1.PLL1DIVDIS=1 and CLKSEL =01, Fsource1=fpl11, so Fsource1= Fadc =112 MHz, is there something wrong here ?

Step 2
STC=256
FadcI=Fadc/DIVA = 112/32 = 3.5 MHz
NRS=7
CALSTC=3
so from the following and the equation @cwunder mentioned I calculated the conversion time to be 88544 usec, is there something I need to multiply or add to Tc12 or is this the total conversion time? What I am getting from the STM is around 99192 usec consistently.

JTAG on TriBoard TC377TX

$
0
0
Dear Forum Members,

I have TriBoard TC377TX V1.0 . I want to connect Lauterbach Trace32 device to this evaluation board to flash and debug sample application. I connected Lauterbach to X401 connector, when I run “system.detect.cpu” device it gives below error message ?

I manually selected the CPU as TC377TX and it says “debug port fail”

Any thoughts ? Do I need to do any modifications to the TriBoard to make it work with JTAG ?

Mutex on Multicore

$
0
0
I have recently started exploring multicore programming in aurix tc3xx and tried the sample led code on three cores.

May I know if any sample code available for usage of mutex locking and unlocking concept?

Thanks & Regards,
Aiswarya Jayan

XMC4700 UART Interrupts

$
0
0
Hey Tim,

i would do this like this:

setfifotrigger to "1" --> ISR when the second byte from your stream is received.

read the first and the second byte -->
rx_byte[0] = getreceivedWord(&UART_xx)
rx_byte[1] = getreceivedWord(&UART_xx)

depends on the rx_byte[1] --> the len of your expected stream size --> setfifotrigger to "rx_byte[1]" to generate the next event when your complet Stream is received.

this works for my situation to 99%.

My case is:
my excpected streams are 1 byte or 6 bytes --> so i set the trigger level to "0" -->
read the first byte and set the trigger level to "4" (for the next 5 bytes) or to "0" when the stream size was only 1byte.

The problem is, when i get the 6byte stream --> the "2." byte is lost (ca. 1 of 1000 events) . I think its also an timing issue or something like else.

best regards
Andi

ADC parallel Conversion

$
0
0
Hi,
I have configured ADC in tc37 eval board using queue method, i have doubts regarding the queue mapping.

1. i am planning to configure Group 0 , channel 0,1,2 and Group8 channel 0,1,2 in the given below way

queue0 stage- 0 = Group0 CH0
queue1 stage- 0 = Group0 CH1
queue2 stage- 0 = Group0 CH2

queue0 stage- 0 = Group0 CH0
queue1 stage- 0 = Group0 CH1
queue2 stage- 0 = Group0 CH2

i have calculated the time for single channel in primary queue is 1.2us and secondary queue is 1.7us

if i do the above configuration , is all the queue work parallelly to get the conversion output( which mean in 1.7uS i ll get the 6 channel output or it work as a sequence order like queue 0, queue1, queue 2, etc)???

Thanks
Mohamed Rahmathulla

TLE5012B_E1000_MS2GO SPI Problem

$
0
0
Hello,
I use the product TLE5012B_E1000_MS2GO and have a problem with the SSC.
I start the GUI and set SPI, but nothing happens there. The Auto Detected Log says:

SSC IF Not Active,
Active Interface: not known,
Key parameters: -not available.

How can I activate the SSC or where exactly is the problem?
I measure MOSI,MISO,CLK but no SPI Signal is there.

Here is the Eval Manual:

http://www.farnell.com/datasheets/2700284.pdf

Many thanks for the help!

Attachment 5327
?????

DAVE: Debugging issue - Perhaps a Timeout

$
0
0
Hi Jesus,

Whats the best way to tell the version of JLink?
in console : SEGGER J-Link GDB Server V6.62d - Terminal output channel

Aurix tc275

$
0
0
Hi ,

What is the RAM save voltage and RAM clear voltage of the microcontroller?
Also what happens when the VCC falls below the operating threshold? How is the memory management done?

TC27x ASCLIN SPI Transmission

$
0
0
Hello,

I'm implementing the example from the iLLD_TC27D.doc so I can use the ASCLIN SPI inteface.

The sendbuffer ist filled with the first eight upper case alphabet letter 'ABCDEFGH'

My problem is that I can't see the values on the oscilloscope. If I use "spiConfig.inputOutput.loopBack = TRUE;" then the values are directly passed into the receive buffer.

Am I missing something obvious?

*EDIT*
This problem is resolved. I had an issue in my code where &MODULE_ASCLIN1 was pointing to the address of &MODULE_ASCLIN2. After fixing this I saw the values on the oscilloscope.
*EDIT*


I'd appreciate any help. Thank you in advance.

Miguel

Code:

IfxAsclin_Spi spi;
#define SPI_BUFFER_SIZE 8
uint8 spiTxBuffer[SPI_BUFFER_SIZE];
uint8 spiRxBuffer[SPI_BUFFER_SIZE];

#define IFX_INTPRIO_ASCLIN1_TX  10
#define IFX_INTPRIO_ASCLIN1_RX  11
#define IFX_INTPRIO_ASCLIN1_ER  12

IFX_INTERRUPT(asclin1TxISR, 0, IFX_INTPRIO_ASCLIN1_TX)
{
    IfxAsclin_Spi_isrTransmit(&spi);
}

IFX_INTERRUPT(asclin1RxISR, 0, IFX_INTPRIO_ASCLIN1_RX)
{
    IfxAsclin_Spi_isrReceive(&spi);
}

IFX_INTERRUPT(asclin1ErISR, 0, IFX_INTPRIO_ASCLIN1_ER)
{
    IfxAsclin_Spi_isrError(&spi);
}

int main( void )
{
  // create module config
  IfxAsclin_Spi_Config spiConfig;
  IfxAsclin_Spi_initModuleConfig(&spiConfig, &MODULE_ASCLIN1);

  // set the desired baudrate
  spiConfig.baudrate.prescaler = 1;
  spiConfig.baudrate.baudrate = 115200; // FDR values will be calculated in initModule

  // ISR priorities and interrupt target
  spiConfig.interrupt.txPriority = IFX_INTPRIO_ASCLIN1_TX; // see also \ref IfxLld_Asclin
  spiConfig.interrupt.rxPriority = IFX_INTPRIO_ASCLIN1_RX; // see also \ref IfxLld_Asclin
  spiConfig.interrupt.erPriority = IFX_INTPRIO_ASCLIN1_ER; // see also \ref IfxLld_Asclin
  spiConfig.interrupt.typeOfService =  IfxCpu_Irq_getTos(IfxCpu_getCoreIndex());
//  spiConfig.inputOutput.loopBack = TRUE;
  spiConfig.inputOutput.loopBack = FALSE;

  // pin configuration
  const IfxAsclin_Spi_Pins pins = {
      &IfxAsclin1_SCLK_P15_0_OUT, IfxPort_OutputMode_pushPull, // Clock out pin
      &IfxAsclin1_RXA_P15_1_IN,  IfxPort_InputMode_pullUp,    // Rx pin
      &IfxAsclin1_TX_P15_4_OUT,  IfxPort_OutputMode_pushPull, // Tx pin
      &IfxAsclin1_SLSO_P20_8_OUT, IfxPort_OutputMode_pushPull, // Slave select pin
      IfxPort_PadDriver_cmosAutomotiveSpeed1
  };
  spiConfig.pins = &pins;

  // install interrupt handlers
  IfxCpu_Irq_installInterruptHandler(&asclin1TxISR, IFX_INTPRIO_ASCLIN1_TX);
  IfxCpu_Irq_installInterruptHandler(&asclin1RxISR, IFX_INTPRIO_ASCLIN1_RX);
  IfxCpu_Irq_installInterruptHandler(&asclin1ErISR, IFX_INTPRIO_ASCLIN1_ER);
  IfxCpu_enableInterrupts();

  // initialize module
  IfxAsclin_Spi_initModule(&spi, &spiConfig);

  int i;
  for (i = 0; i < SPI_BUFFER_SIZE; i++)
  {
      spiTxBuffer[i] = i + 65;
      spiRxBuffer[i] = 0;
  }

  // wait until transfer of previous data stream is finished
  while( IfxAsclin_Spi_getStatus(&spi) == IfxAsclin_Spi_Status_busy );

  // send/receive new stream
  IfxAsclin_Spi_exchange(&spi, spiTxBuffer, spiRxBuffer, 8);

  for (i = 0; i < SPI_BUFFER_SIZE; i++)
  {
      spiTxBuffer[i] = 0xFF;
      spiRxBuffer[i] = 0;
  }
}

xmc 2go kit

$
0
0
hi
i just made some changes to the BMI mode of xmc 2go kit . As a result i no longer can comminucate with it from dave4. is there a way to factory reset it? or return the xmc 2go kit to default settings.

samuel

AURIX TC27x, Asm grammar question

$
0
0
hi everyone.
i want to use "store" instruction using __asm__

Here are some codes.

unsigned int AddrVal =0x70000010;
unsigned int DataVal = 0x5;

__asm__("st.w 0x70000010," :: "d" (DataVal));


I want to store DataVal(5) to AddrVal but not using number 0x70000010.

How can i change it to variable?
__asm__("st.w AddrVal(?)," :: "d" (DataVal));

Thank you for reading.

IPB65R045C7 LTSpice Model

$
0
0
Hello,

I downloaded Spice model for IPB65R045C7. I want to use in LTSpice but I am encountering errors.
I opened the .lib file in LTSpice, right-clicked on the ".SUBCKT IPB65R045C7_L0" and created symbol.
However, when I place the component in the schematic and run the simulation, I get the error message "Cannot open library file".

Additionally - I notice that there are three ".SUBCKT" lines in the .lib file, with L0, L1, or L3 suffixes. What are the differences between these subcircuits, and which one do I choose for modeling my MOSFET.

Any help appreciated - if I am doing something wrong, please let me know.
Viewing all 9892 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>