Part Number:EVM430-FR6047
Tool/software: Code Composer Studio
Hi,
I have EVM430-6047(Rev.A) and am using CCSv8.0.
Can we just enable the interrupt routine once and then disable it.
If yes,then how can we implement in a code?
Best regards,
Divya
Part Number:EVM430-FR6047
Tool/software: Code Composer Studio
Hi,
I have EVM430-6047(Rev.A) and am using CCSv8.0.
Can we just enable the interrupt routine once and then disable it.
If yes,then how can we implement in a code?
Best regards,
Divya
Part Number:MSP430F2416
Hi all,
I have tried to read the 24 bit register of AFE4490 through SPI,How can I effectively done this, I have tried the following method please help to resolve this out.
unsigned long AFE4490_Reg_Read(unsigned char reg_address)
{
P1OUT &= ~ BIT4;
while (!(UC1IFG & UCA1TXIFG));
UCA1TXBUF = reg_address;
while (!(UC1IFG & UCA1RXIFG));
SPI_Rx_buff1= UCA1RXBUF;
while (!(UC1IFG & UCA1TXIFG));
UCA1TXBUF = 0x00;
while (!(UC1IFG & UCA1RXIFG));
SPI_Rx_buff2= UCA1RXBUF;
while (!(UC1IFG & UCA1TXIFG));
UCA1TXBUF = 0x00;
while (!(UC1IFG & UCA1RXIFG));
SPI_Rx_buff3= UCA1RXBUF;
while (!(UC1IFG & UCA1TXIFG));
UCA1TXBUF = 0x00;
while (!(UC1IFG & UCA1RXIFG));
SPI_Rx_buff4= UCA1RXBUF;
P1OUT |= BIT4;
retValue = (SPI_Rx_buff4|(SPI_Rx_buff3<<8)|(SPI_Rx_buff2<<16));
return retValue;
}
Part Number:MSP430F5342
Using 10pin 0.05" header for MSP430 JTAG and used MSP-FET-ADPTR432 to connect 14pin 0.1" to 10pin 0.05" connector and TEST pin got missed in MSP432 JTAG connector but MSP430 required it. We were using 9th pin of 10 pin 0.05" for TEST.
Please provide us solution to not to have TEST pin while power on for MSP430.
Part Number:MSP-EXP430F5529
Tool/software: Code Composer Studio
Hi,
I have changed the MSP-EXP430F5529 experimenter board default code, now I want the same code back on my board, where i will find it?
And also looking for a basic SPI communication code for the same board to communicate with MSP430G2 launchpad, please guide me.
Thanks in advance.
Regards,
Vinayak
Part Number:MSP430F5324
hi all
i come from Taiwan we use F5324RGC to design our product , now we face a big problem!
a lot of products need to update , but these products secure fuse already blown , the only to
update firmware is to use BSL , we try many day but still can't work , please help me , thanks!
Part Number:MSP430FR6047
Where do I find the CAD foot print for the Eagle PCB layout program for the msp430fr6047 microcontroller?Part Number:MSP432P401R
Tool/software: Code Composer Studio
I'am looking for a example showing how to debug MSP-EXP432P401R Rev 2.1 using MSP-FET Rev 2.0.6- and MSP-FET-432ADPTR Rev 1.0 CCS 8.2.0.00007, but I can't find it.
It would help me a lot.
Part Number:MSP430FR2512
Hello,
I'm trying to use a CC2640R2 Laucnhpad to read the Captivate sensors connected to a MSP430FR2512 via I²C. I'm using the CAPTIVATE-BSWP-Demo program with a few changes: CAPT_UserConfig.c and CAPT_UserConfig.h files generated with the Capitvate Design Center for the MSP430FR2512 and callback functions for the keypad and wheel buttons at the main file.
Here is the main code for the MSP430FR2512:
#include <msp430.h> // Generic MSP430 Device Include #include "driverlib.h" // MSPWare Driver Library #include "captivate.h" // CapTIvate Touch Software Library #include "CAPT_App.h" // CapTIvate Application Code #include "CAPT_BSP.h" // CapTIvate EVM Board Support Package #include "I2CSlave.h" //callback function for keypad buttons void keypad_callback(tSensor* pSensor){ //trigger once when the button is touched if(pSensor->bSensorTouch){ I2CSlave_setRequestFlag(); } } //callback function for wheel buttons void wheel_callback(tSensor* pSensor){ //trigger once when the button is touched if(pSensor->bSensorTouch){ I2CSlave_setRequestFlag(); } } void main(void) { // // Initialize the MCU // BSP_configureMCU() sets up the device IO and clocking // The global interrupt enable is set to allow peripherals // to wake the MCU. // WDTCTL = WDTPW | WDTHOLD; BSP_configureMCU(); __bis_SR_register(GIE); // // Start the CapTIvate application // CAPT_appStart(); //Register the keypad sensor to the function handler MAP_CAPT_registerCallback(&keypadSensor, &keypad_callback); MAP_CAPT_registerCallback(&wheelSensor, &wheel_callback); // // Background Loop // while(1) { // // Run the captivate application handler. // CAPT_appHandler(); // // This is a great place to add in any // background application code. // __no_operation(); // // End of background loop iteration // Go to sleep if there is nothing left to do // CAPT_appSleep(); } // End background loop } // End main()
The callback functions are working well, when I touch the keypad button or the wheel, a request signal is sent to the Launchpad. However, when the CC2640R2 receives the signal and tries to read the button value via I²C, the communication is not acknowlegde.
Do you have any code example for the MSP430FR2512 I²C communication? Is there any especific address configuration for this microcontroller?
Part Number:MSP430FR4133
Tool/software: Code Composer Studio
Someone with more knowledge please help. I can not get my MSP430FR4133 to function properly. I will try to include concise description of my problems and what I know so far.
- After using the device functioning with energia and the very first initial upload, I receive the message
"Error initializing emulator:
A firmware update is required for the MSP430 Debug Interface (MSP-FET430UIF / MSP-FET / eZ-FET). Click the "Update"button to update the firmware and launch your debug session (this may require several update steps).
DO NOT UNPLUG THE INTERFACE DURING THE UPDATE."
- I can get the device re-functioning if I use energia. Energia must reflash the firmware when switching back from CCS
- With CCS I do not receive errors when uploading subsequent programs, but it does not interact with the outside world. When I upload a simple blinking program for LED1 and LED2 it works the first time, but it does nothing after running the first time. ****** BUT the debugger shows both Port1 and Port4 responding.
- I have tried on a couple different computers
- CCS Version: 7.1.0.00016
- I have multiple MSP430g2553s, and they have no problems with CCS.
/*********************************************************
* Sample code below from both CCS and energia
**********************************************************/
#include <msp430fr4133.h>
/*
* main.c
*/
int main(void) {
WDTCTL = WDTPW | WDTHOLD; // Stop watchdog timer
P1DIR=255;
P4DIR=255;
P1OUT=0;
P4OUT=255;
int loop=0;
int loop2=0;
while(1){
for(loop2=0;loop2<40;loop2++){
for(loop=0;loop<15000;loop++){
}
}
P1OUT ^= 255;
P4OUT ^= 255;
}
return 0;
}
/*********************************************
* Energia vvvvvvvvvvvv
**********************************************/
void setup() {
pinMode(4,OUTPUT);
pinMode(LED2,OUTPUT);
}
void loop() {
delay(1000);
digitalWrite(4,HIGH);
digitalWrite(LED2,HIGH);
delay(1000);
digitalWrite(4,LOW);
digitalWrite(LED2,LOW);
}
Part Number:MSP430FR5869
Hi Team,
When MCU powers off (system shut down happen), how to recover MCU backup data storage or pick up during SMT line down or happen in RD firmware upgrade? Any solution or document can provide or suggest? Thanks.
Best regards,
Andy Chu
Part Number:MSP430FR2355
Tool/software: Code Composer Studio
__delay_cycles((unsigned int)3000 * MCLK_FREQ_MHZ);
I beginner to msp430fr2355 microcontroller and I dont understand how this line of code works.
Part Number:MSP432E401Y
Tool/software: Code Composer Studio
Hi,
In my project, MSP432E401Y gets ADC data (data rate 3Mb/s) and sends the data out via Ethernet, and which application protocol via Ethernet, MQTT or else, is better to be integrated with MSP432E401Y for the data rate? Would you please recommend it?
Thanks for your help.
Ming
Part Number:MSP430F67771A
Greetings all,
I need help with configuring the PMM module to operate at the highest VCORE voltage for operating the device at 24 Mhz.
As mentioned in relevant sections of the User Manual, the VCORE voltage needs to be increased in single incremental steps rather than in one large step to the final level as shown here:
Further the User manual SLAU208Q outlines the following steps on page 108:
In another reference the datasheet mentions that the Frequency too should be increased in steps to reach the final target operating frequency.
Putting the two together I am using a for loop to increase the Vcore level by one step and the frequency in tandem so to speak.
My first question is - Is this Ok? or should I allow the Vcore voltage to reach its desired level and then increase the Frequency separately?
My second question : The execution gets stuck in the first while loop inside the Set_Vcore function as shown below.
My code looks like this.
void Set_Vcore(unsigned int level) { level &= 0x0007; // To restrict level from taking illegal values PMMCTL0_H = PMMPW_H; // Open PMM registers for write access while (!(PMMIFG & SVSMHDLYIFG)); // CODE GETS STUCK HERE !! Never gets the SVSMHDLYIFG flag high!!! while (!(PMMIFG & SVSMLDLYIFG)); SVSMHCTL = SVSHE + SVSHRVL0 * level + SVMHE \ + (SVSMHRRL0 * (level + 1)); // Set SVS/SVM high side to new level SVSMLCTL = SVSLE + SVMLE + SVSMLRRL0 * level; // Set SVM low side to new level while (!(PMMIFG & SVSMLDLYIFG)); // Wait till SVM is settled PMMIFG &= ~(SVMLVLRIFG + SVMLIFG); // Clear already set flags PMMCTL0_L = (level & 0x03); // Set VCore to new level if ((PMMIFG & SVMLIFG)) // Wait till new level reached while (!(PMMIFG & SVMLVLRIFG)); SVSMLCTL = SVSLE + SVSLRVL0 * level + SVMLE \ + (SVSMLRRL0 * (level + 1)); // Set SVS/SVM low side to new level PMMCTL0_H = 0x00; // Lock PMM registers for write access }
This function is called from the main as follows:
int main(void) { //-------------------------------------------------------------------- // Begin Initialisation Sequence //-------------------------------------------------------------------- WDTCTL = WDTPW | WDTHOLD; // Stop watchdog timer __bis_SR_register(SCG0); // Disable the FLL control loop UCSCTL6 |= XT1BYPASS; // Bypass oscillator, reduced drive UCSCTL1 = DCORSEL_2; // Select lowest DCO range UCSCTL3 = SELREF_0; // Set DCO FLL reference = XT1CLK/1 UCSCTL4 = SELA__REFOCLK \ + SELM__REFOCLK; // Set ACLK = REFO for WD (independent) UCSCTL0 = DCO2 + MOD2; // Set medium DCOx, MODx UCSCTL2 = FLLD_0; // Set DCO Multiplier to the lowest frequency // (N + 1) * FLLRef = Fdco // (487 + 1) * 32768 = 16MHz __delay_cycles(10000); // Settling delay for oscillator to stabilise FLL_Step_Incrmt(); // Take the clock to target frequency in steps __delay_cycles(1000); // Settling delay for oscillator to stabilise __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 16 MHz / 32,768 Hz = 500000 = MCLK cycles for DCO to settle // Loop until XT1,XT2 & DCO fault flag is cleared do { UCSCTL7 &= ~(XT2OFFG + XT1LFOFFG + DCOFFG); // Clear XT2,XT1,DCO fault flags SFRIFG1 &= ~OFIFG; // Clear fault flags }while (SFRIFG1 & OFIFG);
Where FLL_StepIncrement is as follows:
void FLL_Step_Incrmt(void)
{
unsigned int i;
unsigned int dcorval = 0x0020;
for(i=1;i<4;i++)
{
Set_Vcore(i);
UCSCTL1 = dcorval + 0x0010;
__delay_cycles(256);//
}
}
The Code gets stuck in the loop in Set Vcore function at the first while loop. Am I missing something? Do I need to enable the delay interrupt flags?
Any help would be highly appreciated. Thanks
Best regards
Aniruddha
Part Number:MSP430FR2310
Tool/software: Code Composer Studio
Hello,
Several months ago I began thisthread to receive help in using an MSP430 master to write to a slave device over I2C. I am currently trying to adjust the solution to new requirements: currently, the MSP430 is able to write to the slave device after a time delay. Now, however, it also needs to read a response from the slave, and if the first two bytes of that response equal 0xF0, the GPIO on P1.1 goes to logic high, otherwise the MSP430 writes to the slave again and checks the response. We have confirmed that the slave is responding with the expected data, and have observed that GPIO pin gives a 3.3V high if the
P1OUT ^= BIT0;
is given in the first while loop, but only about 1.6V when the IF statement is reversed (it is in the second while loop). Are there any glaring issues with the code that I wrote for this implementation? :
//MSP430 UHF Antenna Deployment Code //VERSION 2 //Author: Brendan Scobie #include <msp430.h> unsigned char TXData[]= {0x1F}; // Pointer to TX Data volatile unsigned char RXData; unsigned char DataLength = sizeof(TXData); unsigned char TXByteCtr; unsigned char SlaveFlag = 0; unsigned char AllOn[]={0xF0}; //A transmission from the slave antenna that has as its first two bytes 0xF0 indicates that all antennae are deployed /** * main.c */ int main(void) { WDTCTL = WDTPW | WDTHOLD; // Stop watchdog timer // Configure GPIO P1OUT &= ~BIT0; // Clear P1.0 output latch P1DIR |= BIT0; // For LED __bis_SR_register(SCG0); // disable FLL CSCTL3 |= SELREF__REFOCLK; // Set REFO as FLL reference source CSCTL1 = DCOFTRIMEN_1 | DCOFTRIM0 | DCOFTRIM1 | DCORSEL_3;// DCOFTRIM=3, DCO Range = 8MHz CSCTL2 = FLLD_0 + 243; // DCODIV = 8MHz __delay_cycles(3); __bic_SR_register(SCG0); // enable FLL CSCTL4 = SELMS__DCOCLKDIV | SELA__REFOCLK; // set default REFO(~32768Hz) as ACLK source, ACLK = 32768Hz // default DCODIV as MCLK and SMCLK source CSCTL5 = DIVS__4; // Scale SMCLK down to 2Mhz //P1OUT = 0; //P1DIR = 0xff; //P2OUT = 0; //P2DIR = 0xff; //#if 0 // If using default I2C pins P1SEL0 = (BIT2 | BIT3); P1SEL1 = 0; //#else // Map to alternate pins //P2SEL0 = (BIT4 | BIT5); //P2SEL1 = 0; //SYSCFG2 |= USCIBRMP; //#endif // TODO: To verify the SMCLK, enable its output on pin P1.1 //P1SEL1 = (BIT0); PM5CTL0 &= ~LOCKLPM5; // Disable the GPIO power-on default high-impedance mode // to activate previously configured port settings // Configure USCI_B0 for I2C mode UCB0CTLW0 |= UCSWRST; // put eUSCI_B in reset state UCB0CTLW0 |= UCMODE_3 | UCMST; // I2C master mode, SMCLK UCB0BRW = 5 ; // baudrate = SMCLK / 5 = 400Khz UCB0TBCNT = 0x0003; //number of bytes to be received (NEW) UCB0I2CSA = 0x33; // configure slave address UCB0CTLW0 &=~ UCSWRST; // clear reset register UCB0IE |= UCTXIE0 | UCNACKIE; // transmit and NACK interrupt enable __enable_interrupt(); //TASK BEGIN while(RXData != 0x0F) { //243243245 = ~30s __delay_cycles(24324324); // Delay between transmissions TXByteCtr = DataLength; // Load TX byte counter while (UCB0CTLW0 & UCTXSTP); // Ensure stop condition got sent UCB0CTLW0 |= UCTR | UCTXSTT; // I2C TX, start condition __bis_SR_register(LPM0_bits | GIE); // Enter LPM0 w/ interrupts // Remain in LPM0 until all data // is TX'd //Make sure that UCB0CTLW0 is interchangeable with UCB0CTL1 while(RXData != 0x0F) { __delay_cycles(2000); while (UCB0CTL1 & UCTXSTP); // Ensure stop condition got sent UCB0CTL1 |= UCTXSTT; // I2C start condition __bis_SR_register(LPM0_bits|GIE); // Enter LPM0 w/ interrupt if(RXData == 0x0F) //if(1) { P1OUT ^= BIT0; // Toggle P1.0 using exclusive-OR } else { __delay_cycles(200000); // Delay between transmissions TXByteCtr = DataLength; // Load TX byte counter while (UCB0CTLW0 & UCTXSTP); // Ensure stop condition got sent UCB0CTLW0 |= UCTR | UCTXSTT; // I2C TX, start condition __bis_SR_register(LPM0_bits | GIE); // Enter LPM0 w/ interrupts } } } } //TASK END #if defined(__TI_COMPILER_VERSION__) || defined(__IAR_SYSTEMS_ICC__) #pragma vector = USCI_B0_VECTOR __interrupt void USCIB0_ISR(void) #elif defined(__GNUC__) void __attribute__ ((interrupt(USCI_B0_VECTOR))) USCIB0_ISR (void) #else #error Compiler not supported! #endif { switch(__even_in_range(UCB0IV,USCI_I2C_UCBIT9IFG)) { case USCI_NONE: break; // Vector 0: No interrupts break; case USCI_I2C_UCALIFG: break; case USCI_I2C_UCNACKIFG: UCB0CTL1 |= UCTXSTT; //resend start if NACK break; // Vector 4: NACKIFG break; case USCI_I2C_UCSTTIFG: break; // Vector 6: STTIFG break; case USCI_I2C_UCSTPIFG: break; // Vector 8: STPIFG break; case USCI_I2C_UCRXIFG3: break; // Vector 10: RXIFG3 break; case USCI_I2C_UCTXIFG3: break; // Vector 14: TXIFG3 break; case USCI_I2C_UCRXIFG2: break; // Vector 16: RXIFG2 break; case USCI_I2C_UCTXIFG2: break; // Vector 18: TXIFG2 break; case USCI_I2C_UCRXIFG1: break; // Vector 20: RXIFG1 break; case USCI_I2C_UCTXIFG1: break; // Vector 22: TXIFG1 break; case USCI_I2C_UCRXIFG0: break; // Vector 24: RXIFG0 break; case USCI_I2C_UCTXIFG0: if (TXByteCtr) // Check TX byte counter { UCB0TXBUF = TXData[0]; // Load TX buffer TXByteCtr--; // Decrement TX byte counter } else { UCB0CTLW0 |= UCTXSTP; // I2C stop condition UCB0IFG &= ~UCTXIFG; // Clear USCI_B0 TX int flag __bic_SR_register_on_exit(LPM0_bits); // Exit LPM0 } break; // Vector 26: TXIFG0 break; case USCI_I2C_UCBCNTIFG: break; // Vector 28: BCNTIFG case USCI_I2C_UCCLTOIFG: break; // Vector 30: clock low timeout case USCI_I2C_UCBIT9IFG: break; // Vector 32: 9th bit default: break; } }
Part Number:MSP430FR4133
Tool/software: Code Composer Studio
I would like to toggle an LED at interval of 1 second . Therefore I implemented the coding below . However , I could not observe any toggling most probably due to the fact that WDTIFG is never raised. I read the documentation of MSP4133 over and over again and I am aware of that WDTIE and GIE have to be set so as to raise WDTIFG. There must be something I am missing .
Another issue is that I had previously inserted WDTSSEL1 since it is 01b should have corresponded to ACLK(32kHz) .However , I realized that it was set as 10b in the registers window upon that I tried WDTSSEL0 and it yielded 01b . It did not make sense for me. If anyone could explain it , I would appreciate . Thanks in advance !.
#include <msp430.h> #define LED BIT0 int main(void) { WDTCTL = WDTPW | WDTTMSEL | WDTSSEL0 | WDTCNTCL; // interval timer mode is selected, ACLK selected 32khz watch dog timer 1/32kHz * 32.768 = 1 second WDT period P1DIR |= LED; //P1.0 is defined as output P1OUT &= ~LED; //LED at P1.0 is turned off initially PM5CTL0 &= ~LOCKLPM5; //previous port settings are activated. SFRIE1 |= WDTIE; // Enable WDT interrupt __bis_SR_register(GIE); //general interrupts enabled. for(;;){ if((SFRIFG1 & WDTIFG) !=0){ //toggle LED once interrupt raised. P1OUT ^= LED ; // toggles LED otherwise WDTCTL = WDTPW | WDTTMSEL | WDTSSEL0 | WDTCNTCL; //watchdog timer starts over counting once again upto limit. //WDTIFG is single source interrupt flag therefore automatically resets when it is serviced. } } return 0; }
Part Number:MSP430FR2355
Tool/software: Code Composer Studio
i am new to the msp430fr2355 launchpad and have a problems related to program related to UART- #define MCLK_FREQ_MHZ 8 // MCLK = 8MHz __delay_cycles((unsigned int)3000 * MCLK_FREQ_MHZ); // Wait FLL lock status (FLLUNLOCK) to be stable #define MCLK_FREQ_MHZ 1 // MCLK = 1MHz __delay_cycles((unsigned int)3000 * MCLK_FREQ_MHZ); // Wait FLL lock status (FLLUNLOCK) to be stable What will delays in both case and how would we calculate delays in both situations? Even we are using different frequency for MCLK then how in both above cases it is producing same delay for 24 cycles only. |
You received th |
Part Number:MSP430G2553
I need MSP430G2553 library for altium including footprint. Please help me to find
Part Number:MSP430F5529
I found the TI's USB API and Descriptor tool for PHDC layer, but couldn't find any material on the data exchange protocol (IEEE 11073-20601) and Device specializations layers (IEEE 11073-104xx) on top of the PHDC.
Does TI provide these two layers on top of the PHDC layer or the users, themselves should implement them?
Thanks in advance.
Part Number:MSP430G2553
Tool/software: Code Composer Studio
Hello,
I am posting on behalf of the Embedded Systems subteam from the University of California, Irvine's undergraduate Formula SAE Electric Racing team, Anteater Electric Racing.
My subteam and I are developing a Pedal Control Module for a real time embedded system on an electric vehicle, where we read in 4 analog signals (2 throttle, 1 brake, 1 steering) and output two 1.6 Khz PWM signals. These output signals depend on the throttle and steering position to send a Torque-Request-Signal to two independent motor controllers.
We began our development by configuring Hardware-UART and static PWM to success, then we started initializing our ADC for the 4 channels (to control PWM). Our intermittent goal is to monitor the ADC buffer via UART, however we are having issues initializing ADC. We are using CONSEQ_1 as our ADC mode because we want to sequentially read 4 channels then use a while-loop for our repetition logic.
Here is our Pinout for the MSP430G2ET LaunchPad:
Header pin Location | Pin Number | Function | Input | Output |
P1.0 | 2 | ACC1 | Analog (0-5) | |
P1.3 | 5 | ACC2 | Analog (0-5) | |
P1.4 | 6 | Brake | Analog (0-5) | |
P1.5 | 7 | Steering | Analog (0-5) | |
P2.1 | 9 | Motor Control L | PWM | |
P2.6 | 19 | Motor Control R | PWM |
This is the code for our main.c file:
#include <ADC.h> #include <Faults.h> #include <msp430g2553.h> #include <PWM.h> #include <stdint.h> #include <UART.h> /** * main.c */ int AcceleratorL; //Left motor duty cycle int AcceleratorR; //Right motor duty cycle int steeringval; int accval; int main(void) { WDTCTL = WDTPW | WDTHOLD; // stop watchdog timer BCSCTL1 = CALBC1_16MHZ; // Set range DCOCTL = CALDCO_16MHZ; init_ADC(); init_UART(); // init_PWM(); // __enable_interrupt(); while (1) { // TA1CCR1 |= 156; // TA1CTL |= TASSEL_2 + MC_1; // TA0CCR1 = 313; // TA0CTL = TASSEL_2 + MC_1; // __bis_SR_register(LPM0_bits); read_ADC(); test_UART(3); test_UART(2); test_UART(1); test_UART(0); } }
This is the code for our ADC.c file(all variables are declared in header files):
#include <ADC.h> #include <msp430g2553.h> // ADC10 interrupt service routine #if defined(__TI_COMPILER_VERSION__) || defined(__IAR_SYSTEMS_ICC__) #pragma vector=ADC10_VECTOR __interrupt void ADC10_ISR(void) #elif defined(__GNUC__) void __attribute__ ((interrupt(ADC10_VECTOR))) ADC10_ISR (void) #else #error Compiler not supported! #endif { __bic_SR_register_on_exit(CPUOFF); // Clear CPUOFF bit from 0(SR) } void init_ADC(){ ADC10CTL1 = INCH_5 + CONSEQ_1; //Channel 5 down to 0 and sets up sequence channel conversion ADC10CTL0 = ADC10SHT_2 + MSC + ADC10ON + ADC10IE; ADC10DTC1 = 4; ADC10AE0 = BIT5 + BIT4 + BIT3 + BIT0; //enables analog on pin 1.0, 1.3, 1.4, and 1.5 } void read_ADC(){ ADC10CTL0 &= ~ENC; while(ADC10CTL1 & BUSY); ADC10SA = (unsigned int)adc; ADC10CTL0 |= ENC + ADC10SC; steeringInput = adc[0]; brakeInput = adc[1]; acc2Input = adc[2]; acc1Input = adc[3]; __bis_SR_register(CPUOFF + GIE); }
Thank you,
Lucas
Part Number:MSP430G2553
Hi,
I just bought the MSP430G2553 microcontroller for a class project and I can't get to try the blink example since it doesn't detect it connected even though I sellected the right micro and it recognizes there are ports and I can select one of them (CAM4 and CAM5, not sure which is which but it doesn't work with any of them). Also, I checked in windows Device Manager those are the ports linked to the microcontroller and installed the Energia drivers for windows 64 bits.
Hope someone can help me out here.
I attach some screenshots down bellow.