username 198 Posted July 28, 2014 Share Posted July 28, 2014 Hey all, Round 2: This extends the peripherals of the MSP430 to a UART based ascii AT command set. For example, send "AT+GET_ADC" over the USB->Serial bridge to get all the ADC values returned. Since I released my first GUI there have been a couple others like it. You will find that this version's strength is that the underlying C driver set is my personal driver set which is quite powerful XD . I then wrote a C# GUI as a wrapper around this command set. Features Implemented: Digital IO, Analog I, PWM, SPI PWM Example: Steps to use: 1. Download code & .exe file here: https://github.com/NateZimmer/ICBM2. Import C code into CCSV5.1 (haven't tested with other versions) and flash to launchpad.3. Ensure UART jumpers on the MSP430 Launchpad are set to Hardware based UART on a msp430g2553 launchpad Rev 1.54. Run GUI and connect to launchpad.5. Enjoy! Skip to 10:35 for setup instructions: Todo:Implement DCO Calibration for better CLK accuracyImplement I2CImplement Graphing/LoggingImplement more flexible spi chip select features Please let me know if this does not work for you jazz, BlackAngel, Automate and 8 others 11 Quote Link to post Share on other sites
bluehash 1,581 Posted August 7, 2014 Share Posted August 7, 2014 Thanks @@username! Any reason you named it ICBM? I can think of only one and it is ballistic Quote Link to post Share on other sites
username 198 Posted August 8, 2014 Author Share Posted August 8, 2014 It was in honor of all of TI's fun licensing agreements and information inquiries to simply download code composer =P Quote Link to post Share on other sites
zeke 693 Posted August 8, 2014 Share Posted August 8, 2014 I would like to see how you crafted the GUI. Do you have any intention of sharing your PC side source code? Quote Link to post Share on other sites
username 198 Posted August 8, 2014 Author Share Posted August 8, 2014 Has the GUI worked for any of you? I would like to see how you crafted the GUI. Do you have any intention of sharing your PC side source code? It was done in C# and my C# is an embarrassment. Until I learn how to code in c# as it was meant to be coded, I don't plan to share any of that code. My C code i'm fairly confident is up to snuff but certainly not my c# =( RobG 1 Quote Link to post Share on other sites
zeke 693 Posted August 8, 2014 Share Posted August 8, 2014 I have never programmed in C#. I have been emotionally wounded by C++. I am reasonably proficient in C. There is no reason for you to fear my opinion. Maybe I could learn something new from you? Quote Link to post Share on other sites
username 198 Posted August 9, 2014 Author Share Posted August 9, 2014 Well... I tend to blabber a bit but I like making videos occasionally. Haven't heard that its working for anyone so skip to 10:40 to see how to set it up. I have never programmed in C#. I have been emotionally wounded by C++. I am reasonably proficient in C. There is no reason for you to fear my opinion. Maybe I could learn something new from you? If ya saw it ya might figure out how not to write C# code but that is about it XD . I'm not doing anything fancy in my GUI, its all from info i've googled. If you want to start up in C# I recommend downloading VS C# express and start playing around in it. It is quite easy. Quote Link to post Share on other sites
NNX 0 Posted August 13, 2014 Share Posted August 13, 2014 I would say that username is right. Just download the VS C# express and play around with it. Try some MS tutorials to get started, then think of simple things to try and make. That's the fastest way you can learn to do something in my opinion. FYI, I went to school with username and it was he who got me into C#, and I still use it everyday. Quote Link to post Share on other sites
pakoh 0 Posted September 11, 2014 Share Posted September 11, 2014 Hello. Will it work for Tiva Launchpads as well? It would be awesome to test designs!! Quote Link to post Share on other sites
bluehash 1,581 Posted September 11, 2014 Share Posted September 11, 2014 Hello. Will it work for Tiva Launchpads as well? It would be awesome to test designs!! Not OP, but you could borrow the serial parser and GUI. You will have to write the low level code though. Quote Link to post Share on other sites
bi0tech 4 Posted October 4, 2014 Share Posted October 4, 2014 What call did you use for pulling a com port list in the gui? I was attempting to get it working under wine, trying several of the usual tricks to get com device detection and it's a no go. Sidenote: I thought it would be a good way to learn some python so I'm writing a version of the gui primarily for *nix based systems. I have about 1/3 - 1/2 of the current features of the windows gui in place along with some basic realtime data plotting/graphing in so far. It would go a good bit faster if I could get it running under wine or get an outline of the full command syntax / return value formats. (If I ever get to feature parity Ill throw the code up somewhere.) Quote Link to post Share on other sites
NNX 0 Posted October 9, 2014 Share Posted October 9, 2014 Being that it's C# and a Microsoft language, there is built in ways to do it. Something along the lines of: //Scans computer for Com ports and loads names into a list box foreach (string item in System.IO.Ports.SerialPort.GetPortNames()) { ComportBox.Items.Add(item); } This won't however pull the "unique" names like FTDI USB RS232, it will instead give COM 5 etc. There are ways to get unique names, but it requires more code. Quote Link to post Share on other sites
bi0tech 4 Posted October 9, 2014 Share Posted October 9, 2014 Being that it's C# and a Microsoft language, there is built in ways to do it. Right, but I know about a half dozen commonly used methods to scan and enumerate coms in the windows world. And I know where most of those end up pulling the information from the registry. So I can then populate the wine bottle registry to expose hardware devices linked from linux land. None of those appear to work with this app. If I know for certain what call is made I can likely trace it down. Quote Link to post Share on other sites
username 198 Posted October 27, 2014 Author Share Posted October 27, 2014 Right, but I know about a half dozen commonly used methods to scan and enumerate coms in the windows world. And I know where most of those end up pulling the information from the registry. So I can then populate the wine bottle registry to expose hardware devices linked from linux land. None of those appear to work with this app. If I know for certain what call is made I can likely trace it down. What call did you use for pulling a com port list in the gui? I was attempting to get it working under wine, trying several of the usual tricks to get com device detection and it's a no go. Sidenote: I thought it would be a good way to learn some python so I'm writing a version of the gui primarily for *nix based systems. I have about 1/3 - 1/2 of the current features of the windows gui in place along with some basic realtime data plotting/graphing in so far. It would go a good bit faster if I could get it running under wine or get an outline of the full command syntax / return value formats. (If I ever get to feature parity Ill throw the code up somewhere.) Sorry biotech, C# does not have any native way to enumerate the friendly names of ports that i'm aware of. Consequently i'm mining a win32 register to get this information. I'm guessing thats why its having issues on wine. I'm using something very similar to this post: http://www.creativecodedesign.com/2010/03/14/how-to-get-friendly-names-for-com-ports-in-c/ Quote Link to post Share on other sites
JonnyBoats 40 Posted February 28, 2015 Share Posted February 28, 2015 Have you considered adding the ability to graph the data from the MSP430 in addition to displaying the value? With the ability to graph values vs time it could function as a low bandwidth oscilloscope and logic analyzer. Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.