Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won

  1. Apart from motor drives, digital power supply control is a big use case. Also useful to drive haptic feedback devices ("vibrators") for gaming purposes. I'm actually working one one of those, albeit with a dsPIC processor. BTW, if you own a high performance PC, there's a decent chance there's at least one C2000 in it for the cooling fan drive. More on DIY hobby electronics, a closely related application would be drones and other hobby aircraft.
  2. The pinout convention for a 3 pin SBW header is TST, RST, GND. Pretty minor, though, so if you already settled on the other way, it's OK. Or add another GND hole on the other side of the header so you can choose which side to put the ground when you solder in the header.
  3. Any reason it doesn't have a PWM output? On/off relay control is so last century.
  4. The volume control is a rotary encoder on the front panel. The motor was left in simply because it was too difficult to remove. Once the top cover is screwed on, the entire unit is quite well shielded. That "freestyle" construction method was good enough for Jim Williams. There are more pictures on the Github, including schematics, output waveform comparisons, and even a picture of my best friend and I holding the unit.
  5. I recently got a renewed interest in HD audio and decided to work with my best friend on an open source HD DAC. I selected MSP430 since it's easy to work with using Energia and an Arduino is overkill for what I'm using it for. (I normally use PICs, but then my friend, who is new to embedded programming, would have a hard time contributing.) https://github.com/NiHaoMike/OpenDAC-HD
  6. Add a delay (200ms or so) before exiting the ISR to mask switch bounce.
  7. There are cheap PS/2 to USB converters out there, which would mean that you only need to implement PS/2. There are also chips like the Maxim MAX3420/MAX3421 that allow interfacing to USB over SPI, but beware that USB is a very complex protocol. Or take apart a ball mouse and connect some GPIOs to the quadrature encoders and buttons. That is by far the easiest solution. In theory, it would work for keyboards as well, but all the connections (many GPIO expanders) would get messy very fast.
  8. Here is the entire project. The MSP430 does acknowledge the address byte, but locks up afterwards. Even if the address received is not correct, it needs to handle it properly since the I2C bus is shared with some other devices. dcdc.zip
  9. Set the output low, check if the input is low after some delay, set the output high, check if the input is high after some delay. Repeat until a match fails.
  10. I changed from "interrupt void" to just "void", now it just infinite loops in I2C_Start and locks up the bus when I try to communicate with it. Is it necessary to manually clear the interrupt or release the clock?
  11. I now got it to respond, but the receive and transmit ISRs are still not triggering. Can you show me an example of using the USCI as an I2C slave in a Grace project?
  12. /* * ==== DO NOT MODIFY THIS FILE - CHANGES WILL BE OVERWRITTEN ==== * * Generated from * C:/Program Files/Texas Instruments/grace_1_00_01_83/packages/ti/mcu/msp430/csl/communication/USCI_B0_init.xdt */ #include /* * ======== USCI_B0_init ======== * Initialize Universal Serial Communication Interface B0 I2C 2xx */ void USCI_B0_init(void) { /* Disable USCI */ UCB0CTL1 |= UCSWRST; /* * Control Register 0 * * ~UCA10 -- Own address is a 7-bit address * ~UCSLA10 -- Address slave with 7-bit address * ~UCMM -- Single master environment. There is no other ma
  13. In my senior design project, I have an Android tablet connected to a "Kelly Wu" USB host board (with a PIC24FJ64GB002 on it) that allows the tablet to be an I2C bus master. Connected to that bus is a MSP430G2553 that is used for advanced control of a DC/DC converter (MPPT, status reporting, parameter tuning, etc.). I'm having some problems with getting the MSP430 to act as an I2C slave. Checking the lines with a scope reveals that the MSP430 is not responding at all. main.c: (Some irrelevant parts like the timed ADC interrupt are left out for clarity.) #include #include #define DAC P
  • Create New...