This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Help required for MSP430F6638IPZR

Other Parts Discussed in Thread: MSP430F6638

I'm a beginner to this kind of chip (MSP430F6638IPZR) ,I have a board on which that chip can be mounted and programmed. It also included MSP430 USB-Debug-Interface MSP-FET430UIF. Can you please tell me how do I start with? I mean I want to do a simple project first like using microphone trying to get the voice out of it. 

Can anyone please tell me the steps clearly how do I start?
( Its not that I'm lazy, I have searched a lot but confused with many results. I found that we can program it using CCS or else can be done by IAR and I also I got a CD with the kit which has software in it. Please help me with this) 

  • Both, CCS and IAR, are IDEs: Integrated Development Environments. They contain a project manager, code editor, compiler, linker and debugger. Which one to use is personal preference, or based on what you want to do. Both are available in a free version that is limited in the size of code it produces. IIRC, IAR allows a larger code size in their free version, but counts libraries and assembly code, while CCS only counts the C code size and you may add code from libraries and assembly code.

    Besides the two, there's also MSPGCC and some othe rcompilers. These are, however, no IDEs but rather toolchains that require some manual skills.

    You'll need, however, to install either IAR or GCC as the drivers for the USb FET are installed with them (MSPGCC only supports the older parallel FETs by itself)

    Once you have one of them installed, you can either import one of the many example projects available form the experimenter boards product page or the CD, or you start your own project.
    I recommend ad least looking into some of the exmaple projects to get an idea of the basic structure.

    Keep in mind that this is microcontroller programming, You won't start with a huge OS that offers almost everything. Sicne the resulting code needs to be small and fast, you'll have to implement most things on your own (there are some libraries that might help). This includes even basic serial output (so the usual 'hello world' normally is reduced to letting an LED blink)

  • thanks for the response, I'm trying to use a sample program but I'm getting an error call "Identifier COMPLEX undefined" right at the top in the first line of my code. 

    this is the code I have used 

    #include <msp430f6638.h>
    #include<stdio.h>

    void main(void)
    {
    WDTCTL = WDTPW + WDTHOLD; // Stop WDT
    ADC12CTL0 = ADC12SHT02 + ADC12ON; // Sampling time, ADC12 on
    ADC12CTL1 = ADC12SHP; // Use sampling timer
    ADC12IE = 0x01; // Enable interrupt
    ADC12CTL0 |= ADC12ENC;
    P6SEL |= 0x01; // P6.0 ADC option select
    P1DIR |= 0x01; // P1.0 output

    while (1)
    {
    ADC12CTL0 |= ADC12SC; // Start sampling/conversion

    __bis_SR_register(LPM0_bits + GIE); // LPM0, ADC12_ISR will force exit
    __no_operation(); // For debugger
    }
    }

    #pragma vector = ADC12_VECTOR
    __interrupt void ADC12_ISR(void)
    {
    switch(__even_in_range(ADC12IV,34))
    {
    case 0: break; // Vector 0: No interrupt
    case 2: break; // Vector 2: ADC overflow
    case 4: break; // Vector 4: ADC timing overflow
    case 6: // Vector 6: ADC12IFG0
    if (ADC12MEM0 >= 0x7ff) // ADC12MEM = A0 > 0.5AVcc?
    P1OUT |= BIT0; // P1.0 = 1
    else
    P1OUT &= ~BIT0; // P1.0 = 0

    __bic_SR_register_on_exit(LPM0_bits); // Exit active CPU
    case 8: break; // Vector 8: ADC12IFG1
    case 10: break; // Vector 10: ADC12IFG2
    case 12: break; // Vector 12: ADC12IFG3
    case 14: break; // Vector 14: ADC12IFG4
    case 16: break; // Vector 16: ADC12IFG5
    case 18: break; // Vector 18: ADC12IFG6
    case 20: break; // Vector 20: ADC12IFG7
    case 22: break; // Vector 22: ADC12IFG8
    case 24: break; // Vector 24: ADC12IFG9
    case 26: break; // Vector 26: ADC12IFG10
    case 28: break; // Vector 28: ADC12IFG11
    case 30: break; // Vector 30: ADC12IFG12
    case 32: break; // Vector 32: ADC12IFG13
    case 34: break; // Vector 34: ADC12IFG14
    default: break;
    }
    }

    Can anyone please tell me where I went wrong.

  • I got it fixed. The problem I'm getting is that the driver is not updated for USB(Texas Instruments XDS560 PCI JTAG Emulator) when I tried to debug the project, it is unable to find the FET USB at all.  I installed all the software from the CD I got with the kit. Do I need to do anything else? 

    Please let me know this as soon as possible.

    Thank you

  • I don't know where the identifier "COMPLEX" comes from. Neither the MSP430 header file nor the stdio.h should use it and you code doesn't use it too. So where did it come form? You said you fixed it. How? It could be interesting for others with the same problem.

    About the drivers, where does this XDS560 driver come from? The FET should enumerate as FET, not as JTAG-Emulator. There are several threads bout 'FET nor found' on this forum, including screenshots of the device manager etc.
    Do (or did) you have another TI JTAG device for different processors on your system? (Stellaris or such?). The FET is MSP430 only and the only one (except for the GANG programmer) for the MSP430.

    I don't know what's on the CD. Maybe you'll need to download a newer version of CCS/IAR (free version) from TIs website. With newer drivers included. OR you will have to deinstall the old drivers (and remove the old device from system system configuration) in order to have the new drivers accepted.

**Attention** This is a public forum