Jump to content


  • Content Count

  • Joined

  • Last visited

Everything posted by basil4j

  1. Hi Guys. Thought I'd responded but its not here! Yeah, I knew about the 2 vectors, CCR0 vector and the everything else vector. TAxCCR0 and TACTL interrupts are so similar in reality that I thought they were the same lol all clear now thanks! Sent from my SM-G900F using Tapatalk
  2. Oh right, so I dont need to enable TAIE on both TA0CCTL0 (the one I want) and TA0CTL, just on TA0CCTL0? I am not using TA0CCTL1 interrupts.
  3. Gah, that bit is on a new line, silly forum forumatting
  4. Oh, yes I did. All other interrupts work.
  5. Hi All, I am trying to generate a PWM output using TimerA, which I also want to trigger an interrupt at TACCR0. There is nothing in the manual that suggests I cant do this, but for some reason the interrupt is not firing, even though PWM is working as expected. Here is how I set it up, can anyone spot anything obvious? #define PWMOUT BIT2; P1OUT &= ~PWMOUT; // output 0 to start with P1DIR |= PWMOUT; // set as output P1SEL |= PWMOUT; // select timer OUT TA0CCR0 = PWM_FREQ_CLKS - 1; TA0CCR1 = PWM_DUTY_CLKS; TA0CCTL1 |= OUTMOD_7; // setup pwm output mode TA0CCTL0 |= CCIE; // ena
  6. Maybe i'm misreading, but I thought the MSP430 analog input range was 0 - Vcc not 0 - 2.5V? ADC10CTL0, SREFx = 000 sets Vref+ to Vcc, and VRef- to Vss
  7. Ok I've been doing some thinking/testing and I think the internal pullups will work. A question remains however. What effect will the voltage divider which precedes the pullup have? I'm trying to nut it out, and all I can conclude is that the low resistance resistor in the VDiv which is attached to ground will fight with the high resistance pull up, the result being the input is pulled low.
  8. Hi All, Been a while since ive posted, but have picked up a little BLDC project again. I have designed a PCB for this BLDC controller im making, but have put pull-down resistors on the hall sensor inputs instead of pull-ups, which are what I need for the particular motors I want to drive. Stupid mistake. The manufacturers own BLDC controller uses 20k pull ups on their controllers, and I note the MSP430G2553's internal pull ups are 35k (20k-50k). If i were to just leave off the pull-downs on my PCB and use the internal pull ups, are they generally good enough to do the job? Ive
  9. Ahh I see, thanks oPossum. On a side note, possums in the USA look much cuter than possums in my country, where we shoot them for ruining everything haha
  10. Ok ill try to outline my application a bit more. My customer is building a piece of machinery for a fertlizer truck which requires 4 BLDC motors to spin an attachment (one device per motor). I cant go in to too many details as i'm under NDA's and patents are pending etc etc, but from the motors point of view the attachments are effectively flywheels. The role of my controller is simple. There will be 1 per motor. When power is applied (24VDC from trucks batteries), ramp the motors to 500RPM in 2 seconds and stay there. When power is removed, motors can coast to a stop. That is all.
  11. Thanks for all that! I'll put together a summary of the application when I'm not on my phone and post a schematic. Sent from my GT-I9300 using Tapatalk
  12. Thanks, so if I simply add a low value resistor before the TVS I should be ok? I figure this will protect the current sense IC also so I wouldn't need anything like in the current sense datasheet I linked a snippet of? Would this be the correct thinking?
  13. Very weird, im having serious issues trying to reply. Whenever I reply with an embedded image, the post dissapears?... Hi Zeke, Not yet, alas the opportunity for prototyping is rare with this project. This is being retro fitted to a fertilizer truck down the other end of the country, which I don't have access to. I have played around a bit with the layout and the traces are now only 10mm long and surrounded by nice ground pours so it shouldnt be a problem. My next question is about TVS diodes I had planned on simply putting a TVS diode across the battery input terminals, before the sens
  14. Hah all good For what its worth, I have a ground pour on all layers and have tried to space susceptible traces out enough that the ground pour surrounds them. 0.1uf decoupling on all power pins on all IC's, a couple of larger ones on the various LDO's. All diodes and caps on the battery or 12V power supplies are rated to 50V, all on 3.3v are rated to 16V. I have put an TVS across the battery input terminals. Don't know much about them but I think I got it right The controller will be connected to the motor by about 5cm of cable, both inside the same sealed enclosure. The only ext
  15. Hi All, With the help if lgbeno I am laying out an MSP430 based BLDC controller. I wish to add over current protection by taking the output from an INA199 current sense ic into a comparator input on the MSP430. Due to space restraints and general layout niceness I have the MCU diagonally opposite the power input, beside which I have located the shunt resistor. The board is small, 45mm x 35mm so this may be an irrelevant question. My question is: Is it best to locate the sense ic near the MCU, thus reducing the length of the Vout trace but increasing the length of the V
  16. About 100 per year is an estimate. I'm in New Zealand, so our volumes aren't quite as high as most other countries!
  17. There is nothing particularly secret about this project. I'm in sales, but I have a customer who is somewhat lacking in electrical knowledge ask me to create a small BLDC controller for him so he doesn't have to use the awesome, but massively over-speced (for his application) controller from Maxon. This wont be commercialised beyond that so happy to contribute where I can. I am a bit of a novice, and really only know enough to adapt what I read online from projects like yours so hopefully I can add something. I planned to use the MSP430G2452 to keep the size down*, but I hadn't thought
  18. Oh nice haha. This is a bit off the subject of the original thread, but seeing as it was pointless anyway ill ask anyway My customer is using the 48V version on a farming truck (4 of them). How do you think the components you have chosen would last in an industrial situation with lots of vibrations etc? Reliability is the key for my customer so i'm wanting to keep operating temperature down and over spec the FET's. I was planning on using FETs and a FAN7388 driver IC, but it looks like you used NPN transistors?? EDIT: Just noticed your PRO version used a FAN7888 which must be simil
  19. Hi there! Totally agree, see my edit at the top of the post I have bookmarked your project. Super useful thanks! I'll likely have a few questions but that answers a few of them Sent from my GT-I9300 using Tapatalk
  20. Hi All, ***I just answered my own question... InstaSpin isn't for use with hall sensors.*** I have a little commission in working on and am wanting to use an MSP430 in it. My customer wants and extremely simple BLDC controller to drive a Maxon EC 90 Flat BLDC motor in a farming application. The functionality will be very simple. Power comes on, motor ramps up to 500RPM and stays there. The motor has hall sensors which I will use to keep the speed constant under load. Power turns off, motor coasts to a stop. Is InstaSpin capable of such a simple task or is it more design
  21. Oh haha thats easier to read
  22. It might be different, but on the 430FR5xxx family, you simply read TAxR or TBxR, x being the timer number. So TA1R in your case. Again, this might be different for the G family, ive never used it and am new to the MSP
  23. Hi Chicken, Above certain altitudes, the lapse rate changes (which is part of the exponent of the POW), so I was considering making 3 lookup tables, 1 for each lapse rate. This would somewhat achieve the same as what you are suggestion. Maybe I can put less samples in the low alt table, and more in the higher ones. Altitude (m) Lapse rate =1/x (exponent) 0->11000 0.0065 some calculations 0.190267 11000->20000 0 some calculations 0 20000->32000 0.001 some calculations -0.02927 Whats the stor
  • Create New...