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

msp430f5529: Where to find information and post questions about the TI Resource Explorer

$
0
0

Part Number:msp430f5529

Hi,

I was handed an MSP430F5529LP and stared trying to implement an ISR to fetch measurements from a TDC7200EVM.

I'm lost but get the impression that it's encouraged to RTFM, so I'm trying.

I was having trouble figuring out how to do a word search on the PDFs rendered in the Resource Explorer. Should be simple right? So either I'm an idiot for not seeing the obvious, or there's a pretty big hole in the user interface (my money is on "idiot").

This led to another question, where to post questions about the TI Resource Explorer?

I'm just an aging programmer trying to exercise due diligence - any help is appreciated.


MSP430F6736: MSP430F6736IPN (PN80 package): MSP-TS430* socket EVM ?

CCS/MSP430FR5969: Missing SYSRSTIV header file value definition

$
0
0

Part Number:MSP430FR5969

Tool/software: Code Composer Studio

Hi,

Not sure if this should be in the CCS, compiler or MSP430 forum...

The ACCTEIGF (30h) IV definition is missing from SYSRSTIV, i.e. SYSRSTIV_ACCTEIGF is not defined.in the device header file for the MSP430FR5969 - it may well be missing from those other devices in the same family that also use this IV value.

See "MSP430FR59xx Mixed-Signal Microcontrollers" (SLAS704F –OCTOBER 2012–REVISED MARCH 2017), page 65 for more detail.

MSP-EXP430G2: J4, SL127L6TH

$
0
0

Part Number:MSP-EXP430G2

Could anyone suggest a source for purchase of J4 (SL127L6TH), perferably in UK, please?

MSP430FR5739: FRAM reliability

$
0
0
I also have serious doubts about FRAM reliability. I have had two of our products using FR5739 with memory loss. A code dump done via MSP bootloader followed by a byte-wise compare revealed two subsequent bytes erased. Somewhere halfway the code segment which starts at 0xC200 two bytes changed from F9 23 to 00 00.

The code segment is not something that is changed by the code itself, so why have these two bytes been erased?

MSP430FR5972: FRAM for log storage

$
0
0

Part Number:MSP430FR5972

Hi ,

I m using MSP430FR5972, which have 64K FRAM size, now I want to store RTC time (which is 4 byte length) so can any one tell me what is the starting location of FRAM in this MCU.

SLAU367M Errata - DMA

$
0
0

11.2.3 Initiating DMA Transfers Each DMA channel is independently configured for its trigger source with the DMAxTSEL. The DMAxTSEL bits should be modified only when the DMACTLx DMAEN bit is 0. Otherwise, unpredictable DMA triggers may occur. Table 11-2 describes the trigger operation for each type of module. See the device-specific data sheet for the list of triggers available, along with their respective DMAxTSEL values. When selecting the trigger, the trigger must not have already occurred, or the transfer does not take place.

should read as follows:

11.2.3 Initiating DMA Transfers Each DMA channel is independently configured for its trigger source with the DMAxTSEL. The DMAxTSEL bits should be modified only when the DMAxCTL DMAEN bit is 0. Otherwise, unpredictable DMA triggers may occur. Table 11-2 describes the trigger operation for each type of module. See the device-specific data sheet for the list of triggers available, along with their respective DMAxTSEL values. When selecting the trigger, the trigger must not have already occurred, or the transfer does not take place.

Further:

the device specific datasheet - msp430fr5994.pdf - omits the footnote on page 135 stating:  "When writing to DMAxSA with word instructions, bits 19-16 are cleared."  inserted at each DMAxxAH line.

If bits 19-16 are not cleared, the footnote is still required for clarification.

MSP430FR5994: How to start DMA with UCAxTX or UCAxRX

$
0
0

Part Number:MSP430FR5994

It seems that starting the DMA might be tricky due to the following statement in the documentation:

"When selecting the trigger, the trigger must not have already occurred, or the transfer does not take place."

Please confirm that the most reliable way will be to set up the DMA and then to use DMAREQ.

c-:


MSP432P401R: MSP flasher exit 60: verification error

$
0
0

Part Number:MSP432P401R

Hi,

I am using "MSP432P401R" in my project and MSP-FET debugging Downloaded MSP-flasher 1_03_11_00 version for SW flashing through MSP-FET ADPTR Rev1.0. After firmware update is successful it throws Exit 60: verification error. I am using the below commands and switches

CLS

REM -n switch is mandatory for MSP432!

MSP430Flasher.exe -n "MSP432P401R" -b -w "MSP_Bootloader.txt" -v -g -z [VCC]

pause MSP430Flasher.exe -n "MSP432P401R" -r [FirmwareOutput432.txt,BSL]

Pause

CC430F6137: Data verification of custom bsl image failed

$
0
0

Part Number:CC430F6137

Hello everyone,

I'm currently with the CC430F6137 micro and I am in the proces of adapting a custom bsl solution for it. Im following the SLAA450D application note.

However, I seem to be unable to flash a compiled version from CCS v6 due to the following error:

MSP430: File Loader: Verification failed: Values at address 0x0000000000001010 do not match Please verify target memory and memory map.
MSP430: GEL: File: boot.out: a data verification error occurred, file load failed.

Since I work with CCS v6 I had to modify some files from the reference source to accomodate for my compiler version. 

Changes to the command file provided by CCS are made based on device specific datasheet and on the linker file found in \CC430F614x_USCI_UART folder of the MSP430BSL source.

MEMORY
{

... standard allocations ommitted...


ZAREA : origin = 0x1000, length = 0x0010
BSL430_VERSION_VENDOR : origin = 0x1010, length = 0x0001
BSL430_VERSION_CI : origin = 0x1011, length = 0x0001
BSL430_VERSION_API : origin = 0x1012, length = 0x0001
BSL430_VERSION_PI : origin = 0x1013, length = 0x0001
ZAREA_CODE : origin = 0x1014, length = 0x07DC
BSLSIG : origin = 0x17F0, length = 0x000C
JTAGLOCK_KEY : origin = 0x17FC, length = 0x0004

}

SECTIONS
{

... standard allocations ommitted

.ZAREA : {} > ZAREA
.BSL430_VERSION_VENDOR : {} > BSL430_VERSION_VENDOR
.BSL430_VERSION_CI : {} > BSL430_VERSION_CI
.BSL430_VERSION_API : {} > BSL430_VERSION_API
.BSL430_VERSION_PI : {} > BSL430_VERSION_PI
.ZAREA_CODE : {} > ZAREA_CODE
.BSLSIG : {} > BSLSIG
.JTAGLOCK_KEY : {} > JTAGLOCK_KEY

}

I hope anyone could provide some more insight on this.

Kind regards

MSP430G2553: Flash memory programming in msp430g2553

$
0
0

Part Number:MSP430G2553

Hello everyone,

I am doing a program to write/modify some data on flash memory but I can't modify the flash memory.After opening the Memory window I can't change the default values


.cdecls C,LIST,"msp430.h" ; Include device header file

;-------------------------------------------------------------------------------
.text ; Assemble into program memory
.global RESET
.retain ; Override ELF conditional linking
; and retain current section
.retainrefs ; Additionally retain any sections
; that have references to current
; section
;-------------------------------------------------------------------------------
RESET mov.w #__STACK_END,SP ; Initialize stackpointer
StopWDT mov.w #WDTPW|WDTHOLD,&WDTCTL ; Stop watchdog timer

main
mov.w #0x100,r9
mov.w #0x200,r10

loop


clrc
mov.w @r9, r11
mov.w @r11,r10
mov.w @r10,r9

inc r9
inc r10
jmp loop
;-------------------------------------------------------------------------------
; Stack Pointer definition
;-------------------------------------------------------------------------------
.global __STACK_END
.sect .stack

;-------------------------------------------------------------------------------
; Interrupt Vectors
;-------------------------------------------------------------------------------
.sect ".reset" ; MSP430 RESET Vector
.short RESET
.end

ash memory.In the memory window I can't edit anything

MSP430G2553: Problem in writing on INFORMATION MEMORY

$
0
0

Part Number:MSP430G2553

Hello

I am trying to save few variables in INFO memory in msp430g2553. I am trying to write some data in memory
location 01000h and 01001h.

But when I write on one of above location the other one gets erased.

I have also tried omiting dummy write in subroutine FLASHWRITE1 in that case both memories are updated
successfully once but second time when i try to update contents of that location, nothing happens.

Please find code attached.


Regards

Dilraj

#include <msp430.h>


ORG 0200H ;
;


;-------------------------------------------------------------------------------
ORG 0F800h ; Program Reset
;-------------------------------------------------------------------------------
RESET              mov.w #0280h,SP                                                 ; Initialize stackpointer
StopWDT           mov.w #WDTPW+WDTHOLD,&WDTCTL                ; Stop WDT

moV                 #01000h,r8
mov.b               #010h,r7
call                   #FLASHWRITE1

mov                 #01001h,r8
mov.b              #011h,r7
call                 #FLASHWRITE1

mov                #01000h,r8
mov.b             #012h,r7
call                #FLASHWRITE1

mov               #01001h,r8
mov.b             #013h,r7
call                #FLASHWRITE1
JMP $


;=============================================================================

;=============================================================================
FLASHWRITE1
                       MOV         #FWKEY+FSSEL1+FN1,&FCTL2            ; SMCLK/2
                       MOV         #FWKEY,&FCTL3                                   ; Clear LOCK
                       MOV         #FWKEY+ERASE,&FCTL1
                       MOV.B      #0,0(R8)                                                 ;Dummy write
                       MOV         #FWKEY+WRT,&FCTL1                          ; Enable write
                       MOV.B      R7,0(R8)                                                ; write contents of R7 to memory location pointed by R8
                       MOV         #FWKEY,&FCTL1                                   ; Done. Clear WRT 
                       MOV         #FWKEY+LOCK,&FCTL3                       ;  Set LOCK
RET

-------------------------------------------------------

;-------------------------------------------------------------------------------
DELAY
MOV #0FFFH,R10
LV DEC R10 ; Decrement R5
JNZ LV ; Delay over?
RET

;-------------------------------------------------------------------------------
; Interrupt Vectors
;-------------------------------------------------------------------------------
ORG 0FFFEh ; MSP430 RESET Vector
DW RESET ;
END

MSP430FR2633: DA

$
0
0

Part Number:MSP430FR2633

Hello!

I am developing on MSP430FR2633 (custom designed board). I have managed to generate the code for proximity detection using CapTIvate design center. Here lies the problem- I have gone through the generated code but cannot find the pin definition library or any sort of declaration related to the CapTIvate channel (CAP0.1 or any). Can anyone assist me in this matter!

Thanks in advance!

MSP430G2553: BSL synchronization failure

$
0
0

Part Number:MSP430G2553

I have a G2553 installed in a breadboard with a 47K pullup resistor on /RST, and I'm testing BSL with a USB-to_serial adapter that I know from other test works fine.  When I run BSLDEMO2, I appear to get all the right signals, but nothing is transmitted from the G2553, and I get the synchronization failed message.  I have things connected as follows:

Adapter..........G2553

GND...............GND (20)

3.3V................Vcc (1) w 10 ufd

DTR................/RST (16) with 47K pullup

RTS.................Test (17)

TXD.................P1.5 (7)

RXD.................P1.1 (3)

On my scope I see Test starts out low, then goes high for 10ms, back low for 10ms, high for 20ms, then back low.

/RST starts low, then goes high for 50ms, then back low.

I believe these are the patterns described in slau319 if I assume /RST goes back low because it doesn't receive an ack.

There is transmission of data on the adapter's TXD line, but nothing ever happens on P1.1.  It just stays a floating input when it should be output high.

So apparently everything is happening as it's supposed to, but the G2553 just never engages.  I've tried reversing RXD and TXD, with no success.

Any suggestions would be appreciated.

RTOS/MSP432P401R: I2C slave in callback mode help

$
0
0

Part Number:MSP432P401R

Tool/software:TI-RTOS

I am trying to convert the i2cslaveexample1 from the 1.30.00.40 MSP432 SDK to I2CSLAVE_MODE_CALLBACK instead of I2CSLAVE_MODE_BLOCKING.
I have been unsuccessful so far. Testing with the i2cmasterexample1.

I am using MSP432 LaunchPads (rev C).

Thanks.


MSP430FR5949: ADC issue when measuring small value

$
0
0

Part Number:MSP430FR5949

We are having a issue with using port P1.4 to measure low voltage, below 5mV. The input of P1.4 is buffered. When the input is 2mV, we  have to add a 30sec delay after  'ADC12CTL0 |= ADC12ENC | ADC12SC' sentence, otherwise, the measurement result is 0 or 1 count. Does anybody have a clue what's the reason for this? Thanks in advanced. 

    //Turn on Power
    Power_Port_DIR |= Acc_On;
    Power_Port_OUT |= Acc_On;
    // Configure ADC
    ADC_PORT_SEL1 |= RMS_ADC;
    ADC_PORT_SEL0 |= RMS_ADC;
    ADC12CTL0 &= ~ADC12ENC;                    //enable modification
    ADC12CTL0 = ADC12SHT0_2  + ADC12ON + ADC12MSC;        // ADC12ON, S&H=64 ADC clks; 5M/(64+15)=65.8KHz
    ADC12CTL1 = ADC12SSEL_0 + ADC12SHS_0 + ADC12SHP + ADC12DIV_5 + ADC12CONSEQ_2 ;        // ADCCLK = MODOSC = 5MHz
                                                                                        //ADC12SC bit,sample-and-hold source select
                                                                        //SAMPCON signal is sourced from the sampling timer //Divide by 6= 833333
                                                                                       //Repeat-single-channel
    ADC12CTL2 = ADC12RES_2;     // 12-bit conversion results
    ADC12MCTL0 = ADC12INCH_4 +ADC12VRSEL_1;
    while(REFCTL0 & REFGENBUSY);            // If ref generator busy, WAIT
    REFCTL0 |= REFVSEL_1+REFON;             // Select internal ref = 2.0V
    ADC12CTL0 |= ADC12ENC | ADC12SC ;       // Start conversion

    configureTimer_B0(150);     //150*0.2 = 30 sec
    while(!timed_outB0) __bis_SR_register(LPM3_bits + GIE);
    TB0CTL = MC_0  ;         //MC==00 HALTED
    timed_outB0 = 0;

    for (i=0; i<tSample; i++)
        {
            //  movingAVG = 0;
            //  ADCresult = 0;
            // for (j=0; j<256; j++)
            // {
                while (!(ADC12IFGR0 & BIT0));
            //    movingAVG += ADC12MEM0;
            // }
            // ADCresult = movingAVG >> 4;
            // ADCresult = movingAVG/10;
        //        __delay_cycles(1000000);
             *FRAM_write_ptr++ = ADC12MEM0;
        }
    ADC12CTL0 &= ~ADC12SC;

MSP432P401R: RED LED P1.0 remains always on and the microcontroller becomes extremely hot

$
0
0

Part Number:MSP432P401R

Hi,

I am using MSP432P401R Launchpad, I am facing a weird issue wherein the RED LED at P1.0 of the Launchpad remains always on even though it has been not initialized in the program and I also noticed that the Microcontroller is getting extremely hot, but the programs are running fine. Is this a normal issue or there's something unusual.

Regards,

Amit Kotal

MSP430F5659: Code migration

$
0
0

Part Number:MSP430F5659

Hello, I have a development in ATMEL environment that uses a wifi module (ATWINC1500) and I would like to migrate to MSP430F5659. What problems could i have during the migration?

Regards,

Juan Manuel

CCS/MSP430F5529: GPIO Pin Only Responding to 0V Input. Interrupt Cannot Be Configured for 5V

$
0
0

Part Number:MSP430F5529

Tool/software: Code Composer Studio

I'm having a hard time with a pretty basic problem.  I've going through the user guides and examples but I can't figure out how to fix my problem.  I have a GPIO pin on an MSP430F5529 configured as an input, and when the input is low, the outputs change.  I want the outputs to change when the signal goes high.  Here are the configurations:

P2DIR &= ~BIT5;		// reset signal hardware interrupt
	P2OUT |= BIT5;		// internal resistor pull up
	P2REN |= BIT5;		// resistor enable
	P2IES |= BIT5; 		// interrupt edge select, 1 = high to low, 0 = low to high
	//P2IFG &= ~BIT5;
	//P2IE |= BIT5;			// interrupt enable
#define EXT_INPUT P2IN & BIT5

and I have a function that controls the outputs based on this reading here:

if(EXT_INPUT){  //JP7 pin 4 will be used as the trigger input

	   if (event == DETECTED)
		{
			   if(consecpass++ > 2) //if there are three or more passes indicate there is a sample by turning green on and red off
			   {
				   GREEN_LED_ON;
				   RED_LED_OFF;
				   consecfail=0;
			   }
		}

		 if (event==NOT_DETECTED){

			if(consecfail++ > 3 && consecfail < 35)
			{
				RED_LED_OFF;
				GREEN_LED_ON;
				consecpass=0;
			}

			if(consecfail > 35){

				RED_LED_ON;
				GREEN_LED_OFF;
			}
		}

			if (consecpass>30000) //used to prevent roll over and to indicate failure if device is standing still.
			{
				consecpass=3;
			}

			if(consecfail>30000) //used to prevent roll over and to indicate failure if device is standing still.
			{
				consecfail=3;
			}

	   }else{
		   consecpass=0;
		   consecfail=0;
		   RED_LED_ON;
		   GREEN_LED_ON;

	   }

I tried changing EXT_INPUT definition to ~BIT5, which kept the outputs in the if condition regardless of input.  When I have if(EXT_INPUT==0) or ==1, the device stays in the else condition.  What am I doing wrong?

CCS/MSP432P401R: check serial buffer size

$
0
0

Part Number:MSP432P401R

Tool/software: Code Composer Studio

Hello everyone,

I'm looking to read a message from the serial buffer off of EUSCIA0. For this scenario, I don't know the length of the message. I would like either to know the length of the message currently on the buffer or check if the buffer is empty before reading the buffer to save the characters. As of now, I cannot find any examples that point in the right direction and have looked in the user guide for the driver library and the closest thing I could find was UART_queryStatusFlags then possibly the flag of EUSCI_A_UART_BUSY. Any help would be appreciated.

Thanks in advance!

Thomas

Viewing all 22416 articles
Browse latest View live


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