Jump to content

Search the Community

Showing results for tags 'ADC10'.

More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


  • News
    • Announcements
    • Suggestions
    • New users say Hi!
  • Spotlight!
    • Sponsor Spotlight
    • Sponsor Giveaways
  • Energia
    • Energia - MSP
    • Energia - TivaC/CC3XXX
    • Energia - C2000
    • Energia Libraries
  • MSP Technical Forums
    • General
    • Compilers and IDEs
    • Development Kits
    • Programmers and Debuggers
    • Code vault
    • Projects
    • Booster Packs
    • Energia
  • Tiva-C, Hercules, CCXXXX ARM Technical Forums
    • General
    • SensorTag
    • Tiva-C, Hercules, CC3XXX Launchpad Booster Packs
    • Code Vault
    • Projects
    • Compilers and IDEs
    • Development Kits and Custom Boards
  • Beagle ARM Cortex A8 Technical Forums
    • General
    • Code Snippets and Scripts
    • Cases, Capes and Plugin Boards
    • Projects
  • General Electronics Forum
    • General Electronics
    • Other Microcontrollers
  • Connect
    • Embedded Systems/Test Equipment Deals
    • Buy, Trade and Sell
    • The 43oh Store
    • Community Projects
    • Fireside Chat
  • C2000 Technical Forums
    • General
    • Development Kits
    • Code Vault
    • Projects
    • BoosterPacks


There are no results to display.

Find results in...

Find results that contain...

Date Created

  • Start


Last Updated

  • Start


Filter by number of...


  • Start



Website URL





Found 4 results

  1. Hi guys, I am working on a university design project and I am running into an ADC10 sampling limit on MSP430G2553. For a number of reasons, I need to be able to sample and process an input signal at 51 KHz. I can do this with my current setup with a clock speed of 4 MHz. I would, however, like to bring this speed down to 1 MHz so I could run the uC at a lower voltage level. The following is my current code: #include <ctype.h> #include "msp430g2553.h" short value=0; long magnitude0 = 0, magnitude1 = 0; short q0=0,q1=0,q2=0; unsigned int sum = 0; char state0 = 0; char state1 = 0; char trigger = 0; void main(void) { WDTCTL = WDTPW + WDTHOLD; // stop the WDT P2DIR = 0xFF; P2OUT = 0x00; P3DIR = 0xFF; P3OUT = 0x00; BCSCTL1 = CALBC1_8MHZ; // 8MHz calibration for basic clock system DCOCTL = CALDCO_8MHZ; // 8MHz calibration for digitally controlled oscillator BCSCTL2=DIVM0; //down to 4 MHz ADC10CTL0 = ADC10SHT_0 + ADC10ON + ADC10IE; // ADC10ON, interrupt enabled ADC10CTL1 = INCH_4; // A4 Input ADC10AE0 |= 0x80; // enable interrupts _bis_SR_register(GIE); . . . . . unsigned char i; for(i = 255;i!=0; i--) { _delay_cycles (1); ADC10CTL0 |= ENC + ADC10SC; // Sampling and conversion start __bis_SR_register(CPUOFF + GIE); // LPM0, ADC10_ISR will force exit value = ADC10MEM - 510; q0=-q1-q2+value; q2=q1; q1=q0; } . . . // ADC10 interrupt service routine #pragma vector=ADC10_VECTOR __interrupt void ADC10_ISR(void) { __bic_SR_register_on_exit(CPUOFF); // Clear CPUOFF bit from 0(SR) } The beginning segment is the setup. The middle segment is a loop that samples 255 samples at 51 KHz, and the last segment is the adc interrupt vector. Is there a way I can drop down to 1 MHz and accomplish the same calculations at 51 KHz within the loop with clever coding techniques?? Regards, George
  2. A Short introduction on Programming ADC10 of MSP430 Launchpad and Displaying the ADC10 values on a LED Bar graph type Display. Full Tutorial can be found here
  3. Hello, I bought a Sparkfun ML8511 UV sensor breakout and set it up according to this. It kind of works / I have a weird problem: No matter the voltage (3V or 3.3V), the sensor output values change periodically very strongly: Closer to UV-AB source: ~1.5 to ~10.5 to ~1.5 and so on (with more steps in between) (distance of course doesn't change). More away from the UV source: ~0.2 to ~1.5 to ~0.2 and so on. When I attach a 1.5V battery constant voltage source as a test, the displayed value is indeed rather constant ranging from 4.39 to 4.59, so it must be the sensor's problem? Google-ing this problem didn't reveal any results. I tried using A0 and (A1-A5) because of possible noise? but this unfortunately didn't help. I'm using a MSP430G2553 and its ADC10, on a breadboard. Is this a known problem of such a setup?
  4. Hello everyone ! I started to use Energia to create simple projects using MSP430G2553 LaunchPad and somehow I've succeded until now! Today I encountered a problem as I was trying to read values from a HIH-4000-001 humidity sensor.The sensor is powered with 5V and can return a value ranging from 0.826 V to 3.976V coresponding to 0 - 100 % RH. Because 3.976 V is much more than the MSP430 can manage I used a 1:2 resistive divider to scale down the signal.Moreover the sensor needs an load resistance of minimum 80kohms so the resistors I used for my divider were R1= 36kohms and R2=68kohms.NOW comes the error : Regarding that , the RH level is normally around 50% that would corespond to a value of 1.3 V after the scale-down so in terms of ADC readings that would be around 445 and that is the value I get but, if I take multiple readings 1 sec apart of each other this is what happens : 445 442 443 0 0 0 443 440 ..................... Why 0 ? Can anyone tell me ? If I measure for some period of time the output of the sensor, the multimeter indicates a constant value of 1.3 V so I assume that the ADC is the problem! Please help me solve this issue as I need to create a functional project for my Bachelor Degree ! Thanks in advance !
  • Create New...