Quantcast
Channel: Forums - Recent Threads
Viewing all 262198 articles
Browse latest View live

CCS/MSP430FR5994: Using NVS functions to read and write to fram

$
0
0

Part Number:MSP430FR5994

Tool/software: Code Composer Studio

Hi, I am using some example code and functions from the MSP430 fram examples

one of the functions from the package allows me to save and load from fram safely (i.e double buffering etc)

It was fine with single variables but when i try to use arrays it seems to clear the memory location every time i do a reset or a power lost 

I have tested the storing (commit) and reading (restore) functions seperately and they seem to work with arrays

i think the problem is with the initialization function nvs_data_init 

here is the code for nvs_data_init 

nvs_data_handle nvs_data_init(uint8_t *storage, uint16_t size)
{
    uint8_t *data1;
    uint8_t *data2;
    uint16_t crc;
    uint16_t init_crc1;
    uint16_t init_crc2;
    nvs_data_status init_status;
    nvs_data_header *header;

    // Initialize local variables
    init_status = NVS_DATA_INIT;
    init_crc1 = 0;
    init_crc2 = 0;

    // Calculate pointer to header and data storage inside the NVS container
    header = (nvs_data_header *)storage;
    data1 = (uint8_t *)header + sizeof(nvs_data_header);
    data2 = data1 + size;

    // check status of current container
    if ((header->token == NVS_DATA_TOKEN) && (header->size == size)) {
        switch (header->status) {
        // Storage 1 contains latest data
        case NVS_DATA_1:
            // Get CRC of storage 1 and check if it matches
            crc = nvs_crc(data1, header->size);
            if (crc == header->crc1) {
                // Matching checksum, return NVS data handle
                return (nvs_data_handle)header;
            }
            else {
                // Get CRC of storage 2 and check if it matches
                crc = nvs_crc(data2, header->size);
                if (crc == header->crc2) {
                    init_status = NVS_DATA_2;
                    init_crc2 = crc;
                }
            }
            break;
        // Storage 2 contains latest data
        case NVS_DATA_2:
            // Get CRC of storage 1 and check if it matches
            crc = nvs_crc(data2, header->size);
            if (crc == header->crc2) {
                // Matching checksum, return NVS data handle
                return (nvs_data_handle)header;
            }
            else {
                // Get CRC of storage 1 and check if it matches
                crc = nvs_crc(data1, header->size);
                if (crc == header->crc1) {
                    init_status = NVS_DATA_1;
                    init_crc1   = crc;
                }
            }
            break;
        default:
            // Try to recover status based on valid CRC signature
            // since last status is not known, recovering any valid
            // CRC is better than losing all information
            crc = nvs_crc(data1, header->size);
            if (crc == header->crc1) {
                init_status = NVS_DATA_1;
                init_crc1 = crc;
            }
            crc = nvs_crc (data2, header->size);
            if (crc == header->crc2) {
                init_status = NVS_DATA_2;
                init_crc2 = crc;
            }
            break;
        }
    }

    // Unlock FRAM
    uint16_t framState = nvs_unlockFRAM();

    // Initialize NVS data header
    header->token = NVS_DATA_TOKEN;
    header->status = init_status;
    header->size = size;
    header->crc1 = init_crc1;
    header->crc2 = init_crc2;

    // Lock FRAM
    nvs_lockFRAM(framState);

    // Return NVS data handle
    return (nvs_data_handle)header;
}

The API references can be found here 


CSD19536KTT: 3D model and thermal properties of D2PAK MOSFET

$
0
0

Part Number:CSD19536KTT

Hello,

I'm in need of a 3D model for CSD19536KTT to be used for thermal modelling purposes.  Therefore, I would like leadframe and die details.  I would also like to get the thermal conductivity of the plastic overmold material used on this device.  Thanks!

Dave

PCA9539: Reliability Issue

$
0
0

Part Number:PCA9539

Is PCA9539 commercial part? any automatic or EP part (higher reliability grade part) available? Could anyone share the Qual report for this part?

 

Thanks,

 

Ke

CC2530: Macro concatenation with "=" does not create a valid token

$
0
0

Part Number:CC2530

Hello,

I'm using the IAR Workbench and I just wanna know how to avoid the below warning: 

Warning[Pe1665]: concatenation with "=" in macro "MCU_IO_OUTPUT_PREP" does not create a valid token 

In the follow code:

#define MCU_IO_OUTPUT_PREP(port, pin, val) st( P##port##SEL &= ~BM(pin); \
P##port##_##pin## = val; \
P##port##DIR |= BM(pin); )

the definition of "st()" is:

#define st(x)      do { x } while (__LINE__ == -1)

Please any help, 

Best regards and thanks a lot for your help

PGA460: Develop another pga460 gui embedded application

$
0
0

Part Number:PGA460

Currently I have a pcb in which I am using PGA460 succesfully but I have been asked how I could use that design to get some new profiles. I cannot use the evaliation board because it is so big and I cannot intruduce it on the cage we have developed.

What I could do, depending on the time required is to develop a new application to communciate my board (or a similar one) with the curreng GUI so I could get new profiles by using my current setup. Would it be possible to get the communication protocol and the kind of messages transmitted to&from the computer and boostxl board?

Best regards

BQ27421-G1: Reading Battery Voltage and Current from BQ27421 and send it to msp432

$
0
0

Part Number:BQ27421-G1

Hi Team,

On the product that we have designed there is BQ27421 used to monitor the battery voltage and current level.

I have gone through the technical reference manual for BQ27421 and it mentions that the data read and write between msp432 and bq27421 can be commenced over I2C.

However, I am not able to understand about the configuration part of bq27421 as mentioned in the manual.

Is there any sample example that I can refer to on how the bq27421 is configured and how is the voltage and current value read from it by msp432 controller?

Thank you

Vikram

RTOS/CC1350: BLE simple_peripheral help

$
0
0

Part Number:CC1350

Tool/software:TI-RTOS

I'm having a rough time sorting through the simple peripheral example (which is anything but simple). I've dug through this document, but it was of little help in understanding the practical code implementation

I also found the readme (I'm using a 1350, but I had to look in the 2640R2):

And some useful and non-obvious info like running the stack project first here:

I am able to run the app project now and see it on a generic BLE scanner app on my phone. I can change some of the text in simple_peripheral.c like scanRspData and attDeviceName. And the characteristic names in simple_gatt_profile.c.

Now I'm having trouble figuring out where the characteristics are actually handled.

I am also not able to see any output on the serial port. The layout of this project is wildly different and more complicated than the other examples, so I'm not quite sure where its even setting up the display output.

Any clues or suggestions would be greatly appreciated.

CCS/MSP430FR6989: CCS MSP430 FR6989

$
0
0

Part Number:MSP430FR6989

Tool/software: Code Composer Studio

Hello, I am a new owner and user of the Launchpad board entered above.  I downloaded and installed CCS version 8 successfully. Many of your

own .asm assembler examples will not assemble and link properly. I keep getting linker error "10099-D  program will not fit into available memory".

"Placement with alignment fails for section ".reset" "   " Error 10234-D unresolved symbols remain". At first some of your examples would work. I saved

one that works and found no difference between it and the others that do not work. First I thought some slight difference of the .asm format may be

the cause but the files are identical. Something else in the project folder has changed. These examples are very small, simple files. Any ideas ?? K Wallace


CCS/TMDSLCDK6748: Having trouble getting started

$
0
0

Part Number:TMDSLCDK6748

Tool/software: Code Composer Studio

What am I doing wrong?

I have an TMDSLCDK6748 and a Olimex TMS320-XDS100-V3

I've got a 14 pin ribbon cable between the TI_JTAG_14 port on the XDS100 and the J6 JTAG port on the TMDSLCDK6748.

I have opened the ARM_JTAG_E jumper on the XDS100.

I'm using Code Composer Studio 5.1.1.00031

In my NewTargetConfiguration.ccxml window I've selected  "Texas Instruments XDS100v3 USB Emulator" and "tms320c6748".

When I "Test Connection", I get:

[Start]

Execute the command:

%ccs_base%/common/uscif/dbgjtag -f %boarddatafile% -rv -o -F inform,logfile=yes -S pathlength -S integrity

[Result]


-----[Print the reset-command software log-file]-----------------------------

This utility has selected a 100- or 510-class product.
This utility will load the adapter 'jioserdesusbv3.dll'.
The library build date was 'Dec 19 2011'.
The library build time was '21:32:12'.
The library package version is '5.0.569.0'.
The library component version is '35.34.39.0'.
The controller does not use a programmable FPGA.
The controller has a version number of '4' (0x00000004).
The controller has an insertion length of '0' (0x00000000).
This utility will now attempt to reset the controller.
This utility has successfully reset the controller.

-----[Print the reset-command hardware log-file]-----------------------------

The scan-path will be reset by toggling the JTAG TRST signal.
The controller is the FTDI FT2232 with USB interface.
The link from controller to target is direct (without cable).
The software is configured for FTDI FT2232 features.
The controller cannot monitor the value on the EMU[0] pin.
The controller cannot monitor the value on the EMU[1] pin.
The controller cannot control the timing on output pins.
The controller cannot control the timing on input pins.
The scan-path link-delay has been set to exactly '0' (0x0000).

An error occurred while hard opening the controller.

-----[An error has occurred and this utility has aborted]--------------------

This error is generated by TI's USCIF driver or utilities.

The value is '-233' (0xffffff17).
The title is 'SC_ERR_PATH_BROKEN'.

The explanation is:
The JTAG IR and DR scan-paths cannot circulate bits, they may be broken.
An attempt to scan the JTAG scan-path has failed.
The target's JTAG scan-path appears to be broken
with a stuck-at-ones or stuck-at-zero fault.

[End]

I have verified with o'scope that TRST goes low.

I have verified pinouts on both devices and cabling looks right.

Here's some XML I don't quite understand:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<configurations XML_version="1.2" id="configurations_0">

<configuration XML_version="1.2" id="Texas Instruments XDS100v3 USB Emulator_0">
<instance XML_version="1.2" desc="Texas Instruments XDS100v3 USB Emulator_0" href="connections/TIXDS100v3_Dot7_Connection.xml" id="Texas Instruments XDS100v3 USB Emulator_0" xml="TIXDS100v3_Dot7_Connection.xml" xmlpath="connections"/>
<connection XML_version="1.2" id="Texas Instruments XDS100v3 USB Emulator_0">
<instance XML_version="1.2" href="drivers/tixds100v2icepick_c.xml" id="drivers" xml="tixds100v2icepick_c.xml" xmlpath="drivers"/>
<instance XML_version="1.2" href="drivers/tixds100v2c674x.xml" id="drivers" xml="tixds100v2c674x.xml" xmlpath="drivers"/>
<platform XML_version="1.2" id="platform_0">
<instance XML_version="1.2" desc="TMS320C6748_0" href="devices/c6748.xml" id="TMS320C6748_0" xml="c6748.xml" xmlpath="devices"/>
</platform>
</connection>
</configuration>
</configurations>

OPT3002: OPT3002

$
0
0

Part Number:OPT3002

OPT3002  - this is the part for visual wavelength. Do you have plans for IR one ~1550nm?

Thanks,

Jacek

BQ51050B: CLAMP capacitors

$
0
0

Part Number:BQ51050B

Hi,

The data sheet states that the CLAMP capacitors are used to aid the clamping process to protect against overvoltage. Choosing a 0.47-µF capacitor with a 25V rating is appropriate for most applications. What applications would this not be appropriate for? Using a bq51050BEVM-764 with 25V CLAMP capacitor I used a transmitter coil to transmit 10W at various frequencies and noticed that the bq51050B got extremely hot and eventually stopped working. However, I replaced the 25V capacitors with 50V and did not see the problem. I would like to understand this, but there is not much information about how this CLAMP circuit works. 

Thanks,

Thomas Fanous

LAUNCHXL-CC2640R2: How to make Simple_Peripheral on the Launchpad CC2640R2 to continue advertising even after it is connected

$
0
0

Part Number:LAUNCHXL-CC2640R2

I tried adding the compiler define, and turn on advertising in the connect event of the application.  It hangs.  Is there a better suggestion.

case GAPROLE_CONNECTED:
{
// Get the active connection handle
/*-------------------------------------------------------------------------------
* Make advertisements non-connectable turn advertising back on.
*--------------------------------------------------------------------------------*/
uint8_t advType = GAP_ADTYPE_ADV_NONCONN_IND; // use non-connectable adv
GAPRole_SetParameter(GAPROLE_ADV_EVENT_TYPE, sizeof(uint8_t), &advType);

uint8_t nonconn_enable = TRUE;
GAPRole_SetParameter(GAPROLE_ADVERT_ENABLED, sizeof(uint8_t), &nonconn_enable);

uint16_t connHandle = 0;
Display_print0(dispHandle, 2, 0, "Connected");
GAPRole_GetParameter(GAPROLE_CONNHANDLE, &connHandle);

}

LP5907: Turn on transient seems excessive

$
0
0

Part Number:LP5907

We are attempting to use an LP5907 to supply 1.8 Volts to the chips that need it from an onboard 3.3v supply whose output rises at a controlled rate of about 1V/ms, See scope shot #1. When the 3.3 input gets to about 1 V the output of the 5907 rises suddenly to about 1 v (event 1) and then stays there about 200 us until the 3.3 reaches about 2.4 or so volts.At that point the output of the 5907 starts to follow the 3.3v up to its final value of 1.8 V. I had kind of expected the 5907 output to follow the linearly rising 3.3V at event 1. I attempted to smooth out the 1.8V output by trying to use the EN pin as a kind of soft start by putting a resistor from it to the 3.3V input  with a capacitor to ground, starting with 10K and .1uF, the idea being to delay the enable pin until the 3.3 had reached its ultimate value. See scope shot #2. This did not work as planned although it did affect the output. See scope shot #3. After looking more closely at the data sheet I noticed a POR circuit whose operation is not fully explained. I wonder if this POR is the source of the roughly 1 ms delay from the start of the input voltage rise to event 1. Is there a minimum rise time for the input that I have missed? My input and output capacitors are both 0.1uF XZR. I also noticed in figures 15 and 16 of the data sheet that there are glitches similar to my event 1 but they happen much quicker (20 us) which may be due to Vin being applied with a faster rise time than ours. Should I speed up our rise time?

MSP430FR5989: Battery attach for MSP430FR5989 and latch up

$
0
0

Part Number:MSP430FR5989

Hello,

We had a question about when we attach the battery on a device with the MSP430FR5989.  Do we have to hold it in reset when attaching the battery to prevent latchup?  On our past products with the MSP430F149, we had issues with latchup during battery attach and once we started holding it in reset during battery attach, the issues went away (note, we had other process changes during that time as well that may have contributed as well).  It would be easier if we could get rid of the process where we have to hold the MSP in reset during battery attach but don’t want to do this if it can cause potential latchup issues. 

Is latchup during battery attach a concern with the 5989 processor?  Do we need to hold the 5989 in reset during battery attach?  Do you know if any of your customers hold the MSP in reset during battery attach?

Regards,

David

AFE4403EVM: How to process the result of the SPO2 sensor and the meaning of GUI output, such as LED1, LED1 ambient, LED2/LED3, LED2/LED3 ambient

$
0
0

Part Number:AFE4403EVM

Hi, I bought a AFE4403EVM, and I am able to follow the manual to install the GUI, driver and also obtain some preliminary results. I have some questions regarding the results, please help me, thanks.

When I look at the result from the GUI, it has the LED1, LED1 ambient, LED2/LED3, LED2/LED3 ambient

1. May I ask how do I obtain the SPO2 from these graphs? 

I looked at some documents, R=ACrms of Red/DCred / (ACrms of IR/DCIR), and SPO2=110-(25*R)

2.Also, I am not sure what do the LED1, LED1 ambient, LED2/LED3, LED2/LED3 ambient stands for? Is the LED1 the red LED, LED2 infrared? LED3 Green LED? Does the LED2/LED3 is the voltage of LED2/LED3?

3. I suppose all the results of voltage are from the photodiode output?

4. Why does this Evaluation board has a green LED? According to the manual, the third green LED isenabled with TX3 mode in the TX Stage tab during the measurement.

Thanks in advance!


TPS562201: vs TPS563201 - differences & compatibility

$
0
0

Part Number:TPS562201

Hi team,

I have a TPS562201 circuit that I designed for my application. I am looking at using TPS563201 instead for now. Can I simply swap in TPS563201 in place of the TPS562201 in the same circuit without changing any of the surrounding components? Do you see any potential problems with this approach?

Thanks,

Brian Angiel

DS80PCI810: Max dB of input and output

$
0
0

Part Number:DS80PCI810

Hi Team,

Actually, because the CPU update, now I am survey PCIE Gen4 redriver-DS160PR series.

I know retimer input and output are both 28dB. What is redriver input and output? input is 15dB or 28dB?

Thanks

Linux/AM3352: MII connected to Marvell switch - U-Boot modifications

$
0
0

Part Number:AM3352

Tool/software: Linux

Hi,

We have a new board based on the AM335X beagle bone black.

I am using the Beagle U-Boot and Kernel and it looks that everything is working except Networking.

The difference is that in our board the AM3352 is connected via MII to a Marvell 5 ports switch.

What modifications should I do in the U-Boot (or also in the Kernel) in order to support that architecture?

Thanks

Avner

WEBENCH® Tools/FDC2214: Capacitive Sensing Designer applet does not boot

$
0
0

Part Number:FDC2214

Tool/software: WEBENCH® Design Tools

Dear,

please check if the applet for Capacitive Sensing design is working or not.

I couldn't use it yesterday night and I tried with both Chrome and Firefox.

The icon of the web application was broken as in the following image:

Have a nice night! :)

RTOS/66AK2G12: EDMA3 Init Instance Config Local to Project

$
0
0

Part Number:66AK2G12

Tool/software:TI-RTOS

Hello,

I am writing an RTOS project based upon on the of the example projects and have a question regarding the EDMA3 LLD.  

In Processor SDK 4.0 for the OMAP-L138, the McASP example projects included a file called "sample_omapl138_cfg.c".  This is located inside the project and is easily modified to suit the desired application.  In PSDK 4.2 for the 66AK2G12, this file is located inside one of the edma3 lld samples and is remotely linked into the project.  It seems that the EDMA driver must be rebuilt for changes to this file to take effect.  I am unable to see where this file is included in the example project and am having difficulty seeing what I need to change to put this configuration inside my project.

I am wondering how I might go about creating my own version of the file "sample_tci661k2g02_cfg.c" and splice it into the existing example project.

Thank you,

Jeff

Viewing all 262198 articles
Browse latest View live


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