Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by NatureTM

  1. solved in IRC :-) thanks Rickta59! In usiTx(), replace "while(USICNT & 0x1F);" with "while(!(USIIFG & USICTL1));" Rickta found this in some example code. The only conclusion I can draw is that reading the USICNT interferes with its countdown. Any thoughts?
  2. Hey guys, I've got a problem with the USI I'm having trouble solving myself. When I send data out through the USI, I am getting extra clocks out. I.E. I set the usicnt to 10, the data shifts out normal, but after 10 bits of data out, the clock output continues to send a couple extra pulses. The number of extra pulses seems to vary between +1 through +4. Here's the code: the commented out stuff is mostly things I've tried to solve the issue. #include "msp430g2231.h" #include #define PIN_CS_0 BIT4 #define COLUMNS 32 #define HT1632_CMD_SYSDIS 0x00 /* CMD= 0000-0000-x
  3. That's cool! I don't know anything about amateur radio, so all I'm familiar with are old videos of people tapping on a switch.
  4. Update: This is still a work in progress, but I feel like showing some changes I've made. I wanted to make the synth polyphonic and try using a DAC, while keeping the code small enough to still fit on a G2231. For the DAC, I chose the MCP4725. I picked this one because it was the cheapest DAC-on-a-breakout from SparkFun. http://www.sparkfun.com/products/8736 I used some TI I2C example code to communicate with it. Since the I2C communications are using the USI, I needed a different way to get the serial MIDI data from the MIDI controller. I set up TimerA in capture mode, and trigg
  5. This is great! For some reason, I was under the false impression that Launchpad didn't have serial communications through USB. I feel like a kid with a new toy! Thanks! P.S. Just a heads up, I initially plugged the LP into a USB hub and the echo didn't work. Connecting directly to my box fixed the issue.
  6. +1 on random errors where I have to unplug/replug the launchpad into usb to upload/debug. At first I thought it might be related to in-circuit programming quirks, but I've since had it happen with a launchpad by itself. It's not a huge deal, just a common annoyance.
  7. NatureTM


    I guess you're right. I've been doing stuff with sound/ultrasound recently so it seems significant for me at the time, but I guess in most applications, PWM at a high enough frequency is good enough.
  8. NatureTM


    Excited! Feature highlights: 20PDIP for Launchpad 4 factory calibrated dco presets Two 16-Bit Timer_A With Three Capture/Compare Registers Up to 24 Touch-Sense-Enabled I/O Pins (but 16 on the PDIP) USCI instead of USI 16K flash on the G25xx series 512B RAM on the G25xx/G24xx Comparator ADC10 I'm most excited about the USCI. Wish there was a DAC. Is there a reason it's so rare to see in-package DAC's with microcontrollers?
  9. I'm assuming you don't have an interrupt service routine coded. Since you have the ADC interrupt enabled, when the ADC finishes, the cpu will exit LPM0 and the program will jump to where the ADC10 ISR should be. If there's nothing there, you'll get unexpected behavior. You could either put something in the interrupt vector, or don't enable the interrupt. Also, for "k = (ADC10MEM / 1024) * 8;" the ADC1MEM / 1024 is integer division, and the result is rounded down to the nearest whole number. The result of ADC1MEM / 1024 will always be between 0 and 1, but rounded down, so always 0. Yo
  10. Apparently the acquisition will amount to TI controlling 17% of the analog market. Unless there's quite a few chips that are exclusive to TI and National, it should be cool for now. It does look like National is pretty profitable and would be much more so if TI were to take over administrative operations: TI National SG&A % of revenue 10.9 19.3 http://www.ti.com/corp/docs/investor/compinfo/ti-national-ir-presentation.pdf Despite what TI says, I doubt they will want to continue producin
  11. I released my first Android app about a week ago (3/26/11). It was a first project for getting my feet wet, but it turned out fairly well. I could probably help out on the Android end. Here's my app: https://market.android.com/details?id=com.halenka.lock&feature=search_result It took me awhile to make. I didn't have much experience with graphic design or gui coding. I think I'm up for a new challenge.
  12. Argh! You got me! I even thanked you. I take that back!
  13. Hey SugarAddict, what I told you on IRC last night was completely wrong. I was confused and talking about how the MSP430 reset pin is wired. Sorry!
  14. I just saw the article. Nice! Funny how when the author of the article makes a mistake on HaD, the audience loses all focus on the project. It seems like HaD readers really have the "kick 'em while they're down" spirit. I'd hate to write for HaD.
  15. I liked that you picked a relatively complex project. Good work!
  16. Hi TopHat! I'm trying to decide if a countdown to a 50'th birthday is something fun for, or a way to torture, your uncle. The fact that the LCD fits so nice is a good tidbit of information.
  17. Just the launchpad. Speaker negative to LP ground, and speaker positive to Timer A CCR1 output pin.
  18. Hey thanks doc, but I already bought the RFID keychanins from Parallax's site.
  19. Really nice. I bookmarked your page for when I'm ready to start tinkering with my evalbot. Thanks!
  20. I've got a couple snippets that are similar to arduino functions. I just assumed this stuff was already out there. Here's what I have for millis and delayMillis: #include "msp430g2231.h" #define MCLK_FREQUENCY 1000000 #define WDT_DIVIDER 512 const unsigned long WDT_FREQUENCY = MCLK_FREQUENCY / WDT_DIVIDER; volatile unsigned long wdtCounter = 0; unsigned long millis(){ return wdtCounter / ((float)WDT_FREQUENCY / 1000); } void delayMillis(unsigned long milliseconds){ // todo: handle rollover unsigned long wakeTime = wdtCounter + (milliseconds * WDT_FREQUENCY / 1000); w
  21. This is my hobby! What I need is exercise. :-) I've been telling my girlfriend to distract me more!
  22. Could you have several preset time constants coded and use a switch to toggle between them at the beginning of, or during runtime? You could also turn a knob connected to a potentiometer and change the timing during runtime with that. I don't mean to sidestep your question, but the method you're suggesting just seems overly complicated and unusual, and I don't see it being the best solution except in some rare and very specific cases. You may very well be dealing with one such case, but I feel like I should mention some more common and possibly more practical solutions.
  23. My girlfriend and I both have flash cartridges for our DS'es. Discovering that wifi ftp server for the DS was really useful when I was trying to do some development on the DS. It's amazing how many games fit on an sd card. I didn't realize they sold them on DX. I probably could have saved a bunch of money. Speaking of DX, they always have very cheap high-(milli)wattage laser pointers, but they don't ship to the US. Does anyone know a source with comparable prices?
  24. Nah, I was just going to see when they came and left the litter box and send it to twitter. Maybe have some special messages if they're in there for awhile. It's just a goofy project to give myself a little entertainment.
  • Create New...