-
Content Count
63 -
Joined
-
Last visited
-
Days Won
5
Reputation Activity
-
GG430 got a reaction from JK2308 in Nano project: fix an IKEA toy
Think I got it, looks much better now, no sunglasses required any more when looking at the plates ;-)
Good point with the time, I added it to the P1 ISR.
Small drawback of the bit-banged PWM is that it gets interrupted when pushing the other button.
But rewiring to the timer outputs is too much change on the original board, but might make sense if you do a new PCB.
The VersionLocation is just a version marker I like to be placed one work above the interrupt vectors. I do it in all my codes. Once in a while it comes in handy when downloading the code from a unit later.
That's a memory dump for example:
FFD0 FFFF FFFF FFFF FFFF FFFF FFFF FFFF 0101
FFE0 FFFF FFFF E4F8 FFFF FFFF FFFF FFFF FFFF
FFF0 FFFF FFFF 64F9 FFFF FFFF FFFF FFFF 00F8
#include <msp430f2012.h> #define LED1 BIT4 #define LED2 BIT5 #define KEY1 BIT7 #define KEY2 BIT6 #define ON 1 #define OFF 0 unsigned char LEDstate1; unsigned char LEDstate2; unsigned int time; #define Version 0x0101 #define VersionLocation 0x0FFFF-RESET_VECTOR-3 __root static const int x@VersionLocation = Version; int main(void) { WDTCTL = WDTPW + WDTHOLD; P1OUT = 0; P1DIR = BIT0+BIT1+BIT2+BIT3+LED1+LED2; P1IES = KEY1+KEY2; P1IFG = 0; P1IE = KEY1+KEY2; P2SEL = 0; P2REN = BIT6+BIT7; if(CALBC1_1MHZ != 0xFF) { BCSCTL1 = 0; BCSCTL1 = CALBC1_1MHZ; DCOCTL = CALDCO_1MHZ; } BCSCTL3 |= LFXT1S_2; //VLO 2 ACLK IFG1 &= ~WDTIFG; IE1 |= WDTIE; __enable_interrupt(); while(1) { __low_power_mode_4(); __no_operation(); while(1) { if(LEDstate1 == ON) { P1OUT |= LED1; } if(LEDstate2 == ON) { P1OUT |= LED2; } for(unsigned int j=0;j<0x250;j++){} if(LEDstate1 == ON) { P1OUT &= ~LED1; } if(LEDstate2 == ON) { P1OUT &= ~LED2; } for(unsigned int j=0;j<0x500;j++){} if((time>=100) || ((LEDstate1 == OFF) && (LEDstate2 == OFF))) // Actual seconds is roughly time x 3 { time=0; WDTCTL = WDTPW + WDTHOLD; LEDstate1 = OFF; LEDstate2 = OFF; P1OUT &= ~(LED1+LED2); break; } } } } /******************************************************************************/ // Interrupt Routines /******************************************************************************/ #pragma vector=WDT_VECTOR __interrupt void ISR_WDT(void) { IFG1 &= ~WDTIFG; // Clear WDT interrupt flag time++; } #pragma vector=PORT1_VECTOR __interrupt void Port_1(void) { for(unsigned int i=0;i<2;i++){for(unsigned int j=0;j<0xFFFF;j++){}} //Debounce if(P1IFG & KEY1) { LEDstate1 ^= 1; P1OUT &= ~LED1; } if(P1IFG & KEY2) { LEDstate2 ^= 1; P1OUT &= ~LED2; } P1IFG = 0; time=0; if(1 == LEDstate1 | LEDstate2) { WDTCTL = WDTPW + WDTTMSEL + WDTCNTCL + WDTSSEL; // watchdog counter mode, ACLK, /32768 _BIC_SR_IRQ(OSCOFF+CPUOFF+SCG1+SCG0); } }
-
GG430 reacted to roadrunner84 in We've got babies
As of last Friday I'm the proud father of three children! My oldest daughter is three years of age and my son and youngest daughter are only 5 days young.
As a result (you can imagine) I won't be able to bug you guys a lot ;-)
-
GG430 reacted to multivac in The Cramp! 430 powered desktop crane lamp
Hey guys, so I`ve been working on this project for a while now, and wanted to show it here because you are a cool bunch.
if i mess up, the pics are too big, or whatever, im sorry. let me know and ill fix it asap.
the title is pretty explanatory so here are some pics of the thing, and the associated mess (if i actually manage to attach pictures correctly)
i know there is nothing particularly interesting in this from the microcontroller point of view, but maybe someone will like it.
its sort of based on a liebherr lr1750 crawler crane in case anyone is interested. it is controlled with an ir remote kindly donated to the project, mostly made from scrap from my junk bin and some chips i got from the VERY generous TI`s sample program. The base, for example, is made from an old hdd, and the hole thing is screwed to, and pivots around, the main bearing.
Some stuff i had to buy though, like the leds.
I was thinking what could I do with a lot of solid conductor wire i pulled from the walls in my house when i changed the [way too old] electrical installation. i thought a lattice structure would be fun, and i have to say, its amazing how rigid the thing got. i also wanted to do some switching led driver experimenting. I used a TI TPS61199 led driver with 32 "5050" leds, that have 3 chips per package, so its 96 leds in all, at 17 mA each. the leds are mounted on a structure that is supposed to resemble a section of Eero Saarinen`s twa flight center. a sort of rebar core type thingy for the roof.
i wanted to do a solid thing for the lamp, but it proved somewhat hard, i still might though. I
-
GG430 got a reaction from spirilis in The MSP430 on the moon
True but no bare die offered on CC430. Kind of makes sense too as it adds another dimension of required support...
Anyways at least from this perspective the project description makes sense, I would't be too surprised if this project turns out to be a hoax ;-)
-
GG430 got a reaction from cubeberg in The MSP430 on the moon
True but no bare die offered on CC430. Kind of makes sense too as it adds another dimension of required support...
Anyways at least from this perspective the project description makes sense, I would't be too surprised if this project turns out to be a hoax ;-)
-
GG430 reacted to semicolo in Yet another music box simulator
I finally got a small video and a photo of the closed box, enjoy:
http://www.youtube.com/watch?v=sh77g58Do_I
-
GG430 got a reaction from bluehash in Capacitive Touch PCB layout
Depending on what you are looking for, IMHO the TI Touch BP layout for the wheel is not very good because of the interlaced wheel finger portions, it might look cool though ;-)
One of the best guides to sizes, pitchs and layout I found is this one:
http://www.semtech.com/apps/filedown/down.php?file=capacitive-touch-sensing-layout-guidelines-an.pdf
Specifically the wheel is working much better than the Touch BP because it's a well shaped layout. Not as fancy though ;-)
-
GG430 got a reaction from mbeals in Decoding TI's pin packages
The just polished MSP430.com landing page has now the part number decoder too.
http://www.ti.com/lsds/ti/microcontroller/16-bit_msp430/getting-started.page#pndecoder
-
GG430 got a reaction from bluehash in Products using MSP430
This one is literally making my day since a while ago.
It's an alarm clock controlled by your sleep phase.
When I first heard of this I thought it's just another way of alarm clock with better advertisement.
Anyway I tried the same technique with "Sleep as Android" and couldn't really believe it works as good as it did. Waking and getting up was much easier.
So I bought the AXBO sleep phase alarm clock.
http://www.axbo.com
I also found a blog entry about messing with the internals.
http://www.openbeacon.org/Openbeacon_Axbo
Didn't even know it uses a 430 until then. Even better on the version for 2 people they use 3 430s :-)
An MSP430F436 in the clock and a MSP430F1101A in each of the transmitters.
I already bought one of these NRF24 boards on ebay to mess with it a bit. Let's see what comes out of this.
-
GG430 reacted to zeke in STM32L vs. MSP430F5: What's left for MSP430?
I have been working with the STM32F051 device this past year and I have got to say that it is an amazing processor for the price.
I tried very hard to convince my project manager to design in an MSP430 into our system but he (patiently) repeatedly showed me how much processing power is available per milliamp and per dollar.
In the end, if you are designing a big system, there is no contest between an M0 and an MSP430. The M0 creams the MSP430.
BUT the price you pay for a device is not the only cost you will face!
The complexity of an M0 is a magnitude larger than the MSP430. That means that software development is costlier. We agonized over a software design set for the M0. In the end, Atollic was chosen because it got us across the finish line faster than any other option. I personally wanted to use Rowley because of familiarity but the path to success was a harder path to travel and time was of the utmost essence.
In the end, to tinker's, I believe the argument between MSP430 and M0 is not a big deal. So, to us on the board, I wouldn't stress out about this topic.
It is more important to explore, experiment and enjoy the sense of discovery and accomplishment when we get something going.
-
GG430 reacted to ILAMtitan in Vetinari's Clock
I figured you guys might be interested in some of my tinkering with the Launchpad. Hopefully by putting a few of my projects up here it will also keep me accountable for finishing them.
This is one a cobbled together a few months ago. It's been up on the MCU projects page on E2E, so you might have already seen it: http://e2e.ti.com/group/microcontrollerprojects/m/msp430microcontrollerprojects/664670.aspx
PROJECT OVERVIEW
The Vetinari clock is from a book series known as Discworld, where Lord Verinari has a clock in his waiting room which has an irregular tick. The idea of the clock is to add a sense of unease and anxiety to anyone in the waiting room since their brain doesn't filter out the ticks like a normal clock. Here's a video to get a better idea of the result. The tick is actually a lot louder in person.
SOFTWARE DESIGN
To accomplish this task on a 430, we create an array of possible time frames to tick the clock, and parse through it at 4Hz. The array is 32 entries long, so it equates to 32 seconds in the real world. By randomly setting 32 of the elements high, we create a timing sequence. A high element will generate a tick of the clock. This means a second on the clock can be as little as 250ms, or as long as 24 seconds, and still keep accurate time. Check the attached software too see how it's all done; I did my best to comment it up. main.c
HARDWARE DESIGN
The clock coil is driven via an alternating polarity pulse. The easiest way to change a load's polarity with an MCU is using an h-bridge.
The schematic shown is a simple implementation using two NPN and two PNP transistors. I had the transistors and drive resistors laying around, so this part was easy to cobble together (along with the half used battery holder). It would be easy to use a single IO pin per side of the bridge, but the transistors fit better onto the launchpad, as shown in the image. To add the driving resistors in series, I cut a small gap in the traces, scrapped off the solder mask on either side to make pads, and put down a small SMA resistor. It's not pretty, but it works.
In the clock mechanism, there is a small control board with a crystal and epoxy glob IC that normally runs the clock. I just ripped that out and directly attached the coil to the h-bridge.
The resulting clock is actually more maddening than I expected in a quiet environment. By using 3V rather than the 1.5V that the original movement used, the ticks are much more pronounced and do an excellent job of ruining a person's calm.
-
GG430 reacted to JWoodrell in 43oh PCB Logo
hehe, oh well, maybe the rocket will be useful to someone.
here is the circuit long logo vectorized
again, had to zip the .PSD, the vectors are in two layers because of clipping between the circles and lines... but it works
430logo_circuit_long.zip
-
GG430 reacted to Fred in LaunchPad Proto Plate- from Ponoko
Well it took me a while and a bit of experimenting, but here's the final result in clear and black acrylic. I shuffled the Launchpad logo around so it wouldn't be covered by the corner pieces and added the 43oh.com logo by @@JWoodrell. The quality on the raster engraving is a little inconsistent on the narrower 43oh.com logo but it's the best I can manage at the moment on my cheap laser. Photographing the black one was tricky as it's very glossy. It was like photographing a mirror.
The corner pieces glue on very nicely with superglue so I think it'll be easiest if people stick the corners on themselves. That gives the option of using for the Stellaris (or the Fraunchpad will fit but there's no guide engraved for this). I've not got a C2000 so don't know if that will fit. It also means you can go left or right handed without blocking the USB port.
I'll send them off to @@bluehash on Monday. If anyone in Europe want's one then shout and I can mail it directly from the UK.
-
GG430 got a reaction from sirri in Is it just me or tonight TI doubled LaunchPad price?
For the guys in Germany or Europe, Watterott has over a hundred of Launchpads V1.5 left for 4.76EUR.
http://www.watterott.com/de/MSP430-LaunchPad-MSP-EXP430G2
Shipping is 3.50EUR in Germany.
-
GG430 got a reaction from mbeals in Decoding TI's pin packages
True, this is kind of a confusing system. cde captured your examples. MSP430 specific there are a couple others.
MSP430F2274IDA
MSP430F2274IDAT
MSP430F2274IDAR
MSP430F2274TDA
MSP430F2274TDAT
MSP430F2274TDAR
DA = Package (http://www.ti.com/sc/docs/psheets/mechanic.htm)
I/T = -40 to 85 DEG C / -40 to 105 DEG C
S = Special Temp Range, like MSP430L092SPW is 0 to 50 DEG C
_/T/R = Tube or Tray delivery / Mini Reel 250 pcs. / Large Reel, depends on package size, usually 2500 pcs.
MSP430F2274MDATEP
M = Military -55 to 125 DEG C
EP = Enhanced Product
Q1 = Q100 Automotive Qualified
The MSP430s are all lead free, therefore no differentiation.
-
GG430 got a reaction from cde in Decoding TI's pin packages
True, this is kind of a confusing system. cde captured your examples. MSP430 specific there are a couple others.
MSP430F2274IDA
MSP430F2274IDAT
MSP430F2274IDAR
MSP430F2274TDA
MSP430F2274TDAT
MSP430F2274TDAR
DA = Package (http://www.ti.com/sc/docs/psheets/mechanic.htm)
I/T = -40 to 85 DEG C / -40 to 105 DEG C
S = Special Temp Range, like MSP430L092SPW is 0 to 50 DEG C
_/T/R = Tube or Tray delivery / Mini Reel 250 pcs. / Large Reel, depends on package size, usually 2500 pcs.
MSP430F2274MDATEP
M = Military -55 to 125 DEG C
EP = Enhanced Product
Q1 = Q100 Automotive Qualified
The MSP430s are all lead free, therefore no differentiation.
-
GG430 reacted to cde in Decoding TI's pin packages
http://focus.ti.com/quality/docs/gencontent.tsp?templateId=5909&navigationId=11753&contentId=5055
E4 and g4 refer to lead free packaging and molding options (see link).
R is normally for Large Tape & Reel (3000) vs the non-r 250 reel.
And they used to have some for temperature rating, but they pretty much phased those out a few years ago.
-
GG430 reacted to spirilis in If we judge all those Arduino clones out there by cuteness, this one surely will win
It's not bad! You just have to spend 9 months or more figuring it out though....
-
GG430 reacted to RobG in MSP430G2955 Launchpad Development
Felt little nostalgic looking at that 40 DIP, so I took out my 80's treasures box
-
GG430 got a reaction from pine in If we judge all those Arduino clones out there by cuteness, this one surely will win
The Android shape is really kind of cute. :thumbup:
Not sure if I wanna call the Olimex BSL board cute, but I think it's cool, for obvious reasons ;-)
https://www.olimex.com/Products/MSP430/BSL/MSP430-BSL/
-
GG430 got a reaction from bluehash in If we judge all those Arduino clones out there by cuteness, this one surely will win
The Android shape is really kind of cute. :thumbup:
Not sure if I wanna call the Olimex BSL board cute, but I think it's cool, for obvious reasons ;-)
https://www.olimex.com/Products/MSP430/BSL/MSP430-BSL/
-
GG430 reacted to JWoodrell in MSP430G2955 to valueline DIP20 adapter
I added 2 0402 resistors 0 ohm to tie the AVCC and AVSS to their D cousins, so it'll be easy to split apart if needed in the future. They're being sent off now.
this is how it all fits together (mocked up with a correctly sized section of the 0.6mm thick board from Elecrow) on a launchpad itself
it clears the jumpers, easily, and there is still a gap around 0.75mm above the top of the tssop beneath a standard height boosterpack.
-
GG430 reacted to JWoodrell in MSP430G2955 to valueline DIP20 adapter
Ii whipped up an adapter to be able to take a G2955 and plug it into a valueline layout DIP20 setup, so it can be a drop in replacement for existing dip20 projects, but take advantage of the larger capability of the G2955. I extended it out into more of a DIP38 package, but you don't have to put headers on the extended layout and use them only as breakout pins on the board.
I am sending them off to elecrow in blue boards.
I am going to be building mine with flat pins so it can plug into the dip20 sockets, cause those don't like accepting the square "header" pins
[edit] attached the latest files to the last post[/edit]
-
GG430 reacted to JWoodrell in New (soon to be) valueline chip. MSP430G2955 56kb Flash 4kb Ram!
similar to that generic adapter, i whipped up an adapter to be able to take a G2955 and plug it into a valueline layout DIP20 setup, so it can be a drop in replacement for existing dip20 projects. I extended it out into more of a DIP38 package, but you don't have to put headers on the extended layout and use them only as breakout pins on the board.
I am sending them off to elecrow in blue boards.
I am posting the gerber, and board / schematic files in their own thread for discussion
-
GG430 reacted to Mybuster in MSP430 Spinning Led
Hey forum! 8-)
I have built a rotating LED display allows you to write a text, or even smaller figures.
You can read more here: http://www.hobbielektronika.hu/cikkek/msp430_spinning_led_display_a.html
:grin: Find videos here:
Visit my website thanks. http://mindenamielektronika.5mp.eu/web.php?a=mindenamielektronika :wave: