Go Down

Topic: Advantages of Arduino Uno over PIC18F4550 (Read 5 times) previous topic - next topic

puffyqi

The subject says everything. What is the difference of arduino uno and pic18F4550? in what ways does arduino uno is better than pic18f4550 microcontroller?

fungus


The subject says everything. What is the difference of arduino uno and pic18F4550? in what ways does arduino uno is better than pic18f4550 microcontroller?


The Force is stronger in Arduinos.
No, I don't answer questions sent in private messages (but I do accept thank-you notes...)

Graynomad

Well for one thing the PIC is a chip, the Uno is a complete circuit board with power supply, IO headers etc.

______
Rob
Rob Gray aka the GRAYnomad www.robgray.com

Tom Carpenter

C++ and AVR-GCC.

There is free a C compiler for PIC18 but it doesn't do any sort of optimisation and it is very strict in how it likes you to write code - if you want a compiler which optimises the code you have to pay Microchip many hundreds of pounds. The one thing I have found when working with PICs is that there software is so intermittent in whether or not it works.

The AVR also has better (well more useful) hardware timers (PWM, counters, interrupts etc).
~Tom~

CrossRoads

And you get this friendly community as a resource to help you out.
Designing & building electrical circuits for over 25 years. Check out the ATMega1284P based Bobuino and other '328P & '1284P creations & offerings at  www.crossroadsfencing.com/BobuinoRev17.
Arduino for Teens available at Amazon.com.

Erni

And many many library's where others have done all the hard work for you for free

tuxduino

Quote
The AVR also has better (well more useful) hardware timers (PWM, counters, interrupts etc).


Hardware wise the two chips aren't that different. The _real_ difference is having GCC on one side vs one-C-dialect-per-(costly)-compiler on the other.

IIRC there's an arduino-like board which uses PIC mcus. Don't know what development environment / compiler they require though.

westfw

There's a board called the "USB Bit-whacker" that is very close to the Arduino in concept.  Plugs into USB and has a bootloader for downloading code.

Arduino has the high-quality C/C++ compiler, and the simplified IDE, and targets a different audience.

oric_dan

I wonder - does the Arduino/avr compiler do optimizations?

Also, I've used Microchip free MPLAB and the free C compiler for the PIC24 chips, and MPLAB
is much more difficult to get setup properly than the Arduino IDE, and sometimes you go around
in circles trying to figure out certain things, like how the darn directories and path connections
work. Much higher learning curve.

Also, with MPLAB you usually need a chip programmer like the PICKIT2, whereas Arduinos all
come pre-programmed with bootloaders so you don't need a programmer.

Also, with Arduino, you have many functions, like I2C, SPI, Serial, on and on, already written,
whereas you have to do all that stuff yourself for PICs. There are some libraries for the PICs
around, but I found them to be almost inscrutable to try and use.

To put it into historical perspective, Arduinos are as easy to use as the original Parallax Basic
Stamps, whereas using PICs is more like buying the raw chips Parallax used to make the
Stamps, and you pretty much have to do everything yourself.

Bajdi

I started playing with micro controllers about one year ago. I originally planned to buy a couple of pic chips. Until I took a good look at the software/libraries available and compared it to Arduino. The learning curve for pics is a lot steeper. I'm sticking to Arduino/AVR, if you outgrow the Arduino IDE you can always use your favourite editor and use gcc-avr to compile your programs.  
This very forum also played a big role. I know there is always someone willing to help when I get stuck. I have learned a lot just by reading the programming section.
www.bajdi.com

retrolefty

Quote
I wonder - does the Arduino/avr compiler do optimizations?


The arduino platform just uses an AVR adapted GNU GCC open source compiler which is an independent open souce group/project, and yes it offers several levels of optimization.

http://gcc.gnu.org/

Lefty

oric_dan

I shouldn't think GCC itself would have many optimizations, as those are usually added on
for the specific chip architectures the compiler is running on. So maybe the AVR GCC people
added them on.

I believe the Microchip C compilers are also based upon GCC, so they give away the non-optimized
versions, but they charge a lot for the versions they optimized in house for their own chips. But
this may all be scuttle-butt too.

All in all, however, for most applications, I doubt that most people really need to worry about this.

oric_dan

Quote
I'm sticking to Arduino/AVR, if you outgrow the Arduino IDE you can always use your favourite editor and use gcc-avr to compile your programs.


The other thing about Arduino is, there is an easy pathway when you need more processing power,
with boards like the DUE and misc 3rd party boards that use 32-bit processors, but which still use
the Arduino environment.

tuxduino

Quote
I believe the Microchip C compilers are also based upon GCC,


This is interesting. Do you have any links ? Thanks.

fungus


I wonder - does the Arduino/avr compiler do optimizations?


Yes.

(Take a look at some disassembled output if you don't believe me...)
No, I don't answer questions sent in private messages (but I do accept thank-you notes...)

Go Up
 

Quick Reply

With Quick-Reply you can write a post when viewing a topic without loading a new page. You can still use bulletin board code and smileys as you would in a normal post.

Warning: this topic has not been posted in for at least 120 days.
Unless you're sure you want to reply, please consider starting a new topic.

Note: this post will not display until it's been approved by a moderator.
Name:
Email:

shortcuts: alt+s submit/post or alt+p preview