Pages: 1 [2]   Go Down
Author Topic: Advantages of Arduino Uno over PIC18F4550  (Read 4813 times)
0 Members and 1 Guest are viewing this topic.
the land of sun+snow
Offline Offline
Faraday Member
**
Karma: 159
Posts: 2927
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

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

This is interesting. Do you have any links ? Thanks.
This page says "GNU-based, open source code (except PIC18)".

http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en536656
Logged

Brisbane, Australia
Offline Offline
Edison Member
*
Karma: 33
Posts: 1123
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

And you get this friendly community as a resource to help you out.
I don't think you can overstate how useful that is, especially for those wading into hobby electronics with microcontrollers for the first time.  The scale of the community, and the associated mass of tutorials & libraries & instructables & online/printed support documentation has been crucial to me.  Hard to believe 13 months ago I didn't even know the name Arduino - the community leg-up is the difference.

Having said that, it's probably not the best place to get an unbiased and balanced response to the OP's question  smiley
Geoff
Logged

"There is no problem so bad you can't make it worse"
- retired astronaut Chris Hadfield

SF Bay Area (USA)
Offline Offline
Tesla Member
***
Karma: 137
Posts: 6805
Strongly opinionated, but not official!
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

The PIC24, PIC30, PIC33 (all 16bit cpus) use a gcc-based compiler.
The PIC32 (32bit MIPS-core cpu) uses a gcc-based compiler. (and has an Arduino-like board and environment available in the form of the "ChipKit" products.)
Both of those can use free C compilers that produce reasonably good code.  The MIPS CPU in particular has been supported outside of the Microchip range for quite a long time; it would be difficult to get it to produce bad code.

The PIC10, PIC12, PIC16, and PIC18 8-bit CPUs use an entirely different compiler.  The free version from Microchip, for these CPUs, rather than being code-size limited like many free compiler versions, instead turns off optimization.  ALL optimization; examples of spectacularly bad code have been posted.  (I don't understand it.  Microchip has other examples of quite reasonable behavior (in particular, their IDE runs on Windows, Mac, and Linux.)  I have heard (but not confirmed) that the free USB code that microchip provides does not fit in the target CPU when compiled with the free compiler, for example.

Quote
I shouldn't think GCC itself would have many optimizations
You would be wrong.  Many things can be optimized well above the specifics of code generation for any particular CPU.  And I gather that one of the strengths of gcc is that they have implemented an abstraction of a cpu that makes it easy to add new CPUs and "instantly" get reasonable code.  (In this case it doesn't matter much, because the 8-bit PIC architecture is SO far NOT compatible with that abstraction, and (essentially) could not possible be supported by gcc at all.)
Logged

Johannesburg, South Africa
Offline Offline
Full Member
***
Karma: 0
Posts: 180
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Has anyone tried using an Arduino to program a PIC microchip?
Logged

UK
Offline Offline
Tesla Member
***
Karma: 141
Posts: 8001
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

It looks like you did no research before adding your question to this topic.

There are some current Topics on this subject including one in this Microcontrollers section.

...R
Logged

Johannesburg, South Africa
Offline Offline
Full Member
***
Karma: 0
Posts: 180
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

It looks like you did no research before adding your question to this topic.

There are some current Topics on this subject including one in this Microcontrollers section.

...R

I actually tried, but the word "pic" is just too widely used to find anything worthwhile... But I guess from your response this is possible. I've never worked with PIC chips, and in fact, only started using / programming Arduino's about 2 months ago. This is all very new to mew and I thought I'd try out the PIC route as well and was wondering if I could use an Arduino to program a PIC chip
Logged

UK
Offline Offline
Tesla Member
***
Karma: 141
Posts: 8001
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I had assumed you would see this Topic http://forum.arduino.cc/index.php?topic=179754.0 without any searching.

It did take me a while to find the other Topic I had in mind (and I only found it because I had a vague recollection that I had commented on it http://forum.arduino.cc/index.php?topic=177776.0. This one probably has more useful info.

The Arduino search tool is useless. Use Google and confine it to site:arduino.cc

In short there seem to be plenty of opportunites to use PICs and whether you should or not is more a matter of religion. Personally I don't care, but the Arduino system is easy to use so I don't have any immediate need to try the PIC alternatives.

...R
Logged

0
Offline Offline
Sr. Member
****
Karma: 7
Posts: 476
what?
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Well i know which one i'd go with, but the Uno is useful for quick prototyping and has a larger community, I do prefer MPLab overall as it's a one stop IDE covering the whole Microchip range, right now though im playing with rasp pi, GPIO's are limited but when combined with an atmega328 as an i2c slave it works well
Logged

Pages: 1 [2]   Go Up
Jump to: