Search the Community
Showing results for tags 'Forth for the MSP430'.
Found 1 result
I got the Launchpad, RobG's 2.2" 240x320 Color LCD, downloaded CCS, got it all running ... realized there was no way to interactively test and debug a port pin, check a running timer, examine a memory location. Got Energia loaded and working, better interface than CCS. OK, let me clarify this all - CCS is great in a corporate development environment where multiple gearheads need to access, update and develop the same project, but, is total overkill for the small shop, hobbyist or student. Energia is cool as I can control the downloads, where as CCS seems to believe it knows best and provides a very frustrating abstraction layer. This is after all an embedded controller, not an object oriented app where an abstraction layer between data and code means anything. All in all any development interface that does not let me access the target at all levels is simply a distraction. You'll find most IDE writers don't actually use the IDE for work. I found a cool German group, 4e4th, with Brad Rodrigues help, ported a copy of Brad's CamelForth to the MSP430. It's very close to the ANSI standard and has all the functions for about anything you wish to develop. It has the standard interpreter allowing you to test code fragments, directly access the hardware, place data or code into ram or flash, twiddle a port bit. The IDE provided by 4e4th allows you to save the session, edit the code fragments you entered, save them to disk, then, wipe the 430 flash and load the edited code file to the 430 to be compiled into the flash. When you reboot the 430 the newly loaded program executes. Easy as programming a Z8 in Forth with a built in ForthROM. What I don't like about "C" IDEs is the abstraction layer. It's nice not programming in code, but 'C' generated output for the 430 seems to be rather blotted. Admitted, most apps will not use all the memory provided on a 430. Speed, however, comes into question, not just the app but the time to code it. I wrote a small Z8 based control app for Turner Cable that was used to measure antennae tower guys and then put paint marks on the cable where the swags are set. Trust me, this is not easy, the twist of the cable and stretch must be calculated in. The hardware eng on the project had three port pins connected different from the schematics. One was signal inverted and the other two where swapped. Because of the Forth Buffalo on the Z8 I caught the errors, it didn't therefore require getting new control cards made, I fixed it in code. Cost me a half hour of tinkering reading and setting port pins via the keyboard, no o-scope required. Do that in a 'C' IDE. As I'm using RobG's LCD for a project, I'll put the Forth code up here when I'm done. Let's see how big the compiled version is against the current 'C' code results. I'm interested to see what the speed difference is also. Yeah, just opened the 'Gates of Hell'. hehehe Gentlemen, take your positions, ten paces, turn and fire, on my mark!