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

Low Speed Motor by XMC1302

$
0
0
Dear,

would you give me an application manual or technical note for low speed motor ?
It will be helpful for us.

Best regards,
HAYASHI Kazunari

Groovy object not found after import from Git-Repository

$
0
0
Quote:

Originally Posted by andreash View Post
Hello,

I still face the same problem with Git even if the projectData.bin and .dep and .app files are also part of the Git commit. The Groovy object not found error still persists.
Are there any other options to check? By the way I think using Git should work out of the box for the IDE even if it is free.
Can anyone please help.

Best regards

I could resolve the issue using a tool named "Directory Compare", which I used to compare a checkout from GIT which showed the problem and a working local copy which was pushed to git. It turned out that several folders and .app files
were missing in the Dave directory. The Dave/Model/APPS/* directory was affected. I can recommend this tool to investigate this sort of issue.

TC27x MultiCAN

$
0
0
Hi,

I'm preparing CAN communication for AURIX™ TC27x D-Step based on the example from User’s Manual V2.2 2014-12
.
The code from chapter 22.5 works perfectly with loopback mode.

Code:

(8) CAN_NPCR0 = (1 << 8); // LBM=1
(9) CAN_NBTR0 = 0x3EC9;  //set bit segments
...
(11) CAN_NPCR1 = (1 << 8); // LBM=1
(12) CAN_NBTR1 = 0x3EC9;  //set bit segments

My goal is to communicate with other CAN device via TXDCAN0/RXDCAN0A

Code:

CAN_NPCR0.U = 0x001; // set NPCRx.RXSEL 001 to select Port 20.8 for TXDCAN0 and Port 20.7 for RXDCAN0A
CAN_NPCR1.U = 0x001;

unfortunately it doesn't work after selecting the port and I'm not sure if the code or wiring or bitrate is wrong.

Thanks in advance.

Similar thread:
https://www.infineonforums.com/threa...odule-on-TC275

Doubts on _mfcr command - reg

$
0
0

Hi Naveen,

Quote:

What does this part of code means?
What this snippet accomplishes is that it returns the core identification number of the currently executing core. You need this in a multi-core environment to decide which core is executing and then follow its dedicated code path. As an example, suppose all cores call main after processing the startup code. Then main becomes responsible for distributing the code:

Code:

/* main() called by all cores */
int main(void) {
  int n = _mfcr(CPU_CORE_ID);
  switch (n) {
    case 0: do_tc0(); break; /* handled by tc0 */
    case 1: do_tc1(); break; /* handled by tc1 */
    case 2: do_tc2(); break; /* handled by tc2 */
  } while (1);
  return 0;
}

NB: Note that in terms of main I'm using a different approach than the iLLD sample cases. These do not have a regular main(). Instead its startup code does the core ID check and then immediately routes to core<id>_main.

Best regards,

Henk-Piet Glas
Principal Technical Specialist
Embedded Systems

IoT uses eSIM

$
0
0
Hi
I want to build IoT product and use eSIM.
What chipset do I can use?
Do you have any reference design or document?

thank you so much.

XMC4700 DUAL SPI CONFIGURATION on USIC2 CH0

$
0
0
Dear Forum-Member,

i have a problem by receive data over dual port spi, transmit is all ready done,

Configuration

Code:

//SCLK configuration  5.2
    const XMC_GPIO_CONFIG_t SPI_U2C0_sclk_config  =
    {
    .mode = XMC_GPIO_MODE_OUTPUT_PUSH_PULL_ALT1,
    .output_level = XMC_GPIO_OUTPUT_LEVEL_HIGH,
    .output_strength = XMC_GPIO_OUTPUT_STRENGTH_MEDIUM
    }; 
   
   
//MISO_ 5.0
    const XMC_GPIO_CONFIG_t SPI_U2C0_DATA0  =
    {
    .mode = >XMC_GPIO_MODE_OUTPUT_PUSH_PULL,
    };             
   
//MISO_5.1
    const XMC_GPIO_CONFIG_t SPI_U2C0_DATA1 =
    {
    .mode = >XMC_GPIO_MODE_OUTPUT_PUSH_PULL,
    };     
   
//CS configuration  5.3
    const XMC_GPIO_CONFIG_t SPI_U0C1_cs0_config  =
    {
    .mode = XMC_GPIO_MODE_OUTPUT_PUSH_PULL_ALT1,
    .output_level = XMC_GPIO_OUTPUT_LEVEL_HIGH,
    .output_strength = XMC_GPIO_OUTPUT_STRENGTH_MEDIUM
    }; 
   
//SPI U2C0 Konfiguration   
    const XMC_SPI_CH_CONFIG_t SPI_U2C0_config =
    {
      .baudrate = 1000000,                        // 1 MHz                 
      .bus_mode = XMC_SPI_CH_BUS_MODE_MASTER,
      .selo_inversion = XMC_SPI_CH_SLAVE_SEL_SAME_AS_MSLS,
      .parity_mode = XMC_USIC_CH_PARITY_MODE_NONE
    };

Initialisation


Code:


XMC_GPIO_Init(P5_0, &SPI_U2C0_DATA0);                                     
XMC_USIC_CH_SetInputSource(XMC_SPI2_CH0, XMC_USIC_CH_INPUT_DX0, USIC2_C0_DX0_P5_0);  //Setze Input Path
XMC_GPIO_Init(P5_1, &SPI_U2C0_DATA1);                               
XMC_USIC_CH_SetInputSource(XMC_SPI2_CH0, XMC_USIC_CH_INPUT_DX0, USIC2_C0_DX0_P5_1);  //Setze Input Path
XMC_GPIO_SetHardwareControl(P5_0, P5_0_HWCTRL_U2C0_DOUT0);
XMC_GPIO_SetHardwareControl(P5_1, P5_1_HWCTRL_U2C0_DOUT1);
XMC_GPIO_Init(P5_3, &SPI_U2C0_cs0_config);                                          //Konfiguration SELO0
XMC_GPIO_Init(P5_2, &SPI_U2C0_sclk_config);                                        //Konfiguration sclk
XMC_SPI_CH_SetBitOrderMsbFirst(XMC_SPI2_CH0);
XMC_SPI_CH_SetTransmitMode(XMC_SPI2_CH0, XMC_SPI_CH_MODE_DUAL);
XMC_SPI_CH_Init(XMC_SPI2_CH0, &SPI_U2C0_config);
   
XMC_SPI_CH_Start(XMC_SPI2_CH0);

Does one see why it could not work or has an idea on what to look for. If I put may DUAL SPI SLAVE on the XMC PIN the Pin goes low.

Best regards and thanks in advanced

EbbeSand

Tc22x Mulitcan stucks randomnly

$
0
0
Hi,
I've go a can transmitting Problem. Multi can can send pack of frames several times and get stuck for no reason.
I'm using multican module , and my initialization and transmit functions basing on ILLD sample:

initialization function
Code:

void initialize_multican(void) {
        // create configuration
        IfxMultican_Can_Config canConfig;;
        IfxMultican_Can_initModuleConfig(&canConfig, &MODULE_CAN);

        // initialize module
        // IfxMultican_Can can; // defined globally
        IfxMultican_Can_initModule(&can, &canConfig);

        // create CAN node config
        IfxMultican_Can_NodeConfig canNodeConfig;
        IfxMultican_Can_Node_initConfig(&canNodeConfig, &can);

        canNodeConfig.baudrate = 125000;

        // Source Node
        // IfxMultican_Can_Node canSrcNode; // defined globally
        canNodeConfig.nodeId = IfxMultican_NodeId_0;
        canNodeConfig.rxPin = &IfxMultican_RXD0A_P02_1_IN;
        canNodeConfig.rxPinMode = IfxPort_InputMode_pullUp;
        canNodeConfig.txPin = &IfxMultican_TXD0_P02_0_OUT;
        canNodeConfig.txPinMode = IfxPort_OutputMode_pushPull;

        // initialize the node
        IfxMultican_Can_Node_init(&canNode, &canNodeConfig);

message object initialization
Code:

void initialize_can_messages(IfxMultican_Can_Node* canNode) {
        for(uint8 i = 0; i < can_messages_definition.messages_length; i++) {
                // Message Object handles
                IfxMultican_Can_MsgObj can_message_object;

                // create message object config
                IfxMultican_Can_MsgObjConfig canMsgObjConfig;
                IfxMultican_Can_MsgObj_initConfig(&canMsgObjConfig, canNode);

                // assigned message object:
                canMsgObjConfig.msgObjId = i ;
                canMsgObjConfig.messageId = can_messages_definition.messages[i].id;
                canMsgObjConfig.acceptanceMask = 0x7FFFFFFFUL;
                canMsgObjConfig.frame = can_messages_definition.messages[i].type;
                canMsgObjConfig.control.messageLen = can_messages_definition.messages[i].length;
                canMsgObjConfig.control.extendedFrame = FALSE;
                canMsgObjConfig.control.matchingId = TRUE;

                // initialize message object
                IfxMultican_Can_MsgObj_init(&can_message_object, &canMsgObjConfig);

        }
}



transmit function
Code:

void multican_send_frame(uint16 frame_id, uint64 data){
        can_message* msg = find_message_by_id(frame_id, IfxMultican_Frame_transmit);
        IfxMultican_Message txMsg;
        if( msg != NULL_PTR){
                txMsg.id = msg->id;
                txMsg.data[0] = (uint32)data;
                txMsg.data[1] = (uint32)(data >> 32);
                txMsg.lengthCode = msg->length;
                txMsg.fastBitRate = FALSE;
                // Transmit Data
                while(IfxMultican_Can_MsgObj_sendMessage(&(msg->message_object), &txMsg) == IfxMultican_Status_notSentBusy);
        }

}

I'm sending a pack of same frames periodicaly.
program is getting stuck on while((IfxMultican_Can_MsgObj_sendMessage) loop. t It sometimes send 2 packs and sometimes 50 packs, there is no rule when does it's getting stuck.
what can be the source of this problem ?

UART with CTS/RTS flow control


Optiga Trust X vs 802.1AR

$
0
0
Hi,
I am planning to use Optiga TrustX module in my project. One requirement in that project is to comply with the 802.1AR standard (Secure Identity Key).
I know that TPM modules are for that purpose, but I am not sure about Trust X. what is the exact difference between them? Why isn't optiga trust X marked TCG TPM? I checked the documentation but the only remark about the difference is that TrustX is for embedded systems but TPM modules are for more powerful PC or linux-based systems.
I appreciate if you can share your thoughts about TrustX for 802.1AR compatibility.

Best regards,
Vedat

Dave 4.4.2 An error has ocurred. See the log file

$
0
0
When I open Dave 4.4.2 I get this message "An error has ocurred. See the log file.C:\Users\fernando salazar\Desktop\DAVE_4-4-2_64bit_2018-02-23\DAVE-IDE-4.4.2-64Bit\eclipse\configuratione\1558461591088.log"
Every time that i open the program appears a new text document as 1558461591088.log with a diferent name.
How could I solve the problem?

The text document 1558461591088.log
?????

Tx277 EMEM time out issue

$
0
0
Hello Support Team,
I'm working on a project that will access Tx277's EMEM space during ECU working with JTAG. I follow the user guide to initialize EMEM space but get a time out error during write 0x0 to 0xAF0FB000~0xAF0FFFFC. The address with time out is not fixed. I tried 25MHz and 250KHz TCK but no luck.

The weird thing is that the address with time out issue is always end with 0xC (0xAF0FFFFC, 0xAF0FFFEC, 0xAF0FFFDC.......). Except this address range, everything works fine.

Any clue for this special address with time out issue?

Thanks!

core to core communication example

$
0
0
Hi, I am working on Tricore TC297B and I am interested to know about establishing core to core communication. If any example code or documents available please let me know.

VGS IPP120N20NFD ID shorts

$
0
0
Is +15 VGS to high voltage for this NFET? Why is Qg VGS=0-10v only test VDD=100v? Is 180ns dead band enough recovery time for FD diode in 20kHz PWM? How is it considered fast diode yet Trr-144ns recovery typical? What is typical dead band time for IPP120N20NFD? Odd issue since first testing IRFB4227PbF diode (Trr=100ns), datasheet shows shoot through blocking time (100ns). Assume that was gate drive dead band time (100ns) - never had DS short occur.

A few NFET have shorted across DS during very random open loop commutation crash or random 1/2 bridge shoot through past dead band 100ns. Have not had another 1/2 bridge shoot through @180-200ns dead band time. Oddly reverse diode (IPP120N) Trr is slower 144-288ns MAX yet runs 40% cooler, a mind bending attribute. Does the Trr=288ns MAX infer to set dead band for worst case to 280ns? Will reducing VGS to +12v reduce Ton switch recovery transients?

Condition:

Starting low impedance BLDC (400mohm) phases, does not trip analog comparator fault - threshold (64A) peaks yet shorted DS junction twice in same location. The low side current monitor trip threshold (<2us) input to analog fault comparators. Oddly DS random short occurs, mostly high side NFET. The NFETS temperature <24*C monitored via two heat sink sensors. The IPP120N is producing higher than expected recovery transients VDD=139v recovery spike peaks <155v will lower VGS=12v help to reduce these recovery spikes too?

Many thanks!

XMC 1400 SPI Clock/Bit Offset Transmit Slave

$
0
0
Hi all,

Using a XMC1400 for the first time and playing around with the HAL.
I'm currently trying out a spi program that basically gets sent data and then sends it back on the next transmit.
My issue is that all of my transmit data is fine except for the last byte, in which MISO is half a clock cycle over and is not matching.
I've gone though my settings (I'm using the standard daveApp SPI slave configured in interrupt mode, default pin settings).
I've also verified that my FIFO data is correct,

My program flow is basically:
1. Dave init
2. Wait for slave select then start transmitting data
3. Receive in data, and queue up that data to be transmitted on the next SPI

Picture for what I'm seeing (top is MOSI, 2nd is MISO):
附件 3986
Any help is appreciated.
?????

Abnormal GH & GL waveform

$
0
0
Hi,

I have an issue for GH / GL output waveform as below picture.
The GH1 output level has step waveform by dead time of GL1 output.

Which point should i check?

Please advise.

Attachment 3988
?????

Install DAVE™ IDE for XMC™ microcontrollers

$
0
0
Hi there,
I have unzipped dave 4.4.2 in C drive. But dave isnot opening. It is giving error. please see the log file.
?????

User code is not retaining after power off and on

$
0
0
Hello,

I am using XMC4800 microcontroller. For debugging I am using XMC Debug Link by Infineon and DAVE compiler. The device is getting booted in Normal Boot mode only i:e, from FLASH_1_cached(RX) :
ORIGIN = 0x08020000, LENGTH = 0x001E0000 which is a non volatile memory. The thing is when I switch off power and switch on the flashed code is not getting retained in the memory. But when I connect XMC debug probe (not DAVE) the code is running properly. How is it possible without running DAVE software the code is running only from XMC debug probe? When I unplug XMC debug probe from PC and power is still supplying to the device the code doesn't execute. Please help me with this.

Thank You

installation error

$
0
0
Hi Team,

I am trying to install DAVE software to my system but i am getting some error.
i am sharing my logs file.

My system details
Windows 10
64 bits OS

Thanks
?????

Read the register value of TLF35584VS2

$
0
0
Hello all,

I have read the reset value of TLF35584VS2 registers via SPI communication. But the return value does not match with the reset value(in datasheet).
Why is it?

Thanks

Aurix ERU sample code

$
0
0
I am working with TC212 board. I need port/pin change interrupt feature in my current project.

My requirement is ISR should be invoked with voltage level change on port/pin.

could you please provide ERU sample code for TC-212.

Thanks in advance.
Viewing all 9892 articles
Browse latest View live


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