Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

arduino vs pic vs others... which should i learn?

Status
Not open for further replies.

jason41987

New Member
hey everyone.. ive been looking at a few electronics engineering books and books relating to arduino and pic microcontrollers, i would like to pick up a book and learn more about some type of microcontroller, and get into small scale projects using them, such as making portable electronics devices and such...

so, whats the most versitile, most useful, or if these are even in this category, which has the most support, and easiest to learn?... arduino, pic, or something entirely different?
 
We all (except Jason) bias PIC chips here.. It seems to dominate.... Arduino is a platform not a chip!! It uses the AVR Mega.. Some Texas Instrument 8051 derivatives are EXTREMELY low power for battery ... A couple of PIC's are now "nano watt".... It really doesn't matter what chip you decide to use... There is pretty good support for most of them.

Learning.... I take that to mean program.... Assembler differs from chip to chip... They all have pro's and con's.... Personally, I prefer the 8051 assembly.... But as I program mainly in C any is fine..
 
Last edited:
yeah... the arduino is basically a development board using the AVR chip, where pic is the chip itself, and similar boards are made with pic, i heard the basic stamp is getting old and outdated, i could be wrong though because this is one field i really dont have anymore knowledge...

to get started i would probably begin with development boards with solderless bread boards for testing new ideas, and to learn with and then move into building my own boards based on the chip selected...

so be it arduino or a pic based dev board, thats what i want to start out with so i guess the real question here is pic or avr... ive read so far that AVR is a lot faster and a lot more advanced, but more people prefer pic because it has a lot more support to it... is this wrong?... also, what programming languages are used for pic or avr?
 
Like I said.... When you program in assembler... The chip itself matters.... If you program in a higher level language ie Basic or C then its much the same... I tend to look at the resources... Take for instance you need USB, RS232 AND I2C all at the same time.... You'll need to run through loads of variants to find which suits you better.... BUT!!! If you go out and buy a C compiler for a PIC for 500 quid... you can't use it on AVR....
 
yeah... the arduino is basically a development board using the AVR chip, where pic is the chip itself, and similar boards are made with pic, i heard the basic stamp is getting old and outdated, i could be wrong though because this is one field i really dont have anymore knowledge...

to get started i would probably begin with development boards with solderless bread boards for testing new ideas, and to learn with and then move into building my own boards based on the chip selected...

so be it arduino or a pic based dev board, thats what i want to start out with so i guess the real question here is pic or avr... ive read so far that AVR is a lot faster and a lot more advanced, but more people prefer pic because it has a lot more support to it... is this wrong?... also, what programming languages are used for pic or avr?

AVR's and PIC's are similar speeds and offer similar facilities - as long as you compare like with like. PIC's are available in very low cost and size versions that run slower than the higher end versions though. Speed is rarely an issue anyway, even the slowest devices are usually a great many times faster than needed.
 
so rogers, youre saying if i learn to use an actual programming language then it doesnt matter which one i use?, whats the price of an AVR and similarly performing pic?.. which would be easier to fab my own breadboard development boards with, though i think it would be the same amount of work to fabricate a dev board for either, and both have pre-made dev boards available... so is this basically an AMD vs intel discussion here?
 
When choosing a 'development system' and a 'chip' I would look for support in the form of friends. (on line or in person)
If you know someone that us using arduino then choose that.
Also look at the total price. A programmer will cost. Pick something where the compiler is free like PIC's C compiler or the arduino. Many companies offer free tools that may be limited in features, or how big a program you can write. One of my compilers is free up to 10,000 lines of code. I will never get to that point.

TI has some very low cost development boards and software for the 430 series. $10.
PIC is good.
AVR has many hobby people and forums.
There are many 'stamps' that usually are built for beginners and have books and much help.
 
im definitely looking to start out with those stamps as you call them, or the arduino board itself, and later on move into working directly with the AVR or PIC.. ill probably build a few projects based on pre-existing schematics though, like a portable music player for example, and a MIDI controller to build electronic instruments with, and at some point i would like to build an ECM for engines... im a mechanical engineer but ill admit circuits are my only real weak point, if i learn how to do these there will be next to nothing that i cannot design or build
 
so rogers, youre saying if i learn to use an actual programming language then it doesnt matter which one i use?, whats the price of an AVR and similarly performing pic?.. which would be easier to fab my own breadboard development boards with, though i think it would be the same amount of work to fabricate a dev board for either, and both have pre-made dev boards available... so is this basically an AMD vs intel discussion here?

Look at the Arduino... A board costs about £24... The arduino compiler is FREE and more documentation you can eat..... C/C++ platform... You can get GNU C compiler for AVR http://winavr.sourceforge.net/ No limitations.... An AVR programmer can be built with a single buffer chip connected to the parallel port of a PC... The AVR seems to be the best choice.... After messing with the Arduino you can move into Netduino................. I hear you say well it's Arduino / AVR then ....

I still prefer Pic's... I find the peripherals easier to work with.... Chips seem to be more readily available... Just look at this forum.... Pic biased... from Pic10 to Pic32.

The last detail..... If you need to experiment, the Arduino system is large.. plug and play shield's a plenty... Everything you could think of http://tronixstuff.wordpress.com/tutorials/ this site say's it all..... If your a tinkerer... Like to build things from scratch... then play with Pic's... I'm not saying you can't do either or and visa-versa ( just before I'm inundated with die hards)

People of my era.. Its spectrum 48 or commodore 64..:D:D:D
 
seems to be an intel vs amd, 45acp vs 9mm, chevy vs ford kind of discussion which all boils down to preferences.... does anyone know where i can find a list of pros and cons to make my decision?.. i looked at the pickit which seems to be the same thing an arduino is, except using the pic processor... so it seems like you have the same set of hardware and features for either one, pic being cheaper... im guessing both are open source friendly as well?...

one more question, if i had an interest in making more powerful imbedded systems like smart phones, tablet computers, carputers, etc... should i look into learning more about the ARM architecture?
 
Arm's are not really a beginner chip the compilers are not easy to setup. If you never used a simpler Ide Like MPLAB it's not a easy task to build for the Arm.

Arduino is easy to use because the hard work is been done for you. Write your code and build is about it. The PIC is cheap and just as good but you have to setup the chips ports and things like UART ADC more work but more control and a lot of options as to how to program the chip where as the Arduino uses it's own built bootloader and is ready to to go. Where as the PIC you would program a bootloader on it then load your compiled code or just skip that part and save space and burn the code to it.

The best thing I see for the Arduino is you can learn C code C++ really easy and tons of samples for how to do almost any thing. But if I had not dabbled In C18 I would of never figured out how to set the files I needed to write a simple code for the ARM have to point the compiler to a lot of files and a lot of registers to setup.

Start simple learn that and move up to bigger and better. Which boils down to if you want to learn fast and see it today use the Arduino want to learn something that can help you later down the road use the PIC or AVR then you'll easily be able to learn the ARM It's up to you.
 
so how about this?.. how about i start off with simple quick and easy projects to learn on using the arduino boards... from there i will move on to using the AVR which should be the natural step up, and from there i can begin learning ARM as well for the more powerful ideas of mine...

for now, im working on a midi controller in the form of a wind instrument, i think ill use an arduino for this since there will be a lot of components to it, a lot of the arduino setups ive seen are solderless, so it will be a lot simpler for experimentation, and i can be sure the board is in working order, and focus on getting everything to work right... and when everythings working properly, i could decide which components of the system are unneccessary, and design a single circuit AVR board that does everything it needs to, and nothing else
 
im definitely looking to start out with those stamps as you call them

Don't even consider STAMP's, it's a VERY old device, and is a pre-programmed PIC running interpreted BASIC code from EEPROM, which means it's very limited and very slow (in PIC terms). Essentially it's an expensive and simple development system for school kids.

You seem to mention Arduino in almost every post, so go for that - as with any development board you get your project working using that, and then build a board to actually run your project on.
 
i think im going to skip the arduino though.. move right on to pic or avr.. what i think i should invest in is a large, quality solderless breadboard, and buy the individual chips, and an assortment of components such as resistors, capacitors, etc with a proper AC/DC adapter for the voltage needed and an in-line breaker or fuse for that voltage so i can plug the breadboard directly into a power outlet in my house for power to test it, and worry about onboard power supplies later...

then what i can do is get a circuit diagram for a simple pic or avr based development board and assemble it on the breadboard itself to make for much, much easier experimentation which would allow me to build increasingly more difficult projects as i learn more... i mean, i dont need an integrated circuit board to learn circuit design, i need to put the circuits together myself to learn, and these solderless breadboards with individual components i feel are the best way to do that... i could be wrong, but it seems the most logical way to go about it

i just get the feeling that going with these pre-made modules are fine for simple projects.. but i just feel its going to end up restricting me from learning because the bulk of its already put together... is like, you cant learn to build a car if the only thing you have to do is bolt on the wheels, ya know?

so forgetting these pre-made modules, what is actually going to give me the best performance in the long run?... can certain pic processors really go toe-to-toe with the best avr has to offer? if so, which ones going to have more variety for me to choose from, and what will be better for eventually stepping up to arm processors for larger projects?
 
The high end PIC's offer similar performance to AVR's, with the advantage of the PIC's far higher user base and greater support.

However, in both cases high end devices are generally SM only, so you're better off starting on the lower end chips, cheaper, easier to use and easier to learn.

If you don't want to buy a development board (and the Arduino is VERY good value) then have a look at my PIC tutorials, which come complete with veroboard layouts for a modular development system. It's cheap to build, easy to use - and you can extend it as you like.

Personally I wouldn't recommend breadboards, they are too limited, too unreliable, and far too prone to making mistakes - it would also be simple to plug a port lead from my tutorial boards in to a breadboard to build a qucik specific interface.
 
im not too worried with the possibility of breadboard problems.. i have a suitable multimeter that would allow me to check the continuity of circuits to quickly diagnose a problem should there be one, and it would be a lot easier that way than to solder anything certainly... but being able to start with a single chip and add the different modules in to play with them individually should help my understanding of how each different interface works with the chip... this would allow me to break down the basic functions to better understand them and learn how they work together

are you suggesting though that with the arduino and PIC based boards that i could use a cable to plug into the interface connectors, and connect that to the breadboard for experimentation?

also, in the end, since chips are so cheap anyway that i will get a few AVR and PIC chips and dip into both of them to learn more... i think a good starting project of mine that i would like to play with will be to build my own MP3 player which is simple enough it seems
 
Last edited:
one more question.. i do not have capacitors, resistors, transistors, or any of the sort laying around.. could anyone direct me towards a good source in the form of a kit, or a supplier that would let me order an assortment of pieces to get me started?
 
are you suggesting though that with the arduino and PIC based boards that i could use a cable to plug into the interface connectors, and connect that to the breadboard for experimentation?

No, I'm suggesting that building my tutorial boards would allow that - check my site you'll see what I mean.
 
one more question.. i do not have capacitors, resistors, transistors, or any of the sort laying around.. could anyone direct me towards a good source in the form of a kit, or a supplier that would let me order an assortment of pieces to get me started?
I use a company called Proto-pic... Based in Scotland.. Both these are set up specially with people like you in mind... most of the stuff is modular so you don't need low level hardware.... They provide documentation on everything or point you to where you need to be.
 
nothing wrong with scotland, its just too far to have something shipped, im in the united states.. ill try to find a bulk supplier of component parts that would allow me to order a varying quantity of different component parts
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top