Search the Community
Showing results for tags 'ek-tm4c123gxl'.
Found 3 results
One of the new features of the beta EnergiaNG is that fact that it is now using the standard Arduino 1.6.x IDE. Unfortunately, it doesn't look like it is ready to work as a boards manager package with the standard Arduino IDE. Energia/TI likes their branding and it seems they want to keep TI boards and Arduino board from ever meeting in the same program. At the same time, I noticed a few things that are missing and instead of trying to push those into Energia. I decided to fork the tivac-core and make the changes there. I also moved away from the proprietary dslite uploader in favor of using openocd. This gives you a better chance of running this code on any platform you might like. Did you know Arduino is now running on Raspberry PI boards? Anyways, you can find this new version here: https://github.com/RickKimball/tivac-core There is a list of things that I've changed in the README.md. This port also makes a couple of assumptions. It assumes you have both an arm-none-eabi-gcc toolchain in your path along with a recent version of openocd. If you are running linux you can just do: $ sudo apt-get install arm-none-eabi-gcc arm-none-eabi-g++ openocd Give this port a whirl and let me know how it works for you. -rick
I was inspired a while back by the simplicity of the FFT application written by Shane Ormond and featured on the 43oh blog. It was easy to duplicate and I've made a few changes, additions, and such that seemed worth documenting. I didn't have a signal generator other than the 1kHz square wave on my oscilloscope and some clunky code that I wrote for a microcontroller so I ordered an inexpensive AD9850 and hooked it up to a FR6989 LP so I could use the LCD to display frequency. I've been pleased with the AD9850 and it is hard to beat it for the price. The sine wave is more than sufficient for my needs up to 40 MHz - I don't see any deviation from the scope. The code is here. This is a picture of the setup being tested on the oscilloscope and nailing it: I need to make a little boosterpack for this so it is a little handier to use. I made several modifications to Shane's code: Number of samples can be specified Bin readings are matched with corresponding frequency interval Frequency resolution of bins can be set Frequencies of up to 5 kHz or more can be measured I used a MSP-EXP432 for the most part but the code was also tested and works on the TM4C123. You really need an ARM to get this granularity. The code is here. To increase the sample size and allow measurement up to higher frequencies I used Energia's delayMicroseconds instead of millis. The right way to do this would be with timers and I hope to come back and address this at some point. To calibrate the bins to their actual frequencies I used a simple one step approach with a single pass that measures the deviation in the sampling time from expected to actual. Deviations occur due to the lag associated with Energia code and the actual time it takes to sample. Precision depends on the bin size and number of samples as well as inaccuracies in using delayMicroseconds. I posted the serial output into a spreadsheet to get some plots... 1000 Hz Square Wave 1000 Hz Sine Wave 5000 Hz Sine Wave My original goal was to create something that could process sound in the range of human hearing and this pretty much gets there. I need to clear my desk for another project but hopefully I get back to it some day or perhaps someone else will find it interesting and report back This is my list of potential improvements: use timer for sampling times add a microphone improve the graphical display / GUI It would be neat to get this working on an Educational BoosterPack.