Jump to content

Search the Community

Showing results for tags 'led'.

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 24 results

  1. This is a project I completed for my Embedded Systems final at John Brown University. For this project, I wired and programmed an Arduino Uno using other parts ordered off of Adafruit to design LED lights that respond to sound. In this post, I will include my final report which documents the methods and results to this project. Final_Project_Report.docx
  2. I know that Stellaris is dead already. The only reason I still own an Stellaris EK because my friend gave it to me......for free and brand new! I just want to fade an LED, that's all ! And btw, are there any good tutorials for Stellaris MCUs? Thanks alot, to anybody that is willing to help me.
  3. A small project. G2211 PIR Sensor 5630 LED strips On/Off button Button Doubles as Test Mode Board half way done. Using a Reg104 DPAK (I'll stick to a TO-220 next time) as the regulator, and MMBT3904 sot-23 transistors on a board of my own design. The base resistors should be on the back, but I didn't have the right value 0805/1206 resistors at the time. Quite proud of my clean, flush mount, perfect fit for the button, led, and sensor. Two tricks. One, I used two pins to provide high to low, and low to high interrupts, instead of swapping the interrupt in code, since I won't always know it's state. It is much simpler like this for me. Two, the status led is only 0.66 mA. 600 microamps. Look how visible it is. Keep that in mind when building your own projects. One issue. I have the PIR sensor directly powered by the 3.2V regulator I am using, bypassing the HT7133 on it. As such the PIR sensor triggers when the leds turn off, likely due to noise/ripple experienced. Next time I'll just power the sensor from the 12V with it's regulator, or I could change the sensor to non-retriggerable mode, or wire the enable pin to the msp430. I just coded a delay that ignores the trigger. The timing of the lights is long enough that it shouldn't be an issue in normal use. main.c common.h
  4. Hey Guys, Exam times again, so I feel like I have a tonne of time for my projects. This is a project I started in February 2014. I found a very nice 8x8 dual colour LED display. I designed a PCB for them when I ordered them, instead of when I actually had them. I had built a PCB up with a G2542 8kb / 512b (Mem/RAM) but didn't manage to get it working. Over the last few weeks I got back into this project, and low and behold it did actually work!! I built up a new PCB because it was designed as a common cathode driver, but the displays were common anode.... (on the first board, I had bridged the common mosfets.) of course using 0402 parts. (this display need 64 of these O_O) back of PCB contains clock, half a DCDC stepup and a BMA222 accelerometer. Front & back Now I needed a case, this is my first project I decided to actually make use of a cheap chinesse laser cutter I now own. The piece with all the slits in it create a "living hinge" which creates a cool organic looking case. as opposed to a rectangle. I'm still working on improving code. Basic clock functionality is in. lastly I'll leave you with my dud designs. which while not very practical. are actually 100% useful. A failed design can teach you alot! I will be making this open source, I would like to make more in the future, which may involve buying more displays from china (if there is interest maybe even a group buy?? )
  5. Hello everyone! I have just bought a C2000 Piccolo LaunchPad Evaluation Kit, de LAUNCHXL - F28027F. I have also just started learning to program in Energia, and I am following the tutorials in the guide section (they are very useful if someone is a beginer). While I was doing the first tutorial (Blinking LED), it appeared this error: "Put C2000 LaunchPad switches (S1) ON-OFF-OFF (UP-DOWN-DOWN), ensure the back channel serial connection is enabled, and press the reset button. If the download fails try a baud rate below 38400." I put the switches as it says, and I also decreased the baud rte to 10000, but the error does not disappear. Moreover, I only changed 1 line of code because I haven't got the same board as the example, so I can't understand what I am doing wrong. Anyone can help me? Thanks in advance! PS: I copy the main code I have in my sketch, and also upload it. void setup() { Serial.begin(10000); pinMode(LED0, OUTPUT); } void loop() { digitalWrite(LED0, HIGH); delay(1000); digitalWrite(LED0, LOW); delay(1000); } prova1.ino
  6. Hi Everyone, I have made available binaries and source code for an RGB lighting project called LightServer that I thought some of you would be interested in. The best way to see what you can do with LightServer is to view the videos on Vimeo here - https://vimeo.com/album/3015956 No coding experience required to set this up and use. Technical Details LightServer uses the Tiva C LaunchPad and the CC3100 Wi-Fi BoosterPack and a custom BoosterPack (Eagle files included
  7. 3 channel, high power LED driver, built to fit 10W RGB LEDs (those things are blindingly bright!) Now on Tindie.
  8. I'm very interested in this Dancing traffic light, can msp430 do this? https://www.youtube.com/watch?v=SB_0vRnkeOk
  9. Hello, I needed a large 3 digit display with remote control. All available didn't fit my needs, were quite expensive or not flexible enough. So I decided to create my own inspired by products I found. IR remote control looked simple and cheap enough, Seeedstudio sells some nice large 7 segment LED displays and prototype PCB manufacture in China doesn't cost much. First I LaunchPad prototyped the design with 8 channel serial LED driver, like SCT2168, and generic 3 pin IR receiver. I implemented NEC IR protocol with TimerA and bit banged serial display data output. All worked nicely so I ordered 5" 7 segment LED digits from Seedstudio. I highly recommend to order one extra digit. From my batch 2 horizontal segments had visibly couple LEDs busted. Also provided datasheet doesn't match what I received. Instead of 2x6 mine are 3x7 LEDs per segment. I tore one apart to see what's inside. Dot segment doesn't even have a polarity mark and only one seemed to work, but I didn't plan to use them anyway. I designed 2 boards, one large for individual segments of 5" digit, MCU and voltage regulator and small one for various sizes of common anode LED displays. I can extend the display by daisy chaining digits or run multiple displays in parallel depending on which side I connect next digit. MCU and power supply part is placed only on 1st digit. Currently I have ordered 2.3" digits from ebay for secondary display. Boards were made by Elecrow, I fit 1 large and 2 small designs on one 10x10 PCB. Code runs on small MSP430G2 MCU and only 4 pins are needed, board is designed for MSP430G2210 SO-8 package but with little leg bending and pin reassignment TSSOP-14 may be used. I use small remote I got with DVB-T tuner I use for SDR. It has just few buttons and fairly large labels. Current code implements 4 memory slots to switch between numbers. Everything is placed in plastic box covered by gray acrylic. Code: main.ctools.htools.c Eagle files: large.schlarge.brdsmall.schsmall.brd
  10. Okay... yet another project from me. But this one is close to being real. Basically, it's a toothbrush timer for my nephew. The intent is that he can press a button when he's getting ready to brush his teeth, and the unit will do some LED dances that eventually turn into an LED blinking seconds, and 3 LED's light up based on how far along he is into the brushing ritual Blue LED is the 'second' indicator. Red LED indicates he's in the first minute of brushing. Yellow LED indicates he's in the second minute of brushing. Green LED indicates he's in the third, and final, minute of brushing. Once complete, the unit blinks LED's and such.... *edit- maybe not so close to complete now that other things are being brought in.
  11. Hi, people I need some help,I do this code: #include <msp430g2553.h>/*MCU */ #define LED_VERMELHA BIT0 int SS = 0; int main(void){ WDTCTL = WDTPW + WDTHOLD; P1DIR |= (LED_VERMELHA); P1OUT &= ~(LED_VERMELHA); if (CALBC1_1MHZ ==0xFF || CALDCO_1MHZ == 0xFF) BCSCTL1 = CALBC1_1MHZ; DCOCTL = CALDCO_1MHZ; TA0CCR0 = 65500; TA0CCTL0 = CCIE; TA0CTL = TASSEL_2 + MC_1 + ID_3; _BIC_SR(GIE); /*ENABLE INTERRUPT*/ while(1){ } } #pragma vector=TIMER0_A0_VECTOR __interrupt void Timer_A(void) { /*TIMER0_A0 INTERRUPT SERVICE ROUTINE*/ SS++; P1OUT ^= LED_VERMELHA; } I would like to flash the LED every 500ms, but I can not make it work, can someone help me?
  12. I've just started playing around with my msp430 ez-2013 that my uncle gave me a while back (I've been too busy with school and whatnot until now ) and am trying to use the ez-2013 to control a transistor that will flash an externally powered LED. So far I've had no luck with it. I'm using a 2n222 transistor with a 10k ohm resistor from P1.0 on the ez-2013 to the base and a 10k ohm resistor on the emitter, with the anode of the LED attatched to the collector and the cathode attached to +6V. The resistor on the emitter is attached to ground. The led is powered seperately from the microcontroller (the MC is powered by USB) and the led/transistor is powered by 4 AA batteries. The transistor does work (the LED lights up when i connect the base to +6V) but does not turn on when attatched to the MC. I am just using the "Flashing the LED" program to eliminate the possibility of coding error. Is there something that I've done wrong, something I'm missing/have overlooked? Does the MC have to be powered by the same source as the LED or something in order for it to work? Would appreciate some help with my noob problem! Thanks in advance! Londonlad PS I attatched a photo of the setup, might provide some help in figuring out what I've done (wrong)
  13. Created as part of GB#11, this booster pack uses 5050 RGB LEDs with integrated WS2811. Will post code examples later on. BTW, I cannot get a preview of this YouTube video to show up, can you check it out B#?
  14. Hi Gents, I've modified the SpaceLen driver to receive commands from '433mhz remotes' to drive ledStrips. These controllers + remote cost a whoping 5$, and drive upto 2A a led (so 6A in total, so rather cheap for the capabilities. Using this library, you mimic the remote. Unfortunately sending custom commands, other than replayed remote commands seems impossible, without flashing the original uC in the receiver. edit: both sending and receiving works. The code can be found on: https://github.com/vinietje/LedProtocol the controllers look like: https://github.com/vinietje/LedProtocol/blob/master/docs/Controller.jpg the timing of the signals: https://github.com/vinietje/LedProtocol/blob/master/docs/Timing%20signal.png I which I could be more specific regarding type-numbers and, such, but the Chinese are very limited regarding these unfortunately, eq, the chips inside the remotes don't bear any markings :-( and prints like '433mhz' and 'paired 1-on-1' aren't gonna cut it... please keep in mind that due to the lack of a 'change event' i have used a workaround, although in the latest commits on Energia this issue is resolved. So when using them, you will need to alter the interupt routine.
  15. This is an 8x8x8 LED cube, designed by me, i think its the most compact circuit i have ever seen on the internet regarding a cube of this size...
  16. new project - LED propeller, its pixels are fixed, the speed of the motar have no effect on that.... http://www.youtube.com/watch?v=4jmODg4TcKE
  17. Hello everyone! I'm continuing my project of creating an RGB LED matrix capable of displaying live images being transmitted from a laptop via a serial cable to the MSP430G2553. At the moment, I'm coding four 8x8 Common Anode RGB LED matrices joined together to create a 16x16 display. Hardware I'm using: - 3 * TLC5940s (one for each colour) - 2 * 74HC595 shift registers (drives the columns/anodes) I'm using code provided by RobG from this link <http://forum.43oh.com/topic/2315-tlc5940-examples/> and this one <http://forum.43oh.com/topic/3328-rgb-to-hsv-conversion-with-msp430g2231-help/#entry29106> in order to drive the LEDs with PWM enabled. BUT, the problem I'm having is that I'm trying to allow every pixel to have different colours, but when running, the microcontroller isn't refreshing the pixels fast enough so there is MASSIVE flickering - which isn't ideal.... Here is the code from which I am working : feel free to insult :-P #include <msp430g2553.h> #include <msp430.h> // Need to sort hsv2rgb because yellow is pish... // u_long is 32 bits so 2^32 - 1 is max value. Need more for 32x32 matrix // TLC inputs #define VPRG_PIN BIT0 // TIE TO GND? #define GSCLK_PIN BIT4 #define SCLK_PIN BIT5 #define DATA BIT6 // DS -> 1.6 | 595 DATA PIN #define MOSI_PIN BIT7 #define MOSI595 BIT2 // 595 data pin ? THIS ISNT DOING ANYTHING #define DCPRG_PIN BIT0 // TIE IT TO GND? #define XLAT_PIN BIT1 #define BLANK_PIN BIT2 #define CLOCK BIT3 // SH 11 -> 2.3 // 595 OUTPUTS #define LATCH BIT4 // ST 12 -> 2.4t typedef unsigned char u_char; typedef unsigned int u_int; typedef unsigned short u_short; typedef unsigned long u_long; // ================================// // Prototypes // // ================================// void init( void ); void SPI_setup( void ); void updateTLC( void ); void shiftOut( u_long ); void HSV2RGB( u_short*, u_short*, u_short*, short, u_char); void set_row_char_hue (u_char, u_long, short, u_char); void row_refresh(u_char,short,short,short,short,short,short,short,short,short,short,short,short,short,short,short,short); #define NUMBER_OF_OUTS 48 // TLC OUTPUTS #define NUMBER_OF_ROWS 8 #define NUMBER_OF_COLUMNS 16 #define max_COLUMN NUMBER_OF_COLUMNS-1 #define max_ROW NUMBER_OF_ROWS-1 #define OFF 0 u_short leds[NUMBER_OF_OUTS]; // 0 - 15 Red Rows, 16 - 31 Blue Rows, 32 - 47 Green Rows {0, } u_char timerCounter = 0; void init(void) { WDTCTL = WDTPW + WDTHOLD; // disable WDT BCSCTL1 = CALBC1_16MHZ; // 16MHz clock DCOCTL = CALDCO_16MHZ; BCSCTL2 |= DIVS_0; // divide clock by 1 P1OUT &= ~(VPRG_PIN); P1DIR |= (VPRG_PIN + GSCLK_PIN + DATA); // port 1.4 configured as SMCLK out P1SEL |= GSCLK_PIN; P2DIR |= (BLANK_PIN + XLAT_PIN + CLOCK + LATCH + DCPRG_PIN); P2OUT &= ~(BLANK_PIN + XLAT_PIN); P2OUT &= ~DCPRG_PIN; // setup timer CCR0 = 0xFFF; TACTL = TASSEL_2 + MC_1 + ID_0; // SMCLK, up mode, 1:1 CCTL0 = CCIE; // CCR0 interrupt enabled } void SPI_setup(void) { // setup UCA0 ----UCA0 ISNT DOING ANYTHING YET! SHOULD I CONFIGURE THE 595's TO BE CONTROLLED BY SPI? P1SEL |= MOSI595; // p1.2 P1SEL2 |= MOSI595; // UCA0SIMO UCA0CTL0 = UCCKPH + UCMSB + UCMST + UCSYNC; // data captured on 1st UCLK edge/changed on follwing edge, MSB first, master, 3-pin SPI,synchronous UCA0CTL1 |= UCSSEL_2; // SMCLK UCA0BR0 |= 0x01; // 1:1 UCA0BR1 = 0; UCA0CTL1 &= ~UCSWRST; // clear SW // setup UCB0 P1SEL |= SCLK_PIN + MOSI_PIN; // pins 5 + 7 P1SEL2 |= SCLK_PIN + MOSI_PIN; // UCB0CLK + UCB0SIMO UCB0CTL0 = UCCKPH + UCMSB + UCMST + UCSYNC; // data captured on 1st UCLK edge/changed on follwing edge, MSB first, master, 3-pin SPI,synchronous UCB0CTL1 |= UCSSEL_2; // SMCLK UCB0BR0 |= 0x01; // 1:1 UCB0BR1 = 0; UCB0CTL1 &= ~UCSWRST; // clear SW } void main(void) { init(); SPI_setup(); updateTLC(); P2OUT |= (XLAT_PIN); P2OUT &= ~(XLAT_PIN); short o = 240; short y = 60; // yellow short b = 240; // blue short hue = 0; _bis_SR_register(GIE); for(; { // creates box image row_refresh(0, b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,; row_refresh(1, b,y,y,y,y,y,y,y,y,y,y,y,y,y,y,; row_refresh(2, b,y,b,b,b,b,b,b,b,b,b,b,b,b,y,; row_refresh(3, b,y,b,y,y,y,y,y,y,y,y,y,y,b,y,; row_refresh(4, b,y,b,y,b,b,b,b,b,b,b,b,y,b,y,; row_refresh(5, b,y,b,y,b,y,y,y,y,y,y,b,y,b,y,; row_refresh(6, b,y,b,y,b,y,b,b,b,b,y,b,y,b,y,; row_refresh(7, b,y,b,y,b,y,b,y,y,b,y,b,y,b,y,; row_refresh(8, b,y,b,y,b,y,b,y,y,b,y,b,y,b,y,; row_refresh(9, b,y,b,y,b,y,b,b,b,b,y,b,y,b,y,; row_refresh(10, b,y,b,y,b,y,y,y,y,y,y,b,y,b,y,; row_refresh(11, b,y,b,y,b,b,b,b,b,b,b,b,y,b,y,; row_refresh(12, b,y,b,y,y,y,y,y,y,y,y,y,y,b,y,; row_refresh(13, b,y,b,b,b,b,b,b,b,b,b,b,b,b,y,; row_refresh(14, b,y,y,y,y,y,y,y,y,y,y,y,y,y,y,; row_refresh(15, b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,; _bis_SR_register(LPM0_bits); // go to sleep } // end of for(; loop } void updateTLC(void) // RobG's code { u_char ledCounter = NUMBER_OF_OUTS >> 1; while (ledCounter-- > 0) { u_char i = ledCounter << 1; UCB0TXBUF = leds[i + 1] >> 4; while (!(IFG2 & UCB0TXIFG)); // TX buffer ready? u_char unib = leds[i + 1] << 4; u_char lnib = (leds[i] >> 8) & 0x0F; UCB0TXBUF = unib | lnib; while (!(IFG2 & UCB0TXIFG)) ; // TX buffer ready? UCB0TXBUF = leds[i]; while (!(IFG2 & UCB0TXIFG)); // TX buffer ready? } } void row_refresh(u_char row,short a,short b,short c,short d,short e,short f,short g,short h,short i,short j,short k,short l,short m,short n,short o,short p) { // this function checks if led is supposed to be ON // for example, if row = 0, and a = 360 then the top left led is OFF // if a = 120, then the led will be ON, and will be assigned the appropriate hue (green) u_long col_data = 0x0000; if(a < 360){col_data = 0x8000; set_row_char_hue(row,col_data,a,1);} // 0 if(b < 360){col_data = 0x4000; set_row_char_hue(row,col_data,b,1);} // 1 if(c < 360){col_data = 0x2000; set_row_char_hue(row,col_data,c,1);} // 2 if(d < 360){col_data = 0x1000; set_row_char_hue(row,col_data,d,1);} // 3 if(e < 360){col_data = 0x0800; set_row_char_hue(row,col_data,e,1);} // 4 if(f < 360){col_data = 0x0400; set_row_char_hue(row,col_data,f,1);} // 5 if(g < 360){col_data = 0x0200; set_row_char_hue(row,col_data,g,1);} // 6 if(h < 360){col_data = 0x0100; set_row_char_hue(row,col_data,h,1);} // 7 if(i < 360){col_data = 0x0080; set_row_char_hue(row,col_data,i,1);} // 8 if(j < 360){col_data = 0x0040; set_row_char_hue(row,col_data,j,1);} // 9 if(k < 360){col_data = 0x0020; set_row_char_hue(row,col_data,k,1);} // 10 if(l < 360){col_data = 0x0010; set_row_char_hue(row,col_data,l,1);} // 11 if(m < 360){col_data = 0x0008; set_row_char_hue(row,col_data,m,1);} // 12 if(n < 360){col_data = 0x0004; set_row_char_hue(row,col_data,n,1);} // 13 if(o < 360){col_data = 0x0002; set_row_char_hue(row,col_data,o,1);} // 14 if(p < 360){col_data = 0x0001; set_row_char_hue(row,col_data,p,1);} // 15 } void set_row_char_hue (u_char row, u_long col_data, short hue, u_char bool) { u_char led = 0; u_long byte; for(led = 0 ; led < 16 ; led++ ) { byte = (col_data>>led)&(0x01); if( byte ) { HSV2RGB( &leds[row], &leds[row + 32], &leds[row + 16], hue, bool); //on; shiftOut( col_data ); } } // turn off leds leds[row] = OFF; leds[row+32] = OFF; leds[row+16] = OFF; } void HSV2RGB(u_short* r, u_short* g, u_short* b, short h, u_char bool) { const u_char s = 255; u_char v = 255; u_char i, p, q, t; u_short fs; if (h < 60 ) i = 0; else if (h < 120) i = 1; else if (h < 180) i = 2; else if (h < 240) i = 3; else if (h < 300) i = 4; else if (h < 360) i = 5; else return; fs = ((h - i * 60) * s)/ 60; p = 255 - s; q = 255 - fs; t = 255 - s + fs; switch(i) { case 0: *r = 255;*g = t;*b = p;break; case 1: *r = q;*g = 255;*b = p;break; case 2: *r = p;*g = 255;*b = t;break; case 3: *r = p;*g = q;*b = 255;break; case 4: *r = t;*g = p;*b = 255;break; case 5: *r = 255;*g = p;*b = q;break; } if ( bool == 1 ) { *r *= v/16; *g *= v/16; *b *= v/16; } else { *r *= 0; *g *= 0; *b *= 0; } } #pragma vector = TIMER0_A0_VECTOR __interrupt void Timer_A0(void) { // 4096 GS clock cycles have been generated, time to restart PWM P2OUT |= (BLANK_PIN); P2OUT |= (XLAT_PIN); P2OUT &= ~(XLAT_PIN); P2OUT &= ~(BLANK_PIN); // increase timer counter timerCounter++; if (timerCounter == 1) // this is also from RobG, except updateTLC is every interrupt because otherwise it is far too slow { // is it time to for next frame? updateTLC(); // data was already prepared by main loop when it was awake last time timerCounter = 0; _bic_SR_register_on_exit(LPM0_bits); // wake up main loop so that it can prepare data for the next frame } } void shiftOut(u_long val) { P2OUT &= ~LATCH; int i; for (i = 0; i < 16; i++) // iterate over each bit 16 { if(val & (1 << i)) { P1OUT |= DATA; } else { P1OUT &= ~DATA; } P2OUT |= CLOCK; // PULSE CLOCK P2OUT ^= CLOCK; } // } P2OUT |= LATCH; // PULSE LATCH P2OUT &= ~LATCH; } If anyone has any suggestions on how to improve this code, it will be greatly appreciated, because I've really hit a wall with it. I did think that using SPI P1.2 for UCA0SIMO instead of the shiftOut() function might be a solution but I don't know how to go about doing that. Keep in mind that soon I'll be using P1.1 for RXD. Cheers!
  18. Hello, I've just started learning the basics of launchpad programming thru the samples in energia. As an exercise, I'm trying to control the green LED intensity from the PC keyboard using code from the PhysicalPixel and Fade samples. I'm sending keyboard input via the Serial Monitor window of energia. The code successfully uploads to the msp430g2231 but I'm not getting the result I'm expecting. That is press 'H' and 'L' to increase and decrease the LED intensity. Here's the code: int brightness = 128; int incomingByte; // a variable to read incoming serial data into void setup() { Serial.begin(4800); // initialize serial communication: pinMode(GREEN_LED, OUTPUT); // initialize the LED pin as an output: } void loop() { if (Serial.available() > 0) { // see if there's incoming serial data: incomingByte = Serial.read(); // read the oldest byte in the serial buffer: if (incomingByte == 'H') { brightness = brightness + 5; if (brightness >= 255) { brightness = 255; } analogWrite(GREEN_LED, brightness); } if (incomingByte == 'L') { brightness = brightness - 5; if (brightness <= 0) { brightness = 0; } analogWrite(GREEN_LED, brightness); } } } The Communication>Dimmer sample also does not work for me. I'm under the impression that the cause of the problem is similar.
  19. In the past few month our older daughter woke up in the middle of the night once in a while. She didn't know whether it was late enough to get up and ready for Kindergarten. So she woke my wife and myself up and asked. Bad idea... I needed a solution for her without the need to read the clock. So I decided to build the "Sundial" clock for her 4th birthday. Well this idea came up maybe 2 month before her birthday. This brought me under pressure to complete it, but I had a good plan and it was ready the day before her birthday. It's driven by a MSP430G2553. It has one LED for the moon and one for the sun. The twelve LEDs for the clock are charlieplexed to four pins. The plexiglass is called endlighten and has some particles in it to enlight the entire area of the glass and not only the edges. The clock is off all the time. From 7am to 8am the sun and clock are on. From 6 to 7pm the moon and clock are on. Beside the moon is a capacitive sensing area behind the wood. It's just one button and turns on the clock and depending on the time 7am - 6pm the sun and 6pm - 7am the moon for 30 seconds. The video shows a bit of the details.
  20. I wanted to add a small fireplace to our christmas crib and thought it needs a 430 ;-) It was a pretty small project, but fun though. The LEDs are driven by a pseudo random generator. I think it looks kind of OK, the color could be more improved with the yellow to red ratio (I'll keep it on the backlog for next xmass ;-) ) I made a pretty simple one sided "Dremel" board to hold the MSP430G2230 and the LEDs.The 1.27mm pitch enables the pretty fast way to get a useable PCB and the four port pins are just enough for this.
  21. Is it possible to port this code from MSP430 to Stellaris? http://osx-launchpad.blogspot.cz/2010/11/breathing-led-effect-with-launchpad.html
  22. Hi, I've done a little searching and will continue to search more but here is what I posted on TI's website E2E. I have three LED projects in mind (at least 3). Project one. Drive multiple led arrays in alternating flashing and possibly solid burn patterns (3-4 hi powered 1 watt led per array ) Solid colors (basic end result amber warning strobes for plowing vehicle) Possibly higher wattage or more led for a flood light head. Would like dimming possible Project two similar concept but high powered rgb led's going to be used for party lights Project three similar to this product http://www.adafruit.com/products/306 It uses some Chinese chip LPD8806 and an "SPI" like protocol to drive each RGB led . The page also mentions shift registers which I believe are on the chip to allow each led to be individually addressable. I'd like to build a matrix but getting individual leds and making my own board instead of a strip. I still want leds individual addressable and fully color controllable. The whole stripe only uses 4 pins, power, gnd, data and clock. I'd also like to see about using higher power ones. I've been trying to read the data sheets but I'm not sure what would be the best drivers to use. I'd also prefer this was easy to implement with the least extra components as possible and for easy for someone knew to making PCB's and soldering anything smd. Rich
  23. Hi all, I am working on a project which uses 2 x (6 LEDs charlieplexed on 3 I/O lines). I chose for this setup instead of 12 LEDs on 4 I/O lines to up the dutycycle from 1/12th to 1/6th, hoping to increase the brightness. My timer ticks at 512Hz, so in 6/512 seconds all LEDs are cycled and the sequence starts over. The software is working fine, the LEDs are lit.... that is, when I turn off all the lights in the room I can berely discriminate lit from unlit. The LEDs shine so dim it's almost not noticable. I chose red LEDs, because they need the least voltage of all (only 1.8V). For now, I do not use any series resistor. I know the Lauchpad supplies 3.6 volts to the MSP430G2211, the datasheet is somewhat cryptic on that matter. The datasheet says that at a load of 6mA per pin (the total load of 48mA) VoutHi >= Vcc - 0.3V and VoutLow <= Vdd + 0.3V. Now I'm not sure what to make of that, but I think the MSP430 does not supply enough current for my application. I have seen several charlieplexing projects, also on the MSP430. How come my LEDs barely shine at all? What should do the trick? Thanks, roadrunner.
  24. Hey, just saw this on H'a'D: Nothing new there, basically only 8 leds, an msp430, a battery and some pcb, but i really like his design More Details
  • Create New...