From: jonathan on 14 Jul 2010 07:43 On Jul 14, 5:55 am, use...(a)scriptoriumdesigns.com wrote: > I'll just come out and say it - for a language that was designed for > as much for embedded applications as for anything, it seems to be > maddeningly difficult to actually get Ada on a modest embedded > platform. By modest I mean low-end 32 bits, no MMU. ARM7 or Cortex > Mx would be my first choice. I can be up and running on such a > platform with C and a tasking library in a day (Rowley Crossworks, > nice package). Why can't I do the same with Ada? Or rather, to avoid > making this about me, why can't an embedded programmer - student, > hobbyist or professional - who's heard about Ada and wants to give it > a spin, including hard-realtime concurrency, just do it? > > If Ada fans (I include myself) want to see Ada get more exposure, this > seems like not only a desirable step but a necessary one. I can run C > on a thousand such boards, and I can't (AFAIK) run Ada on one. > > Maybe this is all available, and I just haven't found out where. Then > that's a problem too, but I'll be happy to hear about it. > > All comments welcome. Agree completely. But if commercially supported software is too expensive for the > embedded programmer - student, > hobbyist or professional - who's heard about Ada and wants to give it > a spin, including hard-realtime concurrency (and I'ld be suprised if it were not) then x86 looks promising (intel atom, amd geode ...). I just web searched amd geode and found the wikipedia article http://en.wikipedia.org/wiki/Geode_(processor) Worth thinking about .. the wikipedia article has a link to an article on how to put Linux on a Geode board. Makes sense ... along with say, I don't know, Marte-OS. And for more inspiration, http://www.circuitcellar.com/archives/viewable/212-Ramirez/index.html J.
From: jonathan on 14 Jul 2010 08:36 Another idea. There is, indirectly, non-commercial GNAT support for an ARM7 product through LEGO MindStorms NXT: http://libre.adacore.com/libre/tools/mindstorms/ http://shop.lego.com/ByTheme/Product.aspx?p=9841 That's all I know about it ... hth J.
From: Ludovic Brenta on 14 Jul 2010 08:46 Maybe you could consider Debian GNU/Linux on arm[1] or mips[2]. [1] http://www.debian.org/ports/arm/ [2] http://www.debian.org/ports/mips/ Both include a native (not cross) Ada compiler. This is not exactly "embedded" in the strictest sense, as you are not cross-compiling or using a hard real-time kernel, but it's close and accessible to a hobbyist or student. The hardware itself is quite affordable. -- Ludovic Brenta.
From: Jeffrey R. Carter on 14 Jul 2010 14:05 On 07/13/2010 11:27 PM, usenet(a)scriptoriumdesigns.com wrote: >> > Yes, AdaMagic is on my definitely-check-out list, but does it actually > address the audience I'm talking about? Can a personal copy be had > for e.g. the $150 I spent on the Rowley tools? And even that's > pushing it for students and hobbyists. > > And what about concurrency? How does AdaMagic provide for that? I > don't see anything on their website that addresses that question. Your initial post didn't mention price, simply availability; I am not familiar with Sofcheck's pricing for the product. As it comes with a complete runtime including exceptions and tasking, it's probably not cheap. -- Jeff Carter "I fart in your general direction." Monty Python & the Holy Grail 05
From: jonathan on 14 Jul 2010 15:56 More encouraging words from the GNAT GPL/Mindstorms webpage: http://libre.adacore.com/libre/tools/mindstorms/ GNAT GPL Edition for the LEGO MINDSTORMS NXT platform brings the possibility of experimenting with embedded systems development using the Ada 2005 and SPARK languages to an education-oriented robotic platform. Entire embedded systems, including software, hardware and sensors intercefacing, and wireless communications can be developed and verified using the GPL editions of GNAT and SPARK. (GNAT GPL is the free-software version of GNAT.) Regarding the x86 options: just to be clear, here's what I was talking about when I mentioned MaRTE OS. From the homepage, http://marte.unican.es/ The normal development environment for MaRTE OS is a computer with a GNU/Linux operating system installed. ... You can compile MaRTE OS to [produce executables that run as] normal Linux processes (without Real-Time guarantees, but useful for fast developing, debugging and teaching) or as binary for an x86 bare machine. Finally, write your multi-thread application in Ada, C or C++ (check-out the given examples) and use the provided scripts (mgnatmake or mgcc) to compile and link it against the kernel. You will get an executable that can be run on the architecture you chose when you installed MaRTE OS (i.e: as a Linux program or as a Multiboot loadable x86 binary) J.
First
|
Prev
|
Next
|
Last
Pages: 1 2 3 4 5 Prev: Nominations for 2010 SIGAda awards Next: Simple hack to get $500 to your home. |