Quantcast
Channel: MSP low-power microcontroller forum - Recent Threads
Viewing all 22174 articles
Browse latest View live

MSP430FR5969: MSP430FR5969 minimum and maximum Active Mode Supply Current

$
0
0

Part Number:MSP430FR5969

Hello,

Can TI indicate the Active Mode Supply Current Minimum and Maximum current values?

In table 5.4 of the datasheet only Typ and some Max values are indicated.

I find a ratio 1.5 between lowest and highest currents when I test many of our PCBAs with exactly the same software. I check the execution time and it is always the same on all PCBAs.

So I would like to know if the 1.5 ratio is normal?

Best regards.

Mich


MSP430FR2311: ADC Sequence of channel Interface

$
0
0

Part Number:MSP430FR2311

I have interface 3 analog input from P1.2 to P1.0 and the ADC I have a configured in Sequence of channel mode.

Actually the problem is that my the ADC interrupt is happen 4 times instead of 3 times.

I have a set counter = 3.

 

#include <msp430fr2311.h>
int adc = 0;
float X_Axis, Y_Axis, Z_Axis;
int ADC_Result[3];
//unsigned int ADC_Result;
//void Read_X_Axis_Data();
//void Read_Y_Axis_Data();
//void Read_Z_Axis_Data();

int I = 3;
int main(void)
{
WDTCTL = WDTPW | WDTHOLD; // Stop WDT

// Configure GPIO
// P1DIR |= BIT1; // Set P1.0/LED to output direction

// Configure ADC A5-A4-A3 pin
P1SEL0 |= BIT0 | BIT1 | BIT2; //BIT5 = X AXIS, BIT4 = Y AXIS, BIT3 = Z AXIS
P1SEL1 |= BIT0 | BIT1 | BIT2;

// Disable the GPIO power-on default high-impedance mode to activate
// previously configured port settings
PM5CTL0 &= ~LOCKLPM5;

// Configure ADC10
ADCCTL0 |= ADCSHT_5 | ADCON ; // ADCON, S&H=16 ADC clks
ADCCTL1 |= ADCSHP | ADCCONSEQ_1;
ADCCTL2 |= ADCRES_1; // 10-bit conversion results
ADCIE |= ADCIE0; // Enable ADC conv complete interrupt
ADCMCTL0 |= ADCINCH_2 | ADCSREF_0; // A1 ADC input select; Vref=1.5V

// Configure reference
// PMMCTL0_H = PMMPW_H; // Unlock the PMM registers
//PMMCTL2 |= INTREFEN; // Enable internal reference
__delay_cycles(40); // Delay for reference settling
// LPM0, ADC_ISR will force exit

while(1)
{
__delay_cycles(1000);
//while(ADCCTL1 & ADCBUSY); // Wait if ADC core is active
ADCCTL0 |= ADCENC | ADCSC;
__bis_SR_register(GIE);

if(I == 0)
{

//Z_Axis = (0.003222 * ADC_Result[2]);
// Y_Axis = (0.003222 * ADC_Result[1]);
// X_Axis = (0.003222 * ADC_Result[0]);

// Y_Axis = ((float) (0.003222 * ADC_Result[1]));
//Z_Axis = ((float) (0.003222 * ADC_Result[2]));
adc = 0;
I = 3;

}
}
}

// ADC interrupt service routine
#if defined(__TI_COMPILER_VERSION__) || defined(__IAR_SYSTEMS_ICC__)
#pragma vector=ADC_VECTOR
__interrupt void ADC_ISR(void)
#elif defined(__GNUC__)
void __attribute__ ((interrupt(ADC_VECTOR))) ADC_ISR (void)
#else
#error Compiler not supported!
#endif
{
switch(__even_in_range(ADCIV,ADCIV_ADCIFG))
{
case ADCIV_NONE:
break;
case ADCIV_ADCOVIFG:
break;
case ADCIV_ADCTOVIFG:
break;
case ADCIV_ADCHIIFG:
break;
case ADCIV_ADCLOIFG:
break;
case ADCIV_ADCINIFG:
break;
case ADCIV_ADCIFG:
I--;
ADC_Result[I] = ADCMEM0;
//ADC_Result = ADCMEM0;
adc++;
//if(I == 0)
//{
// I = 3;
//}
break;
default:break;
}
}

MSP430F123: Signal buffer (driver) for JTAG lines

$
0
0

Part Number:MSP430F123

I am developing a PCB that provides isolation between the target MSP JTAG lines and the programmer ((lets say a MSP-FETU430IF).  I am not sure how long the cable will be from the isolation box to the MSP being programmed so I'd like to include a signal driver to the design for signal integrity.   What would you recommend for a driver?  The BlowFuse voltage is high so the driver will need to accommodate this voltage.

Thanks for reading!

Andrew Barnes

MSP430F5438A: P5.3/X2OUT GPIO input characteristic

$
0
0

Part Number:MSP430F5438A

Hi,

My customer(500k/yr) asks the characteristic of the one open pin.

They left P5.3/XT2OUT pin open, and set the pin gpio input. they didn't set any other registers.

and when they read the BIT3 of P5IN register it always shows 1 until now.

1. Will P5IN.3 be always high with their hardware and software setting?

2. Could TI share internal block diagram / schematic with my customer? more detailed version than datasheet.

Best Regards,

Ted

msp430F5418A: Clock and timer init

$
0
0

Part Number:msp430F5418A

Hi all,

I've been writing some MSP430 code to write some code to init clock and timers. I am using MSP430F5418A.

Here's my code snippet for clock. Here, I've set FLLD bits so that DCOCLKDIV = DCOCLK/2. By default, SMCLK = DCOCLKDIV since I don't change it at all.

void clock_init()
{
WDTCTL = WDTPW+WDTHOLD; // Stop WDT
SetVcoreUp (PMMCOREV_3); // Set VCore = 1.9V for 25MHz clock
P1DIR |= BIT0; // P1.0 output
P11DIR |= 0x07; // ACLK, MCLK, SMCLK set out to pins
P11SEL |= 0x07; // P11.0,1,2 for debugging purposes.

UCSCTL3 |= SELREF_2; // Set DCO FLL reference = REFO
UCSCTL4 |= SELA_2; // Set ACLK = REFO

__bis_SR_register(SCG0); // Disable the FLL control loop
UCSCTL0 = 0x0000; // Set lowest possible DCOx, MODx
UCSCTL1 = DCORSEL_6; // Select DCO range 24MHz operation

//*****FLLD_1 for dcoclockdiv = dcoclock/2*****//

UCSCTL2 = FLLD_1 + 731; // Set DCO Multiplier for 24MHz
// (N + 1) * FLLRef = Fdco
// (731 + 1) * 32768 = 24MHz
// Set FLL Div = fDCOCLK/2
__bic_SR_register(SCG0); // Enable the FLL control loop

// Worst-case settling time for the DCO when the DCO range bits have been
// changed is n x 32 x 32 x f_MCLK / f_FLL_reference. See UCS chapter in 5xx
// UG for optimization.
// 32 x 32 x 25 MHz / 32,768 Hz = 819200 = MCLK cycles for DCO to settle. We add some more time
__delay_cycles(500000);
__delay_cycles(500000);

// Loop until XT1,XT2 & DCO fault flag is cleared
do
{
UCSCTL7 &= ~(XT2OFFG + XT1LFOFFG + XT1HFOFFG + DCOFFG);
// Clear XT2,XT1,DCO fault flags
SFRIFG1 &= ~OFIFG; // Clear fault flags
}while (SFRIFG1&OFIFG); // Test oscillator fault flag
}

Now, in timer init, I've set up like this. The clock to timer module is given by SMCLK by setting TASSEL bits. So timer clock should be DCOCLKDIV = DCOCLK/2, right? 

void timer_init()
{
//---------------------- TIMER A1 ---------------------------------//
TA1CCTL0 = CCIE; // CCR0 interrupt enabled //this sets global timer interrupt
TA1CCR0 = 766; // PWM Period(~32us) //31khz interval
TA1CCTL1 = OUTMOD_7; //reset/set
TA1CCTL2 = OUTMOD_7; //reset/set
TA1CCR1 = 0; //TA1.1
TA1CCR2 = 0; //TA1.2
TA1CTL = TASSEL_2 + MC_1 + TACLR; // SMCLK, upmode, clear TAR

}

However, it looks as if I am getting timer clk = DCOCLK = 2 * DCOCLKDIV since my timer interrupt gets fired accordingly. What am I missing?

Thanks in advance.

MSP432P401R: Is it possible to read the bandgap voltage reference using the ADC14 module?

$
0
0

Part Number:MSP432P401R

Hi folks,

Forgive me if this has been asked and answered, but I could not find a previous post that covered this topic.

We are using the TI DriverLib, and the ADC14 in sequenced mode to read a set of various voltages, using an MSP432P401R microcontroller.

I would like to know if it is possible to read the internal bandgap reference using the ADC14 module.  I assume this would involve connecting the bandgap to one or more output pins, then connecting it back to an unused input on the ADC14, but I could be mistaken.

If anyone could provide an example of how this might be done using DriverLib, I would be especially grateful.  We would like to use this simply to gain confidence that our ADC readings are steady as a rock - the bandgap should be solid and stable.

Thanks in advance for any help, and best regards,

Scott

MSP430FR5994: MSP430FR5994

$
0
0

Part Number:MSP430FR5994

Dear Sirs:

    I obtained a launchpad for fr5994.  Was able to compile and download the outof box demo.  Both uarts show up working in dev manager at 9600 baud.  

    I found the outofbox Gui and ran its executable.  It acts like it is working but there is no temperature displayed.  The temperature scales go from -5 to +5.  I copied the dll to \windows\system32.  I'm running windows 7.

Thanks,

John

MSP430G2121: looking for a xml library to parse xml text

$
0
0

Part Number:MSP430G2121

Hi All

Need some help here, am analog FAE, so pardon if this is a simple question. My customer has a system where the MSP is interacting with the cc3100 and is looking for a xml library to parse the xml text. I cut and pasted his request below:

Is there a proven xml library to parse xml text. I am using MSP430 in conjunction with CC3100. The cloud service provider is send an XML response. If possible I would like to parse the data using xml library call.

Thanks

Jeff Coletti


MSP432P401R: I'm using a timer to trigger the DMA transfer, but I want to turn off the timer immediately after the transmission is complete, what should I do, thank you

$
0
0

Part Number:MSP432P401R

I'm using a timer to trigger the DMA transfer, but I want to turn off the timer immediately after the transmission is complete, what should I do, thank you

CCS/MSP430F5528: LPM3 Benchmark Code

$
0
0

Part Number:MSP430F5528

Tool/software: Code Composer Studio

Hello,

I'm tweaking the current of a MSP430f5528 device.

It would be cool to have a benchmark code - simply switching all off, and go to LPM3. Watchdog Timer should be operational as  periodic Timerinterrupt source. 

Is the following code sufficient to run such a benchmark - or are there any other things I should take into account for minimizing the current according to the datasheet for achieving the specified 1.9 uA at 1.9V?

At the moment I'm far far away from this current unfortunatelly.

Thank You very much for Your assistance!

With best regards

Mathias

void main(){
WDTCTL = WDTPW | WDTHOLD; /* UCSCTL6|=XT2OFF; UCSCTL6|=XT1OFF; UCSCTL6|=SMCLKOFF; // This settings didn't turn out to have any effect to the low power performance in this benchmark. */ PADIR=0xffff; PAOUT=0x0000; // Ports 1 and 2 PBDIR=0xffff; PBOUT=0x0000; // Ports 3 and 4 PCDIR=0xffff; PCOUT=0x0000; // Ports 5 and 6 PJDIR=0xffff; PJOUT=0x0000; // Jtag Port _low_power_mode_3(); }

msp432p401r: eUSCI I2C when taken out of reset is UCBBUSY

$
0
0

Part Number:msp432p401r

I'm using a current factory part in a custom design (not the experimenter board).

When I configure the B3 eUSCI to be a I2C device when I take it out of reset it immediately says that the bus is BUSY

this doesn't seem right.

CCS/MSP-EXP432P401R: I2C Sample Code of Driver API is not working

$
0
0

Part Number:MSP-EXP432P401R

Tool/software: Code Composer Studio

Hi,

I am working with the MSP-EXP432P401R developement board and want to test the I2C part using Driver API. I have 2 boards so one i'm configuring as a master and other as a slave. I tried using the available examples of Driver API for I2C and these examples are i2c_master_w_multibyte-master_code in one device and i2c_master_w_multibyte-slave_code in another device. both device SDA and SCL pins are connected with each other using external pull up resistor.

Problem in above experiment is that Master device sending the data and code is going to I2C ISR but Slave device is not receiving anything and keep waiting to receive some data. 

is there any correction in example code which we need to do? or i tried searching all over but couldn't get the solution.

NOTE: i tested without the Driver library, that means i tried with the register level example code for master and slave. that has worked fine for both slave and Master.

MSP430FR2532: CapTIvate vs. AD7142

$
0
0

Part Number:MSP430FR2532

Dear Experts,


I'm working with a capacitive touch design which needs to be 20V/m tolerant from EMC point of view. We can assume that there is a separate host MCU in design in addition to capacitive touch controller. Power consumption is not critical factor. Based on that information, how would you compare CapTIvate to ADI's AD7142?


Thanks!

Rgds,

Juha

MSP430F5229: Trouble using spark fun gps module

$
0
0

Part Number:MSP430F5229

Hello, I am using a sparkfun gps module (link below) and having trouble making the proper connection to the RX and TX on the msp430 (I believe). In order to ensure a proper connection the library and example code used will display serial data (time, date, lat, long etc) in which there will be all zeros expect for the time which will begin to increment. I am currently using pins 3 and 4, RX(1) and TX(1) respectively. However, this connection is not working. I tried the RXD and TXD pins which I was successful in reading NMEA data on the serial monitor but it is raw NMEA data sentences which tells me the library is not being used. Any insight as to what could be wrong would be greatly appreciated. Note: library and example code work fine on arduino boards.

GPS: www.sparkfun.com/.../10920

Library and Example code(TinyGPS++): learn.sparkfun.com/.../example-sketch-tinygps-serial-streaming

MSP430F5229: Serial communication problem

$
0
0

Part Number:MSP430F5229

I am using the msp430f5229 and having trouble using the SoftwareSerial library. How does one go about defining a pin as software serial in energia for this board. I am trying to connect a camera and gps module to the board. The camera is currently using pins P3_4 and P3_3 for RX and TX (UART Serial) so these two pins cannot be used by the gps. I am using a sparkfun venus gps logger and energia IDE. Any help would be appreciated. Thank you.


CCS/MSP430FR5994: MSP430 stops for continuous refreshing

$
0
0

Part Number:MSP430FR5994

Tool/software: Code Composer Studio

Hello, 

I'm sending commands to a bq78350 with a MSP430FR5994 launchpad through I2C. Unfortunately, when I use the continuous refresh mode to watch expressions, my CPU freezes for a few cycles.

Here is the output of a pin toggling (500ms with a dedicated timer) without continuous refresh:


And this is the output with continuous refresh:

Is there any way to overcome this issue or MSP430's can not watch expressions in real time?

Thanks,

MSP430F5329: flash program Vai I2c Communication

$
0
0

Part Number:MSP430F5329

Hi All,

Trying to flash program on BSL through I2C communication, using Msp430F5329 controller, i go through BSL data sheet SLAU319M according to this data sheet able to flash program on BSL using I2C communication, but MSP430F5329 data sheet they didn't mention which pins i want to use.but clearly mention  P1.1 for Data TX and P1.2 for Data RX for UART method,

 now my doubt is which I2C pins want to use.

P4.2/PM_UCB1SOMI/PM_UCB1SCL
P4.1/PM_UCB1SIMO/PM_UCB1SDA

 or

P3.0/UCB0SIMO/UCB0SDA
P3.1/UCB0SOMI/UCB0SCL

MSP430F5438A: Suspicious I2C Stop contion

$
0
0

Part Number:MSP430F5438A

Hi,

This question is for the 300ku/yr customer.

They are using I2C in their system and main DSP is master and MSP430 is slave.

while they are using I2C, there is time that SCL keeps low for a long time.

When this happens, it seems like MSP430 recognize it as a STOP condition. Here is the waveform. Blue is SCL, Purple is SDA and Yellow is GPIO by Stop condition interrpt.

As I know, if SCL is low, It is not a stop condition. However, Stop condition interrupt triggered before the real stop condition and this makes severe error in their system. when they used Renesas MCU, they didn't experienced this error.

Here are my questions.

1. recognized as stop condition when SCL is held low for a long time - is this normal operation?

2. How can I block the stop condition interrupt while SCL is held low for a long time?

Best Regards,

Ted

CCS/MSP-EXP430F5438: CCS/MSP-EXP430F5438:

$
0
0

Part Number:MSP-EXP430F5438

Tool/software: Code Composer Studio

Hi All,

I have been using RealwavfileXCPU.xls file to convert .wav Audio files to MSP430 compatibale hex files to Play Audio with MSP430F4358A.

However, I see some additional buzz noise or TIC noise at starting and ending of file. When I removed first 2 rows of hex file data and last 5 to 6 rows, I get better Audio with less noise.

Is there any convertion Software or tool to convert Audio file to PCM 8 bit, 8ksps, mono data,which is MSP430 compatible HEX file.

Are there any options availble in Code Composer Studio tool to convert them.

Please suggest your experience to convert Audio files to required Format of MSP430.

Regards,

Raju

MSP-EXP430FR5739: IAR EW error "Could not find MSP-FET430UIF on specified COM port : (Initialize) , port=USB, version=0xffffffff"

$
0
0

Part Number:MSP-EXP430FR5739

I have been trying to load code on to my MSP-EXP430FR5739 board for a few days now. This issue began after I had been coding for a few hours with no issues and suddenly started one time when I went to debug. (in case it helps, at the time I was using IAR EW ver 6.40.1)

I have tried using 3 different computers (all with the same ver 7.10.3 IAR EW), 3 different MSP-EXP430FR5739 boards, and 3 different usb cables,uninstalling/reinstalling IAR and usb drivers and all have given the same errors. The first and most common error is "Could not find MSP-FET430UIF on specified COM port : (Initialize) , port=USB, version=0xffffffff" but it is not the only error I get. I also get "Interface Communication error : (Initialize) , port=HID0016:COM4, version=0xffffffff", "Trying to initialize target failed", and various others indicating some sort of communication error.

If I go into Project>Options> FET Debugger in the connections section of the window, I can see my board and its COM port. In Device Manager, in the HID section it is labeled as "USB Input Device", in the Ports Section it is "MSP430 Application UART (COM4)", and in the USB Section it is "USB Composite Device."

I have been able to load code on to all 3 boards using Energia and CCS, but I have a .r43 file (IAR specific) that I need, hence why I need to get IAR to work.

Also, and this may be unrelated, after looking around on the internet I think that MSP-FET430UIF is a separate tool that is used for debugging. I'm not sure if the error regarding this is just some sort of default wording but I have never used/owned this tool.

Viewing all 22174 articles
Browse latest View live


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