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

MiniWiggler3: Access to password protected TC1796 possible via CAN, but not via JTAG?

$
0
0
Tell me when you view device information DAP miniwiggller serial number all the ZEROS and the unit in the program is not defined how can I solve this issue

Modbus TCP

spi pins not exposed in xmc 4200

$
0
0
hi everyone,

I am using xmc 4200 microcontroller in hexagonal application kit. I haven't seen any spi pins exposed to interface with my devices. I also saw in boards manual and there is no pins exposed even in ACT (satellite conductor). Please help me out to find spi pins or else give an idea to interface spi with other devices by multiplexing. If any multiplexing available, please give me an idea of doing it.

SEGGER_RTT XMC4500 Relax Kit

Implementing FMCW on XMC4400 microcontroller

$
0
0
Hello guys,

If you could procure the FMCW code please share it.

Dheeraj

BGT24-RFB2412 Board USB Connection

$
0
0
Quote:

Originally Posted by fjbotha View Post
Hi Noam

I had the exact same issues when I first got my board.

Firstly, I don't think that it is possible to flash the mcu through the USB interface. For that I acquired a debugger from Segger (J-Link edu works for me) along with a Cortex 10-20 pin adapter.
When I inquired regarding the FMCW software I was referred to my distributor and eventually got the sample app from them, so I suggest you start there.

Regards,
Frik

Dear fjbotha

Could you share the FMCW code.
My Email: dheerajkcdheeraj@gmail.com

Thank you!

question about the multi-can analyzer mode of the XC2265!

$
0
0
I tried to monitor CAN data by setting it to analyzer mode via "DAVE " tool.
But I could not find a way to receive data.

I want to receive CAN data through the following conditions.
1. that is set analyzer mode to node1
2. that is One network bus configuration with another CAN communication device.
3. that is Receive all data regardless of MO setting or Receive all data(anoter device).

Please tell me how to set DAVE tool and how to use it.
Or application notes.

question about the multi-can analyzer mode of the XC2265!

$
0
0
I tried to monitor CAN data by setting it to analyzer mode via "DAVE " tool.
But I could not find a way to receive data.

I want to receive CAN data through the following conditions.
1. that is set analyzer mode to node1
2. that is One network bus configuration with another CAN communication device.
3. that is Receive all data regardless of MO setting or Receive all data(another device).
* I want know CAN ID from some deviec by XC2000 MCU.

Please tell me how to set DAVE tool and how to use it.
Or application notes.

Editor tabs and breakpoints disappear at start of Dave

$
0
0
Attachment 2685

Under Window->Preferences->DAVE, uncheck the option to close all opened editors on active project switch.

Unfortunately, this doesn't solve the loss of breakpoints issue.
Attached Images

Modbus TCP without RTOS

$
0
0
Hi,

See attached project.
Basically the ETH_LWIP APP allows you to choose whether to use RTOS or non RTOS. One selected non RTOS and code being generated, it is needed to replace all threads by software timers.

Regards,
Jesus
Attached Files

Upgrading GCC in DAVE4

$
0
0
Hi,

If you wish to use the latest GCC version in DAVE4, follow next steps:
1. Download and install the latest GCC from https://developer.arm.com/open-sourc...u-rm/downloads
2. In DAVE4, go to the Eclipse menu → (Windows →) Preferences → C/C++ → Build → Environment
3. Change the value of ARM_GCC_HOME to point to the installation path of the GCC (step 1).
Attachment 2687
4. Copy libiconv2.dll, libintl3.dll, make.exe and rm.exe from DAVE4 installation path eclipse/ARM-GCC-49/bin to the installation path of the GCC (step 1) bin folder.
Attachment 2688
Have fun.

Regards,
Jesus
Attached Images

BGT24-RFB2412 Board - Transparent connector

$
0
0
Hi, im interested in this board too.

2. You can flash and debug your code by DAVE 4 via J-link debugger. IF frequency used to calculate speed, direction,...

3. Im looking for FMCW softwave so long too :(.
I have Sense2Go board, including BGT24MTR11 radar ic and XMC4200. I have sample code for Doppler IF in DAVE4, and code for processing data in Matlab.

TLI4970 EEPROM Register MAP

$
0
0
Hi could someone point me to a datasheet with the EEPROM registers for the TLI4970 current sensor.
Are there only two registers contained on the current sensors? I was able to find a reference the bandwidth register in the "How to Program TLI4970" and in the "How to do Volatile Filter Settings for Current Sensor - TLI4970."
But what about the overcurrent register, what address is it and are there any other registers that can be addressed?

Thanks

Sense2Go DAVE4 FW for direction

$
0
0
Hello,
did any of you have the Sense2Go firmware "Sense2Go_V2_MotionDetectionDirection_080415" for DAVE 4 instead of DAVE 3?
Thanks in advance

UART XMC1300 boot kit

$
0
0
Hi Xabi,

first a question for you. Does the provided example work for you? You see that the example is using pin 1.2 as a TX and pin 1.3 as a RX. These pins are used while the debugger also provides virtual COM port through these pins (you can see the message "hello world" in the terminal window). Try running first that example on your board to see if it is working.

I see that you would like to use pins 0.14 and 0.15. If it´s not an issue for you, can you use some other pins for the UART. The problem is that the mentioned pins are used for SWD meaning for debugging, so you would need to change BMI setting to be able to use the mentioned pins for UART. It could be done sure, but it will be easier just to use some other pin combination. Also beware that some pins are connected to USIC module 0 channel 0 and some of them are connected to USIC module 0 channel 1. This has the influence later on which argument should be used in XMC Lib function calls:

"XMC_UART_CH_Start(XMC_UART0_CH);" or "XMC_UART_CH_Start(XMC_UART0_CH1);"

Try to get this example working by observing the terminal on your desktop and then try to change the pins to suit your application.

Best regards,
Deni

CMSIS DSP library use for inverse trig functions

$
0
0
Hi,
I'm new to infineon and currently working on a project that involves performing heavy math functions on it (XMC4700). I came across CMSIS DSP library and it is very handy and easy to port.
However, I couldn't find much information about inverse trig functions (atan, asin,acos). I couldn't find any in the library. I'm wondering if that is actually the case or if I'm missing something there??
Many Thanks

Zainab

How to Make A Thermometer with PIC16F877A

$
0
0
At basic level on microcontroller you can create this interesting project of digital thermometer. It teaches you how to acquire analog data from a sensor and display it on a lcd. We will use a popular MCU PIC16F877A to implement this mini project. The temperature will be read using a LM35 precision sensor. Final result will be shown on a 16×2 alphanumeric lcd module.
Attachment 2689
Stuffs Required
1 40 PIN PIC Development Board
2 16×2 LCD Board
3 Single PIN Burg Wires Female/Female 20 units
4 12V 1A DC Adapter
5 LM35
Connections
The PIC16F877A development board has the PIC16F877A microcontroller chip and its supporting basic circuitry all in a nice high quality PCB. The development board comes fully assembled and tested, thus makes it ideal for doing experiments for learning by beginners.
Attachment 2690
5v and GND connection points are labeled in the development board as Extra 5v OUT. Please refer to the image below for their positions. 5v and GND are also available in the 40 pin row of male headers. In the image below Yellow wire is 5v and Green wire is GND.
LM35 Connection
How to build from source
To build this project from the source code you need MPLABX IDE and XC8 compiler installed.

Create a new MPLABX Project
Name it "thermometer"
Type: standalone
Family: Mid Range 8-bit MCUs (PIC12/16/MCP)
Device: PIC16F877A
Compiler: XC8
Add a preprocessor symbol named _XTAL_FREQ=20000000
Add LCD Library files to project.
Add ADC library files to project
Copy the files to your project folder.
add adc_pic16.c to sources files section.
add adc_pic16.h to header files section.
Add LM35 Temperature Sensor library files to project
Copy the files to your project folder.
add lm35_pic16.c to sources files section.
add lm35_pic16.h to header files section.
Add a new source file thermometer.c this will be the main application file, copy paste the above given source code.
Now its time to build this project. Building is the process of compiling all files in the project and then linking them to build the final executable image. This executable image is in the form of a hex file. The name of this file is <project name>.X.production.hex

To build the project select Build Project from the Run Menu.

problem with dac usage in xmc4400 kit

$
0
0
I have a file with data(digital input) and read all elements from file in to an array and started timer with time interval of 10 microseconds. Invoked an INTERRUPT APP and I wanted to get ramp wave from file values. I added DAC instance in the configuarator and selected custom pattern and invoked DAC_SingleValue_SetValue_u16(&DAC_0,numberArray[event_count++]); function in the timer interrupt. I have connected pin for dac output in configuarator and when I checked in CRO I am not getting any wave. My motive is to generate ramp wave from an array of values from txt.file and connect to CRO to view output.

Writing to a Dave Console window

$
0
0
Hi everyone,

Ya I am too very much interested in knowing how to print values in console window. Please give me a perfect solution for this.

Thanks & regards,
Suriya

XMC4400 Spurious SPI Interrupts?

$
0
0
Hi,

we are using a XMC4400-512 microcontroller in our product. Most of our peripherals are attached to the controller via SPI.
For historical reasons and because we need more SPI chip select lines than are offered by the package and thus use
GPIOs as chip selects, we have implemented our own SPI driver using the Infineon XMC Library without DAVE. Now for
some time we have noticed that SPI interrupts occour although no SPI transfer was triggered. This happens very rarely
sometimes only every 120 hours.

We use the USIC transmit and receive FIFO. Our driver only uses the RX interrupt, triggered by the RX Fifo. We start a
transfer by writing the data into the transmit FIFO and wait for the RX interrupt to occour. Inside the RX ISR we check
whether more data needs to be transferred. If so, we write the next data bytes into the transmit FIFO until it is full, exit the
ISR and wait for the next interrupt. When the transfer is finished, i.e. no more data to be written/read, we pull the GPIOs
used as chip selects high and are done.

It might be that our setup of the RXFIFO interrupt is wrong or that we generate a race condition by the way we write the
data to the TX Fifo inside the ISR. I have posted a simplified version of our Setup code and the interrupt handler. Can
anyone spot the problem? Thanks for your help

The SPI core initialization:
Code:


void SPI_Init() {
    IRQn_Type _numIRQ;

    XMC_SPI_CH_CONFIG_t _config = {
        .baudrate                  = 200000,
        .bus_mode                  = XMC_SPI_CH_BUS_MODE_MASTER,
        .selo_inversion            = XMC_SPI_CH_SLAVE_SEL_INV_TO_MSLS,
        .parity_mode                = XMC_USIC_CH_PARITY_MODE_NONE
    };

    /* Initialize SPI */
    XMC_SPI_CH_Init(XMC_SPI0_CH0, &_config);

    /* Bitorder */
    XMC_SPI_CH_SetBitOrderMsbFirst(XMC_SPI0_CH0);

    /* Shift clock */
    XMC_SPI_CH_ConfigureShiftClockOutput(
            XMC_SPI0_CH0,
            XMC_USIC_CH_BRG_SHIFT_CLOCK_PASSIVE_LEVEL_0_DELAY_ENABLED,
            XMC_USIC_CH_BRG_SHIFT_CLOCK_OUTPUT_SCLK);

    /* Input source selected */
    XMC_SPI_CH_SetInputSource(
            XMC_SPI0_CH0,
            XMC_USIC_CH_INPUT_DX0,
            SUSIC0_C0_DX0_P1_4);

    /* Configure FIFO */
    XMC_USIC_CH_TXFIFO_Configure(XMC_SPI0_CH0, 0, XMC_USIC_CH_FIFO_SIZE_4WORDS, 1);
    XMC_USIC_CH_TXFIFO_Flush(XMC_SPI0_CH0);

    XMC_USIC_CH_RXFIFO_Configure(XMC_SPI0_CH0, 16, XMC_USIC_CH_FIFO_SIZE_4WORDS, 3);
    XMC_USIC_CH_RXFIFO_Flush(XMC_SPI0_CH0);

    /* Word & Frame length */
    XMC_SPI_CH_SetWordLength(XMC_SPI0_CH0, 8);
    XMC_SPI_CH_SetFrameLength(XMC_SPI0_CH0, 32);

    /* Enable Interrupt */
    XMC_USIC_CH_RXFIFO_EnableEvent(
            XMC_SPI0_CH0,
            XMC_USIC_CH_RXFIFO_EVENT_CONF_STANDARD);
    XMC_USIC_CH_RXFIFO_SetInterruptNodePointer(
            XMC_SPI0_CH0,
            XMC_USIC_CH_RXFIFO_INTERRUPT_NODE_POINTER_STANDARD,
            1);

    NVIC_SetPriority(USIC0_0_IRQn, 80);
    NVIC_EnableIRQ(_numIRQ);

    /* Default slave select */
    XMC_SPI_CH_EnableSlaveSelect(XMC_SPI0_CH0, XMC_SPI_CH_SLAVE_SELECT_0);

    /* Start SPI */
    XMC_SPI_CH_Start(XMC_SPI0_CH0);
}

The interrupt handler:
Code:

void SPI_ProcSPI(spi_bus_t bus) {
    uint32_t _remaining;
    uint32_t _rdbytes, _wrbytes, _txsize;
    uint32_t _fifo_flags;

    XMC_USIC_CH_t *_spi = XMC_SPI0_CH0;

    _fifo_flags = XMC_USIC_CH_RXFIFO_GetEvent(_spi);
    XMC_USIC_CH_RXFIFO_ClearEvent(_spi, _fifo_flags);

    // Read out data from fifo
    while ((_rdbytes = XMC_USIC_CH_RXFIFO_GetLevel(_spi))) {
        _rxbuf[rx_index] = (uint8_t) XMC_SPI_CH_GetReceivedData(_spi);
        rx_index++;
    }

    // Write new data
    _remaining = transfer_size - tx_index;
    _wrbytes = fifo_size - XMC_USIC_CH_TXFIFO_GetLevel(_spi);

    if (_remaining > 0) {
        if (_remaining > _wrbytes) {
            _txsize = _wrbytes;
        } else {
            _txsize = _remaining;
        }

        // disable interrupts as interrupting the the transmit function leads to a
        // deadlock.
        __disable_irq();
        for (uint32_t _i = 0; _i < _txsize; _i++) {
          XMC_SPI_CH_Transmit(_spi,
                  (uint16_t) txbuf[tx_index++],
                  XMC_SPI_CH_MODE_STANDARD);
        }

        // Adapt FIFO interrupt level
        XMC_USIC_CH_RXFIFO_Configure(
            _spi,
            16,
            XMC_USIC_CH_FIFO_SIZE_4WORDS,
            _txsize - 1);

        __enable_irq();  // re-enable interrupts
    } else {
        // Read out rxbuffer and handle GPIO chip selects..
        spi_finish_transfer(_spif);
    }
}

Viewing all 9892 articles
Browse latest View live


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