Jump to content


  • Content Count

  • Joined

  • Last visited

About GeorgeIoak

  • Rank
    Advanced Member

Profile Information

  • Gender
  1. This is one of those times when I hate that TI has so many different MSP430 devices to choose from! Looking back I see now that there are only 6 devices which have this special Timer D (MSP430F51x1, MSP430F51x2) and looking at that families datasheet I see on page 43 that the "Local Clock Generator Frequency", fHRCG, goes all the way up to 1074MHz (826MHZ typical) and the "Trimmed Clock Frequencies", fTRIM, is the 256MHz that I guess I read about. Right on page 45 is the "Input Capture and Output Compare Timing" specs and it shows tTD, (Timer_D input capture timing, minimum pulse duration
  2. Well if nothing else I'm going to have a few boards to play with in the next few days. I somehow missed that there was a LaunchPad board for this series so I just ordered one of those. Before that I found a low cost board from Olimex that looked interesting. As if that wasn't enough I also picked up one of the C2000 LaunchPad boards since those 200MHz parts should be able to sample fast enough for me. In my application I'm going to be actually counting pulses as the signal isn't going to be a nice fixed frequency. It may turn out that I might not have to catch every pulse so we'll see once
  3. Looks like I'll have to design my own board or order @@spirilis PCBs because I didn't see stock on his board. I also found another open source design, http://www.rev0proto.com/wiki/index.php/MSP430F5510 that I might take a look at. I'm curious about your comment on it not going higher than 48MHz. I thought the whole purpose of Timer D was to go up to 256MHz on the output.
  4. I was looking at doing some further testing on this. Out of curiosity what board did you use which had the MSP430F550x? I also wonder if we used a 2nd MSP430F550x to generate the input frequency we could test higher than 48MHz? I ordered some samples of the MSP430F5172IDAR but I couldn't find any low cost eval boards, only this, http://www.ti.com/tool/msp-fet430u40
  5. While debugging my code this weekend I decided to step back and try to debug certain aspects of it. TI's Resource Explorer is a great tool with plenty of example code to look at and review. I was having issues with my WDT routine so I thought I would double check running one of the examples that was released, to be specific, I was interest in the WDT_02 example which can be seen here. The code was not working which really left me wondering since I assumed that any code published BY TI as an example MUST have been checked to see if it actually worked?! Well as it turns out the code does NOT
  6. I worked on this over the weekend but didn't make much progress. I updated the code as I made some minor cleanup changes so there's a new commit on GitHub. I added a statement in the WDT ISR to toggle the LED (P1.0, red LED on LaunchPad). Running the code in the debugger does not toggle the LED yet if I pause execution, step through some lines, and then start the code again the LED changes but only once. The Port1 ISR does not appear to be working either so it seems like there's a problem with how my ISR's are being handled. Unfortunately I'm left still scratching my head though...
  7. OK, ignore my comment about the ADC14MEM0 not getting updated. It helps if you turn on your power supply and apply a voltage to the ADC pin before you take a measurement! I looked at the original project's code and noticed they have the variable defined as static but if what you're saying is true it should have been defined as volatile. Unfortunately for me neither definition changes the operation of the code. What is very consistent is that if I pause the code and see that diode_sensor_read_result = 1 if I step through the code in single steps the code seems to work as expected and values
  8. Thanks for looking at this. Unfortunately that change appears to make things worse. Now if I pause the code and step through it when diode_sensor_result_ready = 1 the function diode_sensor_read_result is executed but the ADC14MEM0 contents are not placed into the samples array like they were before this change. Actually I just removed the volatile and I'm getting the same results so I must have made a bad change last night before I stopped working. It's a bit odd though since I can step through and see the code execute but the debugger watch variables don't update. I should also mention th
  9. I found this old project for a MSP430 and was trying to modify it for my project as well as getting it work with the MSP432 LaunchPad. The code seems to work but only if when in the debugger I start and pause the code. In the ADC14ISRHandler routine I set this variable: diode_sensor_result_ready = 1; If I run the code this variable is always 0 but if I pause the code it seems like that enables the ISR to run, set the variable to1 and then the code proceeds. I uploaded the project to Github if someone has the time to look through it, https://github.com/GeorgeIoak/Cheese The referenc
  10. I figured out that the compiler warnings are happening because once you enter the while(1) loop you'll be stuck in it and can never reach the statements outside of the loop. The other "error" I received this response over on the TI e2e forums:
  11. Unfortunately it is already set to OFF but it was a good thought
  12. I'm running a fully updated CCS and a MSP432 project. I'm far from a good programmer and am modifying an old MSP430 project I found here for my project. I get this warning during compile and then while debugging the code seems to get stuck and throws a "error: cannot load from non-primitive location". I'm not sure if they're related but I can't seem to find any help for either of them. I've attached the project files. If anyone has any helpful advice on how to solve these I would greatly appreciate the help! Thanks, George MyADC14_v2.cPhotoDiode_Sensor.cPhotoDiode_
  13. Does anyone have any interest in expanding this library to include loading images stored on SD cards like what Adafruit does? Their code for Arduino is located at https://github.com/adafruit/Adafruit_ILI9340/blob/master/examples/spitftbitmap/spitftbitmap.ino
  14. I didn't get an email notice that you had posted to this so I apologize for the late response. I have my variables defined like this: #include "msp430g2131.h" #define S1 0x0001 #define TRIGGER 120 // Will allow ~10msec timing #define PH BIT2 //DRV8838 PH pin, 0:Forward, 1:Reverse, connected to P1.2 #define EN BIT6; //DRV8838 EN pin, 1 for FWD/REV, 0 sets both outputs low, P2.6 #define SLP BIT7; //DRV8838 Sleep pin, 0 for sleep, high Z outputs, P2.7 unsigned int PressCount = 0; unsigned int Pressed = 0; unsigned int PressRelease = 0; unsigned int i = 0; The only place PressRelease is
  15. Thanks for clarifying the port pins and catching the difference between USCI and USI. I am clearing flags but I'm just not seeing the ISR get triggered again after the initial interrupt. Perhaps you can see something I'm doing wrong that I haven't caught yet. My USI is configured like this: USICTL0 = USIPE6+USIPE7+USISWRST; // Port & USI mode setup USICTL1 = USII2C+USIIE+USISTTIE; // Enable I2C mode & USI interrupts USICKCTL = USICKPL; // Setup clock polarity USICNT |= USIIFGCC; // Disable automatic clear control USICTL0 &= ~USISWRST;
  • Create New...