As was said, each platform has it's own set of advantages.· Granted the Prop has 8 cores, but an application's requirements do not always revolve around how many parallel operations need to be performed.· The ARM is great for high speed memory intensive projects.· And there are millions of C code libraries that can be incorporated, so it's not like you don't have access to something like obex.· Take your pick from fft functions, mp3 decoding to full blown linux or WinCE os.
Here are some tools I've found useful for getting started with ARM:
For ~$150, MikroElekektronika's EasyARM dev board is great because everything you need to be "Hello World"ing in a few minutes is provided.· From there you can more easily migrate to individual chips... http://www.mikroe.com/en/tools/easyarm/
Not to knock the prop, but it should be quite obvious that no one part is able to equally apply to every application; there's always the right tool for the job.
They are very cheap, but shipping outside India can be expensive.
They gave me one of their BlueBoard-LPC214x units for review, and I'll have one of the Cortex-M3 Blueboard-LPC1768-H boards in a few days. The former comes with a very comprehensive application that uses all the peripherals, and is easily adapted for users' own programs. Everything starts working when it's powered up.
Embedded Artists makes some nice boards as well, I have several of theirs. I used one of their LPC2148 boards to control a complex medical system.
Hi!· IMO, the Propeller is ideally suited as an "IO processor" but much less so as a general purpose processor.
I think designs with the ARM for general purpose processing and the Propeller for IO processing would be the "dream team" and I'd like to make such a board for N8VEM eventually.· I really like the synergistic approach of the Chameleons but I believe they are attempting to use a uC as a general purpose processor and will run into the same limitations but from the opposite direction (using a AVR/PIC as a general purpose processor).
Even pairing the Propeller for IO tasks with classic/vintage CPUs like Z80, 6809, etc leverage this incredible synergy.· However, as a general purpose CPU·I think Propeller as currently designed lacks the pins to accomplish its IO *and* access external memory quickly.· I believe a robust SBC could be made with a CPU, SRAM, Propeller, and very little else.
I am not saying general purpose processing cannot be done with the Propeller it just seems like its strengths as a uC seem to strongly favor·it as an IO controller.· Pairing the Propeller as an IO controller with a general purpose CPU like ARM remind me of an old US TV commercial for peanut butter cups -- two GOOD things that go GREAT together.
Don't get me wrong, I love Propeller but I think it is used best where it can use its strengths as a uC foremost and leave the general purpose processing to CPUs.
I've often use a ARM Cortex M3 ST32F103 module from Propox. In the past I've also used a NXP LPC2106 module (of my own design), but I think NXP have stopped production of the LPC2106 which is a shame.
I'm certainly using an dsPIC x802 as a co-processor for the Propeller (purely for the 1 cycle 17x17 MAC - although the DMA is pretty neat also). The LPC looks like a faster (and less than 1/2 the price) alternative.. Ta!
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
You only ever need two tools in life. If it moves and it shouldn't use Duct Tape. If it does not move and it should use WD40.
A couple of years ago I did a Propeller board that was crammed with peripherals but I found that the Prop ran out of resources. So the next version I did I teamed it up with an ARM chip (LPC2148) and this worked rather well. The ARM ran application code (it does have 512K of Flash!) using a powerful Forth kernel I had wrote for it and the Prop handled the video and communications etc. Either CPU could run the SD cards and ethernet although at the time I did this on the ARM.
In the photo the LPC2148 was mounted on the underside of the pcb.
I've just started using my old stock of SX52 protoboards for propeller expansion cards - I've connected one to run a 30 pin SIMM, one to run a 72 pin SIMM and one to run a IDE hard drive, while each board communicates with the propeller over a few dedicated lines.
The main reasons I used the SXes was that they provide more IO pins than the propeller and they can directly operate 5 volt devices while still able to communicate directly with the 3.3 volt propeller. And if all I want is to latch a bunch of address lines, I don't want to dedicate three quarters of my main propeller controller for that task.
But with the SX52 going out of stock, I'm also looking for a replacement.
I've never used a PIC, but started looking at the PIC16F59, because it comes in a 40 pin DIP that would be easy to breadboard, is cheap, has lots of IO pins and does not have a lot of extraneous stuff like ADCs that I don't expect to use this chip for. it looks like about the most bare-bones version of PICs but exactly for that reason, I was thinking it might work well as a general accessory driver chip.
heater said...
Is Propox like "Prop Ox", some kind of bovine Propeller project. Or is it a professional disease[noparse]:)[/noparse]
LOL, I'm not sure, but I don't like the sound of either [noparse]:)[/noparse]
heater said...
Either way they have some neat little modules for sale there. I can now see an FPGA in my life.
I bought their MMfpga12 FPGA module last year but I haven't had much time to play with it [noparse]:([/noparse]. I can recommend their evaluation base board for plugging the modules into. These are good value with lots of peripherals and connectivity.
Leon said...
I've got quite a few of them somewhere, early silicon that Philips gave me for running the LPC2000 group. You are welcome to them if I can find them.
Leon, thanks for the kind offer, I'll bear it in mind if I get ask to build some more boards.
I think that there should be a note that arm's business model is as far from parallax as is i can imagine. everything you use for the prop is made by parallax, and all of it is summed up in the one data-sheet. for arm the core of the cpu is designed by arm, then a second company adds a few peripherals, and sells you the chip, from there you need the compiler that is made by a 3rd company, uses an ide built by a 4th, then it is loaded by a loader made by the chip maker. my first experience with microcontrollers was the prop, so this was all a bit of a jump for me, and I kept looking for "the datasheet" that will tell me what a peripheral does and how to implement it in the ide. other that that i think this is a good idea, i just wanted to put up a warning, for those with only experience with parallax, that arm may not be the best next step in micro-controller education.
it comes with a nice little green monochrome oled screen, and some pretty good drivers for it, but i still haven't used it this much, just a couple of variations of hello world then i was back to the prop.
I use Rowley CrossWorks for ARM. They have their own compiler, debugger, and IDE, with their own JTAG debugging hardware which loads the chip using their own software, and packages for various development boards. Keil and IAR provide similar tools. With tools like that, ARM development is actually quite easy. Debugging is *much* easier than for the Propeller.
Leon
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Amateur radio callsign: G1HSM
Alsowolfman said...
i just wanted to put up a warning, for those with only experience with parallax, that arm may not be the best next step in micro-controller education.
Agreed - the ARM platform is substantially more complicated to dive into, especially for those only experienced with 'friendly' products by the likes of Parallax.· It's not for the faint of heart.
I've been building / coding since z80/6502 days, got into avr's etc, and the arm jump still took a bit research and trial & error.· IMO you really need a packaged dev board kit to get started.· The EasyARM I referenced earlier does a pretty good job of that.
As for ide's, I'm using the Keil demo, which is actually very nice and includes a great simulator.· But any of the 'proferssional' packages that make arm 'easy' are not cheap.· And I really hate all of the gcc toolchains, they seem unnecessarily complicated to me.
edit -
one of the reasons I'm liking the Mini 2440 board is that it runs linux or windows ce, so I'm hoping to code my apps using MS Visual Studio.
i just wanted to put up a warning, for those with only experience with parallax, that arm may not be the best next step in micro-controller education.
Agreed - the ARM platform is substantially more complicated to dive into, especially for those only experienced with 'friendly' products by the likes of Parallax. It's not for the faint of heart.
I've been building / coding since z80/6502 days, got into avr's etc, and the arm jump still took a bit research and trial & error. IMO you really need a packaged dev board kit to get started. The EasyARM I referenced earlier does a pretty good job of that.
As for ide's, I'm using the Keil demo, which is actually very nice and includes a great simulator. But any of the 'proferssional' packages that make arm 'easy' are not cheap. And I really hate all of the gcc toolchains, they seem unnecessarily complicated to me.
edit -
one of the reasons I'm liking the Mini 2440 board is that it runs linux or windows ce, so I'm hoping to code my apps using MS Visual Studio.
I have been researching, and you're right about everything. Everything is kept as a secret, only large companies have the right tools, and very little Linux.
Agreed - the ARM platform is substantially more complicated to dive into, especially for those only experienced with 'friendly' products by the likes of Parallax.· It's not for the faint of heart.
I've been building / coding since z80/6502 days, got into avr's etc, and the arm jump still took a bit research and trial & error.· IMO you really need a packaged dev board kit to get started.· The EasyARM I referenced earlier does a pretty good job of that.
Hi!· So I've noticed!· There is not much available for their only PTH compatible package (LPC1114 PLCC-44).· Has anyone seen a minimal LPC1114 computer circuit?· (power, programming interface, LPC1114, and maybe a LED)· NXP certainly does not make it easy for making your own home brew SBC IMO.·
Parallax does it right because they made it easy by publishing the Propeller Demo Board schematic and a variety of other circuits you could·easily make on your·work bench.· Having to purchase an overly complex >$100 "dev board" just to do some basic investigation·seems like crazy overkill.· How much does it cost to post a simple schematic?· Surely it is worth it!
It seems to me that Propeller DIP40 + LPC1114 would be an awesome combination.· Now if I could just find a simple LPC1114 reference design...
lynchaj said...
Agreed - the ARM platform is substantially more complicated to dive into, especially for those only experienced with 'friendly' products by the likes of Parallax. It's not for the faint of heart.
I've been building / coding since z80/6502 days, got into avr's etc, and the arm jump still took a bit research and trial & error. IMO you really need a packaged dev board kit to get started. The EasyARM I referenced earlier does a pretty good job of that.
Hi! So I've noticed! There is not much available for their only PTH compatible package (LPC1114 PLCC-44). Has anyone seen a minimal LPC1114 computer circuit? (power, programming interface, LPC1114, and maybe a LED) NXP certainly does not make it easy for making your own home brew SBC IMO.
Parallax does it right because they made it easy by publishing the Propeller Demo Board schematic and a variety of other circuits you could easily make on your work bench. Having to purchase an overly complex >$100 "dev board" just to do some basic investigation seems like crazy overkill. How much does it cost to post a simple schematic? Surely it is worth it!
It seems to me that Propeller DIP40 + LPC1114 would be an awesome combination. Now if I could just find a simple LPC1114 reference design...
Well, my take on things is that the arm is definately targeted towards commercial products (some version·is used on nearly every handheld device), and as such there are fewer 'hobby' resources.·
Paradoxically, it is still probably the most 'hobby friendly' high scale architecture (when compared to fpgas, xmos·or whatever).· I think once you get over the inital hurdles, it's not that bad - it is accomplishable.
While ~$100 boards may seem expensive in comparison to experiementing with a $1 avr chip, I think most people who are interested in arm understand it's capabilities and have visions of projects in mind that would utilize those features, making that investment quite affordable in the scheme of things.· To me, that is as justifiable as any of the similarly priced Parallax products.
My first thought after recieving my Mini 2440 was that I probably could not build a similar sbc for less myself, even if I had the smt tools to do so.
lynchaj said...
Hi! So I've noticed! There is not much available for their only PTH compatible package (LPC1114 PLCC-44). Has anyone seen a minimal LPC1114 computer circuit? (power, programming interface, LPC1114, and maybe a LED) NXP certainly does not make it easy for making your own home brew SBC IMO.
Andrew Lynch
I designed something like that for the original LPC2106 Philips ARM chip:
I discussed the friendlyarm in another thread and suggested it was a great platform as a coprocessor for the Propeller.
I have several ARM chips and have a PCB design with an XMOS and an ARM integrated. I can make the ARM and propeller on another board if there is interest.
But $109 for the friendlyarm with 64mb sdram + 128mb nand flash + lcd touchscreen can't be beat.
I haven't seen another board out there with an integrated plug and play LCD for anywhere near that price.
I run the friendlyarm board with Windows CE and the propeller FT232R chip is plug and play. You can export all .NET apps easily to the WinCE platform and use either the D2xx or the VCP drivers.
The Zipit Z2 has an LCD. It isn't touch screen though. But it does also come with a 312MHz Arm, 32MB memory, and a miniSD slot. It will be more difficult to interface to, but it comes in a nice package..and has a battery too.
fullspec: Have you tried to interface to SPI
JMH: What is the maximum bandwidth were able to get between the prop and the ARM with SPI?
Hi! I looked deeper into the LPC1114 datasheet and although there are many things about it I like (ARM core, extreme low price, PLCC package) I am afraid it is not really suitable for an SBC. Basically, the LPC1114 is uC and in many ways similar to an AVR or PIC and when paired with the Propeller as an IO processor would be similar to the Chameleon boards.
The LPC1114 has its own internal RAM/ROM and IO pins but there does not appear to be any means of directly connecting external memory. You probably could rig up a SRAM interface using nearly all the IO pins but it would still not be part of the ARM core's memory map. There are some uCs that support direct external memory interface. I believe certain ARM and a couple of obsolete PIC designs can access external SRAM/ROM as well as some of the older 80xx style uCs.
There are a few general purpose CPUs that would work but they tend to be the older ones like Z80, 6809, 68K, 8088/8086, etc. The modern CPUs generally speaking come in large SMT packages of 100 or more fine pitch QFP style packaging. It certainly would be neat to see a modern CPU like ARM available in a DIP/PLCC compatible package DIP40, DIP64, PLCC44, PLCC68, PLCC84, etc but I am not aware of any.
Comments
Here are some tools I've found useful for getting started with ARM:
For ~$150, MikroElekektronika's EasyARM dev board is great because everything you need to be "Hello World"ing in a few minutes is provided.· From there you can more easily migrate to individual chips...
http://www.mikroe.com/en/tools/easyarm/
Futurelec's ARM stamp provides ARM with breadboard friendly design:
http://www.futurlec.com/ET-ARM_Stamp.shtml
Lastly, I just recieved my FriendlyARM 2440, a fantastic deal including a 3.5" touchscreen, linux or CE, etc for only $109
http://www.andahammer.com/mini3/?PHPSESSID=bb19f832142132f8ab72d7ae44f17c9f
Not to knock the prop, but it should be quite obvious that no one part is able to equally apply to every application; there's always the right tool for the job.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
I like these boards:
shop.ngxtechnologies.com/
They are very cheap, but shipping outside India can be expensive.
They gave me one of their BlueBoard-LPC214x units for review, and I'll have one of the Cortex-M3 Blueboard-LPC1768-H boards in a few days. The former comes with a very comprehensive application that uses all the peripherals, and is easily adapted for users' own programs. Everything starts working when it's powered up.
Embedded Artists makes some nice boards as well, I have several of theirs. I used one of their LPC2148 boards to control a complex medical system.
I also like the little Gumstix boards a lot:
www.gumstix.com/
I've got one of the first ones they made - it was quite mind-blowing at the time as it was the size of a stick of gum and ran Linux.
Leon
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Amateur radio callsign: G1HSM
Post Edited (Leon) : 2/11/2010 1:06:38 PM GMT
I think designs with the ARM for general purpose processing and the Propeller for IO processing would be the "dream team" and I'd like to make such a board for N8VEM eventually.· I really like the synergistic approach of the Chameleons but I believe they are attempting to use a uC as a general purpose processor and will run into the same limitations but from the opposite direction (using a AVR/PIC as a general purpose processor).
Even pairing the Propeller for IO tasks with classic/vintage CPUs like Z80, 6809, etc leverage this incredible synergy.· However, as a general purpose CPU·I think Propeller as currently designed lacks the pins to accomplish its IO *and* access external memory quickly.· I believe a robust SBC could be made with a CPU, SRAM, Propeller, and very little else.
I am not saying general purpose processing cannot be done with the Propeller it just seems like its strengths as a uC seem to strongly favor·it as an IO controller.· Pairing the Propeller as an IO controller with a general purpose CPU like ARM remind me of an old US TV commercial for peanut butter cups -- two GOOD things that go GREAT together.
Don't get me wrong, I love Propeller but I think it is used best where it can use its strengths as a uC foremost and leave the general purpose processing to CPUs.
Thanks and have a nice day!
Andrew Lynch
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- Tony
http://zuzebox.wordpress.com/
Leon
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Amateur radio callsign: G1HSM
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
You only ever need two tools in life. If it moves and it shouldn't use Duct Tape. If it does not move and it should use WD40.
Either way they have some neat little modules for sale there. I can now see an FPGA in my life.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
In the photo the LPC2148 was mounted on the underside of the pcb.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
*Peter*
The main reasons I used the SXes was that they provide more IO pins than the propeller and they can directly operate 5 volt devices while still able to communicate directly with the 3.3 volt propeller. And if all I want is to latch a bunch of address lines, I don't want to dedicate three quarters of my main propeller controller for that task.
But with the SX52 going out of stock, I'm also looking for a replacement.
I've never used a PIC, but started looking at the PIC16F59, because it comes in a 40 pin DIP that would be easy to breadboard, is cheap, has lots of IO pins and does not have a lot of extraneous stuff like ADCs that I don't expect to use this chip for. it looks like about the most bare-bones version of PICs but exactly for that reason, I was thinking it might work well as a general accessory driver chip.
Leon
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Amateur radio callsign: G1HSM
I bought their MMfpga12 FPGA module last year but I haven't had much time to play with it [noparse]:([/noparse]. I can recommend their evaluation base board for plugging the modules into. These are good value with lots of peripherals and connectivity.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- Tony
http://zuzebox.wordpress.com/
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- Tony
http://zuzebox.wordpress.com/
difference is a battery input, IIRC.
Leon
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Amateur radio callsign: G1HSM
I used the luminary micro board available from digikey for 50 dollars with code red as well. http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=726-1129-ND
it comes with a nice little green monochrome oled screen, and some pretty good drivers for it, but i still haven't used it this much, just a couple of variations of hello world then i was back to the prop.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
My head is pasming!
Leon
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Amateur radio callsign: G1HSM
Post Edited (Leon) : 2/12/2010 3:47:33 PM GMT
I've been building / coding since z80/6502 days, got into avr's etc, and the arm jump still took a bit research and trial & error.· IMO you really need a packaged dev board kit to get started.· The EasyARM I referenced earlier does a pretty good job of that.
As for ide's, I'm using the Keil demo, which is actually very nice and includes a great simulator.· But any of the 'proferssional' packages that make arm 'easy' are not cheap.· And I really hate all of the gcc toolchains, they seem unnecessarily complicated to me.
edit -
one of the reasons I'm liking the Mini 2440 board is that it runs linux or windows ce, so I'm hoping to code my apps using MS Visual Studio.
·
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Post Edited (Agent420) : 2/12/2010 3:53:31 PM GMT
I have been researching, and you're right about everything. Everything is kept as a secret, only large companies have the right tools, and very little Linux.
But I have seen some light:
LPC1343 USB Bootloader
No other chip can overcome this ease of use, unfortunately is not available in all versions.
Parallax does it right because they made it easy by publishing the Propeller Demo Board schematic and a variety of other circuits you could·easily make on your·work bench.· Having to purchase an overly complex >$100 "dev board" just to do some basic investigation·seems like crazy overkill.· How much does it cost to post a simple schematic?· Surely it is worth it!
It seems to me that Propeller DIP40 + LPC1114 would be an awesome combination.· Now if I could just find a simple LPC1114 reference design...
Thanks and have a nice day!
Andrew Lynch
Parallax does it right because they made it easy by publishing the Propeller Demo Board schematic and a variety of other circuits you could easily make on your work bench. Having to purchase an overly complex >$100 "dev board" just to do some basic investigation seems like crazy overkill. How much does it cost to post a simple schematic? Surely it is worth it!
It seems to me that Propeller DIP40 + LPC1114 would be an awesome combination. Now if I could just find a simple LPC1114 reference design...
Thanks and have a nice day!
Andrew Lynch
LPC1114 Reference Design
Paradoxically, it is still probably the most 'hobby friendly' high scale architecture (when compared to fpgas, xmos·or whatever).· I think once you get over the inital hurdles, it's not that bad - it is accomplishable.
While ~$100 boards may seem expensive in comparison to experiementing with a $1 avr chip, I think most people who are interested in arm understand it's capabilities and have visions of projects in mind that would utilize those features, making that investment quite affordable in the scheme of things.· To me, that is as justifiable as any of the similarly priced Parallax products.
My first thought after recieving my Mini 2440 was that I probably could not build a similar sbc for less myself, even if I had the smt tools to do so.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
I designed something like that for the original LPC2106 Philips ARM chip:
webspace.webring.com/people/jl/leon_heller/lpc2104.html
I had a batch of PCBs made and quite a lot of people built them.
Leon
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Amateur radio callsign: G1HSM
I have several ARM chips and have a PCB design with an XMOS and an ARM integrated. I can make the ARM and propeller on another board if there is interest.
But $109 for the friendlyarm with 64mb sdram + 128mb nand flash + lcd touchscreen can't be beat.
I haven't seen another board out there with an integrated plug and play LCD for anywhere near that price.
I run the friendlyarm board with Windows CE and the propeller FT232R chip is plug and play. You can export all .NET apps easily to the WinCE platform and use either the D2xx or the VCP drivers.
fullspec: Have you tried to interface to SPI
JMH: What is the maximum bandwidth were able to get between the prop and the ARM with SPI?
Doug
The LPC1114 has its own internal RAM/ROM and IO pins but there does not appear to be any means of directly connecting external memory. You probably could rig up a SRAM interface using nearly all the IO pins but it would still not be part of the ARM core's memory map. There are some uCs that support direct external memory interface. I believe certain ARM and a couple of obsolete PIC designs can access external SRAM/ROM as well as some of the older 80xx style uCs.
There are a few general purpose CPUs that would work but they tend to be the older ones like Z80, 6809, 68K, 8088/8086, etc. The modern CPUs generally speaking come in large SMT packages of 100 or more fine pitch QFP style packaging. It certainly would be neat to see a modern CPU like ARM available in a DIP/PLCC compatible package DIP40, DIP64, PLCC44, PLCC68, PLCC84, etc but I am not aware of any.
Thanks and have a nice day!
Andrew Lynch