Req: (Free) Embedded Platforms for Education

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From English to

Threaded View


Hi all,

First of all I just joined this group so let me salute all members !!

I have a request and I would be happy is someone could help.

You all probably know that embedded systems are more and more
considered as hot topics to be though at universities. I will be in
charge of managing a complete course for graduate students on embedded
system with a focus on software engineering and operating systems for
embedded platforms.

Since having only a theoretical course is quite a boring activity : )
I am looking for the best platform students can experiment and play
with (doing labs, projects and so on)

Obviously, free and open source platforms are privileged since this is
an education purpose in a university that cannot afford paying money
for licences; or even managing a complex relation with an industrial
partner with some 'discounts' on licences.

So if anyone has a suggestion I would be happy to know about it. At
the end of the process, I'll send a table summarising all the
suggestions so other people/teachers could benefit from it.

Kind regards,


Re: (Free) Embedded Platforms for Education
Quoted text here. Click to load it

Opinions on this vary wildly but I started out with PICs and I think it
was a good way to start. Development kits are in abundance but all each
student really needs is a breadboard, a 16F84, a 20MHz crystal and a few
LEDs/switch. Oh, and a 5V supply of course. MPLAB is free and allows
development in assembler. Developing in C will require the purchase of
compilers.

Programming the devices can be done in a few ways but will require
purchasing equipment. Or write a serial bootloader and flash the devices
once and use serial comms for programming them thereafter. Cheaper but
harder.

Whilst I've not worked with them myself then I believe AVRs are also of
this sort of thing and that their development tools are free (even in
C).




Re: (Free) Embedded Platforms for Education

Quoted text here. Click to load it

Hi,
I can recommend FlashForth and PIC18Fxxxx processors.
See http://www.kolumbus.fi/oh2aun
It is a target resident interactive Forth environment which
you can access via terminal emulator on the PC.
It has an interpreter, compiler, assembler and a multitasker.
You can interactively read and write all PIC registers and memories
and incrementally develop your software.
Once you have flashed the kernel into the chip, it is writeprotected
and you do not need any programmer to develop your code.

FlashForth is free with a GNU license and
Microchip is happy to send you free samples of the chips.
Of course you have to build boards yourself then or buy some boards.
There are large offerings of PIC prototyping boards.

Mikael


Re: (Free) Embedded Platforms for Education
Quoted text here. Click to load it

At risk of inflaming the Church of Forth I would venture that C would be
more useful to a student, particularly because they are likely to be
learning it it other modules. If there were a FlashC version which is a
friendly and useful as FlashForth sounds then it could well be an ideal
solution.



Re: (Free) Embedded Platforms for Education

Quoted text here. Click to load it

You live dangerously. But there is no FlashC, is there ?

I agree that Forth is not very hot on a students resume.
But it is an amazingly illustrative environment to work in.
And since it comes with the source code you can actually figure
out what is happening.  Learn to think, instead of learn to IDE :-)

Mikael

Re: (Free) Embedded Platforms for Education
Quoted text here. Click to load it

Not that I'm aware of, but it would be nice if there was. I did know of
a serial bootloader a colleague of mine wrote but it didn't come with
all the friendly development tools and pretty much just allowed an MPLAB
generated hex file to find its way into a PIC.

Quoted text here. Click to load it

It is on my list of things to have a play with if I ever find any spare
time. For a blue-sky project I might think about it but everything I do
here has to be backwards compatible with existing systems.



Re: (Free) Embedded Platforms for Education
Quoted text here. Click to load it
Being backwards compatible is an important consideration, when you have
to earn money.

The PIC18Fxxxx was just sitting there, waiting to be Forthified.
It was (still is) fun.

Re: (Free) Embedded Platforms for Education
Quoted text here. Click to load it

Or in industry.

Quoted text here. Click to load it

Having the source code is not always a good idea. You want to teach
programming not have the students hacking in to the environment.  They
are usually too easily distracted anyway.

--
\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
\/\/\/\/\ Chris Hills  Staffs  England     /\/\/\/\/
We've slightly trimmed the long signature. Click to see the full one.
Re: (Free) Embedded Platforms for Education

Quoted text here. Click to load it
The idea was not to let the students rewrite the compiler.

In embedded programming you also want to teach how the software
interacts with the hardware. So if you have the low level source,
you can see how to program to interact with a piece of HW.
Of course you can use assembly for that also, but as soon as you
take in C and closed libraries  you loose the clarity.

And with Forth you can interact with the HW from the command line, and
easily grasp what is happening.

After that it is easy to learn C and the IDE of whatever one is using.
(I have been on too many courses where 75 % of the time is spent
presenting the IDE buttons).

Another thing you want to teach is debugging. Debuggers for embedded
usually cost money per seat. With Forth you can at least print out
traces and test your code one small piece at a time. Much of your time
is usually spent debugging anyway.


Anyway this was just one alternative for the list.



Re: (Free) Embedded Platforms for Education
Quoted text here. Click to load it

This is not true at all.    With C you program the Hw directly. What
libraries are you referring to?   The standard library?

Quoted text here. Click to load it

I know what you mean but they are all mostly the same now anyway.

Quoted text here. Click to load it

As you can with C.

Quoted text here. Click to load it

Hence the (usually) very good C simulators and monitors.


--
\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
\/\/\/\/\ Chris Hills  Staffs  England     /\/\/\/\/
We've slightly trimmed the long signature. Click to see the full one.
Re: (Free) Embedded Platforms for Education
Quoted text here. Click to load it
Usually the C compilers come with nice fat libs making it easy to use
the peripherals. But of course you do not have use them.
Quoted text here. Click to load it
I will stop now.

Mikael

Re: (Free) Embedded Platforms for Education
Quoted text here. Click to load it

Which compilers are these?
Usually they don't come with libraries for peripherals.


--
\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
\/\/\/\/\ Chris Hills  Staffs  England     /\/\/\/\/
We've slightly trimmed the long signature. Click to see the full one.
Re: (Free) Embedded Platforms for Education
Quoted text here. Click to load it

Is rarely used in industry. ....  Forth is a damned good language but it
is going to be little use to students on a course where they want to get
jobs afterwards.



--
\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
\/\/\/\/\ Chris Hills  Staffs  England     /\/\/\/\/
We've slightly trimmed the long signature. Click to see the full one.
Re: (Free) Embedded Platforms for Education

Quoted text here. Click to load it

Knowing quite a few people who learned to programme using Forth and then
went to the other camps afterwards I do not consider Forth to be any sort
of blockade to getting a job. Considering that there is a Forth in every
Sun Workstation and in many PowerPC's not to mention in a wide range of
industrial devices (just well hidden from the normal user) I would consider
it a useful language to know. Then I know you would expect me to say that
anyway.

--
********************************************************************
We've slightly trimmed the long signature. Click to see the full one.
Re: (Free) Embedded Platforms for Education
Quoted text here. Click to load it

Of course. :-)

Perhaps it is time for a resurgence of forth?

--
\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
\/\/\/\/\ Chris Hills  Staffs  England     /\/\/\/\/
We've slightly trimmed the long signature. Click to see the full one.
Re: Req: (Free) Embedded Platforms for Education
Quoted text here. Click to load it

Then you are lucky. In many countries it is not a hot topic. :-(

Quoted text here. Click to load it


8051 and ARM.

Quoted text here. Click to load it
Free OR  open source?

Quoted text here. Click to load it

Try the Keil compulers, the EVAL versions are FREE and very good you can
also get a free RTOS with Keil for both the 8051 and ARM.  Otherwise try
www.FREERTOS.org

8051 and ARM boards are very cheap.

AVR is another good one. (IAR eval compilers for this)

Remember most embedded systems  [ie 4-16 bit] don't use an RTOS.




--
\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
\/\/\/\/\ Chris Hills  Staffs  England     /\/\/\/\/
We've slightly trimmed the long signature. Click to see the full one.
Re: Req: (Free) Embedded Platforms for Education
Quoted text here. Click to load it

<snip>

Quoted text here. Click to load it

I agree with Chris about this and would put teaching about RTOSs (or
certainly any practical teaching using them) well down the list of
things to experiment with. Getting the hang of interrupts and using ADCs
and serial communication is far more useful I would say, and also makes
for some fun experiments. A model weigh-bridge relaying its data back to
a PC is far more fun and interesting than watching an RTOS light LEDs in
different tasks.




Re: Req: (Free) Embedded Platforms for Education
Quoted text here. Click to load it
Moreover, working with an RTOS throws up a barrier to progress, at least
initially.  For small tasks it is easier to dispense with the RTOS and
just write code.  You'll find things getting unwieldy the more different
things you ask the processor to do, until at around the 3 - 6 'task'
point you find that you can justify the overhead of using an RTOS by the
ease of adding more tasks.

--

Tim Wescott
Wescott Design Services
We've slightly trimmed the long signature. Click to see the full one.
Re: Req: (Free) Embedded Platforms for Education
On Jul 17, 10:44 am, "Tom Lucas"

Quoted text here. Click to load it

Note that the OP didn't dimension the problem. "Grad student" to me
implies a certain level of knowledge.

For some reason, my post suggesting the ez430 didn't make it through
Google. I don't want to retype it :)


Re: Req: (Free) Embedded Platforms for Education
Quoted text here. Click to load it

The ez430 post got through on my reader.

Perhaps I'm getting confused with my terms. For me, a grad student is
someone studying for a Bachelors degree. In my experience, the first
taste students get of actually using an interrupt in anger - as opposed
to learning the theory behind polling and interrupts etc - is late in
the first year of the degree course.



Site Timeline