a question of which microcontroller?

Started by mobile_bob, December 17, 2012, 06:42:54 PM

Previous topic - Next topic

quinnf

Amazon.com, Bob.  Free delivery and comes in a box with a smile on it. 

q.

Curbie

Here's an Arduino project a friend and I did about a year ago:
http://i825.photobucket.com/albums/zz177/Curbie_Pics/Controller.jpg

..it took about two months from concept, to completed shield board, the instruction manual is here: http://www.liquidsunenergy.com/controller/controller.html although it's not to control an engine, but rather an fuel ethanol still, the instruction manual covers things that may be of value like case construction, LCD displays, menu systems, and other stuff.

Happy Holidays,

Curbie

thomasonw

Bob and All,

Happy New year!  Hope all is well with everyone!

I have been thinking about this thread over the holidays, and one thing that occurred to me:  I would like to suggest the basic question at hand is flawed. .. .   Bob, you asked: "whats the advantage(s) of this platform over other processors?" and I would offer that is the wrong question...

Arduio is not really a processor, it is an environment.  And one that has standard two things:  Hardware expansion (via defined pins allowing for shields, etc), and libraries to match them.  To expand a bit:  Arduino defines the I/O space, pins, and even the names.  Example: if one connects an LED to I/O Pin 13, then using "digitalWrite(13, HIGH)" lights that LED.

This is the key to Arduio:  it is the standardization of the hardware expansion and the libs, not the CPU.  That the Arduino uses an Amtel CPU is just a side effect, in fact there is a 'new' Arduio board which is based on the ARM CPU (Arduino-Due) which shares the same I/O hardware layout and lib commands.

By abstracting the hardware and using a KISS approach for the libs they attempt to allow for easier to read programs.  Example, using a series of PinMode() calls to set up the I/O pins is perhaps simpler to read then one Amtel port write, even if it is vastly less efficient.  But of course there are side effects to using the Arduio libs, ala I wanted to synchronize a function with the PWM pin state and the simple approach of using DigitalRead() call would not work as the Digitialread() function re-programs the PWM pin to input!  So an Amtel  raw PORTB read was used..

And that brings up the weakness of Arduio:  It was designed to simplify project development (both hardware and software), but that 'hand holding' does lead to mass inefficiencies (ala multiple function calls vs. a simple port write to set up the I/O pin modes), and also potential side effects like my attempt to read the current state of the PWM pin.

In the end, I would offer the Arduio is more about opening up micro-controllers to the masses, and at that it perhaps works well.  But it is also true that one does not need to venture too far to find the same environment getting in the way . . .

BruceM

#18
I think all the Arduino hype about access to the masses, open this and open that, is all the stuff of marketing fluff.  When it's time to bang bits, you gotta bang bits, and you'll have to know the specifics of the chip you're banging. The language will constantly have to be expanded to allow control of the new features of the chip, and there will have to be extensions specific to various chips.  This has been true since the dawn of the use of higher level languages for microcontrollers, and I would know since I was at Motorola Microsystems developing the development tools for the HC-11 (and 68032) at the dawn. This was just after T-Rex got wiped out by an asteroid strike and the global winter that ensued, though I just missed that.  ;)

That said, I also once said the initial IBM PC was a POS and held it in contempt.  The power of marketing fluff for the non-technical masses made me look like an idiot over the following decade, because even though it WAS a flaming POS, the cache of IBM's name and a lot of marketing fluff SOLD them, and we all know how that turned out.

I do think the Arduino has reached critical mass...by that I mean it's marketing fluff has overtaken all reason and soon you'll have little choice but to join them, since it will attract the most hardware and software development, and both hardware and software for Arduino will be very cheap compared to the alternatives.  In this case it's not as painful,  in that the AVR chips are decent, and the Arduino language allows full use of AVR's C language to work around it's deficiencies. I  hate "C", alas, but I'm a dinosaur.






mobile_bob

i stand corrected in re to my original question

it should have been

"what's all the fuss about the arduino?"

:)

as for simplicity of programming, the bs2 is about as simple as i have found so far

hook up you led to pin 13 for instance

High 13      'sets pin 13 high and turns on the led
Pause 5000  ' sets on time to 5.000 seconds
Low 13        ' sets pin 13 low, and the light goes out

i can't see it much simpler than that!

now another question

"what's all this "shield" business?"

it looks to me that it is an interface pc board with whatever ancillary components mounted to do a particular job?  such as a relay board? or some other board made to
do something or other?

Sorry fella's i am just not seeing the attraction to this thing, unless someone was to package a specific setup to do something useful for what it is we are trying to do? such as maybe an autostart, or load management system, them maybe it might be interesting.

one last question, is the arduino industrial rated?  will it operate over a very wide temperature range, such as well below zero to well over 120F?  is it rated to do so?
the latest revisions of the bs2 are rated from -40F to 185F which means they will hold up and operate in non climate controlled conditions.

i am leaning toward what Bruce states, i worry that the arduino is just that new kid on the block that is getting a lot of attention and good marketing hype.  the BS2 being over 20 years old now (although there are much newer versions, and newer revisions) is just not seen as sexy as the arduino,

maybe i will stick with the direction i am going for now, i see no compelling reason to do otherwise.

bob g

Jens

Quote from: mobile_bob on January 01, 2013, 11:36:02 PM

maybe i will stick with the direction i am going for now, i see no compelling reason to do otherwise.


Bob, the best advise I can give is "stick with what you are comfortable with until you see a good reason to change".

You may run into limitations tomorrow, causing you to change the setup but you may never run into limitations at all. The fact that you are comfortable with a setup will allow you to produce a working gadget well ahead of trying to learn a new setup.

thomasonw

Well, I know this is an OLD thread, but the topic is the same...

Talking about the Arduino, and 'all the fuss'.  Look what I found today: http://www.mouser.com/new/freescalesemiconductor/freescale-freedom-boards/?cm_sp=homepage-_-newproducts-_-

A whole range of ARM based development boards, low cost, looks like fun.   And (this is what I really noticed) they all feature "Designed in an industry-standard compact form factor"

You guessed it:  it is the Arduino shield pinout.  Complete with the 'oops' error of miss spacing between two SIP connectors on one side.


Ha, tuff to fight the masses.....

BruceM

Yep, it's PCs and Microsoft all over again with Arduino and their shield form factor.  As I said before, this time it's not painful as the AVR chips are good, and their free C compiler is quite acceptable. (Comparable to the unoptimized free versions for PIC).  Though when you're designing your own PCB anyway, as Thomasonw did,  the choice of processors is more of a personal experience and preference issue.

I do have the Arduino Teensy board and have messed about with it a bit.  Dirt cheap way to get a USB interface and connector for an embedded processor board that can plug into a DIP header.




thomasonw

Just happend to stumble across this one: http://www.mouser.com/new/Intel/intel-galileo-development-board/

Arduino 'industry standard' board compatible, but more..   This is an Intel Pentum class SoC CPU development environment that not only has the same 'shield' pinout as the Arduino, but INtel has went ahead and done a software port to make it compatible with the Arduino IDE!  (The Arduino IDE has the ability, and need, to support different CPU architectures, as Arduino hardware is based in both Amtel ATmege CPUs as well as an Amtel ARM based one).

Wow, just keep son a rolling!  Shields, and NOW the IDE!!!  What a perfect analogy the PC/Microsoft is!

-al-




BruceM

I couldn't find the typical power consumption of the Galileo chip.  The 8 bit Atmel and PIC processors are typically about 2 ma.  I don't expect Galileo will be anywhere near that.  It will be interesting to see if Intel will make inroads in this market as well.  A pentium class 32 bit single chip computer is certainly going to find some interesting applications.

Thanks for your post, thomasonw!

thomasonw

Quote from: BruceM on October 28, 2013, 08:49:48 AM
I couldn't find the typical power consumption of the Galileo chip.  The 8 bit Atmel and PIC processors are typically about 2 ma.  I don't expect Galileo will be anywhere near that.  It will be interesting to see if Intel will make inroads in this market as well.  A pentium class 32 bit single chip computer is certainly going to find some interesting applications.

Thanks for your post, thomasonw!

I think Intel has other CPUs targeting the low power market to directly compete with the Atmel and PIC CPUs.  But this Galileo demo board is an interesting approach..   They went to a LOT of work to make it Arduino compatible (all the I/O is via I2C expanders, not native to the Galileo CPU, as well as an external FLASH chip).  At a retail price of $65 this is clearly only a demo board for the Galileo chip.  (Even the ARM based Arduino is half that cost).   What I find interesting is they picked to not only support the Arduino Shields (perhaps an OK decision), but also support the Arduino IDE!  The IDE - - - that is an odd one to me as I can see a bit of limitations in it..