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

FOC Sensorless questions and thoughts [Case:3760197]

$
0
0
Hi, the open sourced (except for the PLL estimator) version is on Infineon's website (https://www.infineon.com/cms/en/prod...or_001/#!tools), look under tools & software.

The behavior you see is normal for sensorless pmsm since there is limited knowledge as to where the rotor flux linkage is with respect to the stator. To get a good estimate of the flux linkage, the rotor needs to be 'sufficiently' excited. When you hold down the rotor, the excitation is limited, resulting in bad estimates. As such, FOC is not able to provide a the right phase currents to 'move' the rotor. The solution: sensored FOC, use halls or encoder with POSIF to replace the PLL estimate and you are good

Lockstep CPU on TC397

$
0
0
Hi,

I am working with TriBoard TC397 B-Step and want to integrate Lockstep CPU.
From the documentation I know that the 'SCU_LCLCON0.B.LSEN0' bit show if Lockstep is enabled and the 'SCU_LCLCON0.B.LS0' bit indicates that the core is running in Lockstep mode.
Is that right so far?

In my program the bits are set and core0 is the master core so the other cores shold control the operation. But when I execute code wich toggles an LED, the LED is toggles from each core. I thing it should only be toggle from core0.
What else do I need to do to use Lockstep?

And when an error accures in Lockstep, an alarm flag should be raised in the SMU. How can I check that to detect errors?

Best regards,
SPM

XMC1400 Problems changing BMI from UART to SWD

$
0
0
I found solution for this problem.
After I changed BMI with Infineon Memtool 4.7, I connect Keil Ulink2 to the XMC1402 and get connection.
And after this I connect J-Link Lite and also get connection.

IRPS5401 factory configuration

$
0
0
Hi,
I am currently developing an FPGA board and I'd like to select the IRPS5401 PMU as the main power supply system. I chose the configuration 5 and 6 (Zu07 CG). One thing I can't find in the documentation, is if the IRPS5401 comes with the MTP memory pre-programmed with the right configurations (voltages and ramp-ups) selected with the given MTP resistor value.
Or do I have to program it myself before the first power-up?

Thanks in advance,
Jean.

IRF1404 in the market with defect

$
0
0
The problem that I have had is that of the video, it is self explanatory and as you can see, the mosfet presents a strange leak, which when mounting the mosfet on a voltage inverter board, there is a current leakage to the oscillator plate and burning of this plate.
I have bent over the board to see if the problem is not in the circuit, but it is certain that it is not because in other boards I have set up, in which there was the placement of different mosfets, but of the same model, the board works quietly.


https://www.youtube.com/watch?v=6HyDVe8qQ4o

https://www.youtube.com/watch?v=te0Fj0vV5b0

Worlds first Racing drone with field oriented control

CCU - Error in count from UP to DOWN

$
0
0
Quote:

Originally Posted by jferreira View Post
Hi,

We are looking at it...

Regards,
Jesus

Thank you so much for the quick reply: after a month nothing!

Andrea

CAN Bus baudrate detection

$
0
0
Hi.

How can I be reliable detect the baudrate from a can bus?


I set the Node in Mode: Bit Timing Mode (CFMODL:10b).

If i set CFSEL to 0 and poll the NFCR0->CFC to get the minimum value,
it varies a lot.. ( 0x2FC .. 0x789 @ 125k; 0xC7 .. 0x1FE @ 250k; 0x01 .. 0xBF @ 500k),


If i set CFSEL to 1 and poll the NFCR0->CFC to get the minimum value,.
it varies a lot.. (0x51 .. 0x1BC @ 250k; 0x01 .. 0x5C @ 500k),


So I can not find a safe value to distinguish whether it is an outlier at the low, or at least the high baudrate.


Is the a code snippet or a app note available?
What is the best CFSEL value for unknown Data on the CAN Bus?

LIN communication for TLE9879QXA40 and TLE987x_3phase board

$
0
0
Hi Keviinx,

Have you sloved this issue. I can only receive a demand after power on.

XMC4200 USIC/SSC weird FIFO Corruption

$
0
0
Hello Forum,

I am experiencing a strange behaviour on my XMC4200-based hardware:

I use USIC0,Ch1 for SPI to communicate with a peripheral chip.
Since the chip uses variable frame sizes, I chose WLE mode.

So far that worked out well, i can see the frames on the scope as expected and the responses seemed to be OK on the logic analyzer.

Here it gets interesting:
I now want to actually use the responses sent by the external IC in my software, but when I try
Code:

XMC_SPI_CH_GetReceivedData(XMC_SPI0_CH1)
or even
Code:

(cvar) = XMC_SPI0_CH1->OUTR
the SPI TX FIFO seems to become corrupted. I get different frame sizes, different data, extra frames, the lot.
When I remove all reads of OUTR between the transmissions, everything is fine.

The reference manual mentions performance considerations when using concurrent access to the FIFO but no real restrictions.
What is going wrong here?

Regards,
Luke

my Send function:
Code:

void spiSendLTFrame(uint8_t cmd, uint16_t addr, uint8_t* data, uint8_t dlen)
{
  uint8_t i;

  XMC_SPI_CH_DisableDataTransmission(XMC_SPI0_CH1);
  XMC_USIC_CH_TXFIFO_PutDataFLEMode(XMC_SPI0_CH1,cmd,SPI_WLE8);
  XMC_USIC_CH_TXFIFO_PutDataFLEMode(XMC_SPI0_CH1,addr,SPI_WLE16);
  for (i = 0; i< dlen; i++)
    {
      if (i == dlen-1)
        XMC_USIC_CH_TXFIFO_PutDataFLEMode(XMC_SPI0_CH1,*data,SPI_WLE8|SPI_EOF);
      else
        XMC_USIC_CH_TXFIFO_PutDataFLEMode(XMC_SPI0_CH1,*data,SPI_WLE8);

      data++;
    }
  XMC_SPI_CH_EnableDataTransmission(XMC_SPI0_CH1);
}

my FIFO config:
Code:

/* Configure receive FIFO settings */
  XMC_USIC_CH_RXFIFO_Configure(XMC_SPI0_CH1,
                              0U,
                              (XMC_USIC_CH_FIFO_SIZE_t)XMC_USIC_CH_FIFO_SIZE_8WORDS,
                              1U);

  /* Configure transmit FIFO settings */
  XMC_USIC_CH_TXFIFO_Configure(XMC_SPI0_CH1,
                              8U,
                              (XMC_USIC_CH_FIFO_SIZE_t)XMC_USIC_CH_FIFO_SIZE_16WORDS,
                              1U);

TLE987X NAC/NAD Value at NVM

$
0
0
Hi Justin,
in addition you could use the provided bootrom user functions

int32_t (*const user_nac_get)(uint8_t *nac_value) = (int32_t (*)(uint8_t *nac_value)) addr_user_nac_get;
int32_t (*const user_nac_set)(uint8_t nac) = (int32_t (*)(uint8_t nac)) addr_user_nac_set;
int32_t (*const user_nad_get)(uint8_t *nad_value) = (int32_t (*)(uint8_t *nad_value)) addr_user_nad_get;
int32_t (*const user_nad_set)(uint8_t nad) = (int32_t (*)(uint8_t nad)) addr_user_nad_set;


Best regards

DAVE APP SDK still up to date?

$
0
0
Hi Infineon,

is Dave APP-SDK 4.2.8 still compatible to latest Dave IDE 4.4.2?
Or is a newer APP-SDK available?

Best Regards,
Wolfgang

TLE8366EV Demo board results

$
0
0
Hello,

I am using TLE8366EV IC for one of my project. Someone please help me with the below.

1. Can you please share the board results of the application circuit?
2. What is the accepted overshoot at VOUT when the reference voltage reaches 0.6V after the soft start?
3. What is the rise and fall time of the switching node?
4. Also, some board results of the load and line transients will help.

Thanks

12V/15V power supply rating for gate driver 1EDI60N12AF

$
0
0
Hello XaviPacheco,

Yes, 15V/1W power supply is ok for the driver IC. and as the 6A peak current is provided by the capacitor, just make sure capacitor is big enough.


Regards,
Daisy

IPB80N04S404ATMA1 - Reverse diode IRM (Ir, Irr)

$
0
0
Hello Mcupwr,

Since it is the Mosfet datasheet, the Ir, Irr is not standard parameters for it.

Regards,
Daisy

TC27x GPT12 Driver

$
0
0
Hello

I am writing device drivers for GPT12 module for TC275T controller.

I tried to write by referring user manual, but still while modifying T3CON register, the controller is going to bus error loop. Also I cleared ENDINIT with password during T3CON modification, still its unable to write anything on that register. I have no idea what to do now.

I am new to Infineon. Anybody has working driver for it?

Thanks
Partha Sarathi Mishra

XMC4200 RX Fifo Timing

$
0
0
Hello,

I am using the USIC in SPI + WLE Mode to transfer multi-word SPI Frames as master, using both RX and TX FIFOs.

Right now i am facing the problem that I don't really know when the RX data from the last transfer will be available in the RX FIFO.
What I do know, is that it is not immediately after the transfer (TXFIFO = empty). I do not get the full data set then and the RX FIFO fill level is less than what I sent.
.
How many cycles does it take after the physical shifting is complete (i.e. the clock stopped and CS is deactivated) for the value in the DSU to reach the RXFIFO ?
Which event do I have to watch out for? I am thinking MSLS, i am already using it for driving the CS.

Any easy way to do this aside from counting words or polling the fill level ?

DAVE v4 XMC_DEBUG XMC1200

FLASH002 UCB programming, lock/unlock

$
0
0
Hello everyone
I am try to lock internal flash memory in xmc4500 by this program :

status_t status;
uint32_t PW0 = 0x00010002; //first 32 bit of password
uint32_t PW1 = 0x00030004; //second 32 bit of password
uint32_t UserLevel = 0;
FLASH002ProtectionFlags_Type ProtectionFlags;

ProtectionFlags = FLASH002_PROT_RD_GLOBAL;
status = Flash002_ConfigureProtection(UserLevel, PW0, PW1, ProtectionFlags);
status = Flash002_ConfirmProtection(UserLevel);
And then try to unlock global read protection by this program :
status_t status;
uint32_t PW0 = 0x00010002; //first 32 bit of password
uint32_t PW1 = 0x00030004; //second 32 bit of password
status = Flash002_DisableGlobalReadProtection(PW0, PW1);
But after lock chip I can not unlock it. I do not know what happen.
I am use DAVE 3
Can anyone help me about that?
Thanks a lot
Mah

XMC1302 Low Power Modes

$
0
0
Hi,
I build an QR Flyback with an XMC1302 but I need reduce the power consumption as far as possible during startup.
The Aux Cap is charged by a current source (~15mA), but im not able to get lower then ~4mA.

What i woud like to do is:
1. Startup:
scale down clock to 100kHz <-> 1MHz
setup timer to generate an wakeup isr after 5 <-> 25 ms
go to deep sleep

2. Sleep Loop
start ADC, check Aux Voltage
Vaux > Setvalue ? Running : Sleep Loop

3. Running
scale up clock to 32MHz / 64MHz
Init peripheral
start Flyback (softstart)

Running mode is working just fine, control loop, light load / full load jumps, vally skipping, etc.

To check the power consumption i use this test code
Code:

int main(void){
  uint32_t TimerId_SysTick_1s;
  uint32_t TimerId_SysTick_10ms;
  uint32_t timer_status;
  DAVE_STATUS_t status;

  //pre Init IO for Debugging
  DIGITAL_IO_Init(&POWERLINE_MODUL_EN_pin);
  DIGITAL_IO_SetOutputHigh(&POWERLINE_MODUL_EN_pin);

  //init cpu Clock
  CLOCK_XMC1_Init(&CLOCK_XMC1_0);

  //gate every peripheral by API
  XMC_SCU_CLOCK_GatePeripheralClock(XMC_SCU_PERIPHERAL_CLOCK_VADC);
  XMC_SCU_CLOCK_GatePeripheralClock(XMC_SCU_PERIPHERAL_CLOCK_CCU80);
  XMC_SCU_CLOCK_GatePeripheralClock(XMC_SCU_PERIPHERAL_CLOCK_CCU40);
  XMC_SCU_CLOCK_GatePeripheralClock(XMC_SCU_PERIPHERAL_CLOCK_USIC0);
  XMC_SCU_CLOCK_GatePeripheralClock(XMC_SCU_PERIPHERAL_CLOCK_BCCU0);
  XMC_SCU_CLOCK_GatePeripheralClock(XMC_SCU_PERIPHERAL_CLOCK_POSIF0);
  XMC_SCU_CLOCK_GatePeripheralClock(XMC_SCU_PERIPHERAL_CLOCK_MATH);
  XMC_SCU_CLOCK_GatePeripheralClock(XMC_SCU_PERIPHERAL_CLOCK_WDT);
  XMC_SCU_CLOCK_GatePeripheralClock(XMC_SCU_PERIPHERAL_CLOCK_RTC);

  //gate every peripheral by Reg
  SCU_CLK->CGATSET0 = 0x07FFUL;                                        // Gate Off all peripherals
  WR_REG(SCU_CLK->CLKCR, SCU_CLK_CLKCR_CNTADJ_Msk, SCU_CLK_CLKCR_CNTADJ_Pos,(0x3FFU));


  COMPARATOR->ANACMP0 |= COMPARATOR_ANACMP0_CMP_LPWR_Msk;        // Put Comparator into low power mode
  COMPARATOR->ANACMP0 &= ~(COMPARATOR_ANACMP0_CMP_EN_Msk);        // Disable ACMP0
  COMPARATOR->ANACMP1 &= ~(COMPARATOR_ANACMP1_CMP_EN_Msk);        // Disable ACMP1
  COMPARATOR->ANACMP2 &= ~(COMPARATOR_ANACMP2_CMP_EN_Msk);        // Disable ACMP2

  //reduce peripheral Clock
  XMC_SCU_CLOCK_SetFastPeripheralClockSource(XMC_SCU_CLOCK_PCLKSRC_MCLK);

  //scale down cpu clock
  CLOCK_XMC1_SetMCLKFrequency(125);

  SCU_CLK->PWRSVCR |= SCU_CLK_PWRSVCR_FPD_Msk;                        // make sure flash powers down during deep sleep
  PPB->SCR |= PPB_SCR_SLEEPDEEP_Msk;                                // Setup for Deep Sleep instead of normal sleep

  __disable_irq();                                                    //disable all interrupts

  //debugging
  DIGITAL_IO_SetOutputLow(&POWERLINE_MODUL_EN_pin);

  while(1){
    if(sleep_en){
      __WFI();
    }
    DIGITAL_IO_ToggleOutput(&POWERLINE_MODUL_EN_pin);
  }


//======================================================================
//============= Running Mode
//======================================================================

  status = DAVE_Init();          /* Initialization of DAVE APPs  */

  if(status != DAVE_STATUS_SUCCESS){
    XMC_DEBUG("DAVE APPs initialization failed\n");
    while(1U){}
  }

  NetzPLL_Init();                                                                //init Mains PLL
  NetzMonitor_Init();                                                        //init Mains Monitor
  Fly_Control(1);                                                                //init Flyback

Attachment 3545

How can i further reduce the current consumtion? Or where is my misstake?

Thanks a lot for your support!

Best Regards,
Sascha
?????
Viewing all 9892 articles
Browse latest View live


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