Should I learn PIC programming or stay with arduino?

AI Thread Summary
Arduino is praised for its intuitive design and ease of use, making it a popular choice for hobbyists, while concerns about it fostering laziness in programming are dismissed as unfounded. Transitioning to PIC programming may provide deeper understanding of microcontroller concepts, but whether it offers significant advantages depends on the user's project goals. For those interested in learning PIC, Microchip's MPLAB IDE and a programmer like PicKit 3 are essential, with many resources available for beginners. The discussion highlights that comparisons between Arduino and PIC are often misleading, suggesting a more relevant comparison would be with PICAXE. Ultimately, the choice between Arduino and PIC should align with the specific projects and learning objectives of the individual.
ramzerimar
Messages
178
Reaction score
23
I'm enjoying playing around with Arduino. It's very nice and intuitive, and it was a great introduction to electronics for me. But I've heard some people complaining that Arduino makes you lazy, and that you should learn how to program PIC instead. Thing is: apart from undertanding better the underlying concepts of microcontroller programming, I can't see any advantage in switching from arduino to PIC. In general, does using PIC instead of arduino offer any real advantage? (For a hobbyist like me, I mean).That said, I do want to try learning PIC, just to get the feel of it. But as I'm used to programming Arduino, where everything is already assembled, I don't know where to start. Apart from the PIC itself, I know I need a programmer like PicKit 3. That's all? To start programming PIC, do I need anything else? What about an IDE?
 
  • Like
Likes cnh1995
Engineering news on Phys.org
If you already have an arduino you can use the Atmel tools to program in c/c++/asm with a full debug environment. You just need an ISP dongle.

I have used the PIC tools and did not have any problems with them. I have not used the Atmel tools but have heard that they are much easier to use. Both have free versions of the IDE. Free Microchip c/c++ compilers have a crippled optimizer which is not and issue for learning the platform. Atmel tools are completely free. I don't know what features that are not included in them. If any they will likely not be a concern to you.

BoB
 
Comparing Arduino with PIC makes no sense. A better comparison would be with PICAXE. A comparison between Microchip and Atmel devices (upon which the Arduino is based) is like-for-like, but hopelessly general. Note that the web has been awash for years with ill-informed Microchip vs Atmel "fanboy" arguments. Pass those by!

The argument that Arduino makes you lazy is nonsense. It's simply one of many quick educational and prototyping platforms. Abstractions exist for a reason! Apply reductio ad absurdum: do those making the argument write only in assembly language, I wonder? That being said, using libraries for tasks like writing to IO pins may be hiding you from knowledge about your device that you may find interesting. If you program, why not check the Arduino library source to see what it's doing for you?

Whether PIC offers "any real advantage" is too broad a question to answer. What sort of projects would you like to do? Be guided by problems. For example, if you want to develop your own products, you will probably not be embedding an entire Arduino board inside them.

If you want to learn how to program PICs, grab Microchip's tools (MPLAB is free), and just dive in. For typical FAQs check Microchip's forums. There are probably more learning resources around for PICs than any other devices.
 
  • Like
Likes billy_joule
Integrand said:
Comparing Arduino with PIC makes no sense. A better comparison would be with PICAXE. A comparison between Microchip and Atmel devices (upon which the Arduino is based) is like-for-like, but hopelessly general. Note that the web has been awash for years with ill-informed Microchip vs Atmel "fanboy" arguments. Pass those by!

The argument that Arduino makes you lazy is nonsense. It's simply one of many quick educational and prototyping platforms. Abstractions exist for a reason! Apply reductio ad absurdum: do those making the argument write only in assembly language, I wonder? That being said, using libraries for tasks like writing to IO pins may be hiding you from knowledge about your device that you may find interesting. If you program, why not check the Arduino library source to see what it's doing for you?

Whether PIC offers "any real advantage" is too broad a question to answer. What sort of projects would you like to do? Be guided by problems. For example, if you want to develop your own products, you will probably not be embedding an entire Arduino board inside them.

If you want to learn how to program PICs, grab Microchip's tools (MPLAB is free), and just dive in. For typical FAQs check Microchip's forums. There are probably more learning resources around for PICs than any other devices.

I was studying the development of a embedded PID temperature control, for example. It looked like a very interesting project, and I do want to learn more about PIDs. I don't know if I try to implement Arduino or try PIC in this one. I'm a hobbyist, so I'm really not into developing commercial products or stuff like that.

Also, are the PicKit and MPLAB all I need to dive in (apart from the microcontroller itself, or course)? Do I need a power supply or anything like that, just to start learning with some simple projects?
 
If you can be tethered to the dev computer you don't have to have anything other than the board and a few bits and bobs to get you started. They run off of USB. As for a power supply other than USB, most of the arduino or other small boards they can be run on a simple battery. Likely whatever power source you are using for temperature control will be sufficient to drive the MCU. A small linear regulator will do nicely if not particularly efficiently.

BoB
 
While I was rolling out a shielded cable, a though came to my mind - what happens to the current flow in the cable if there came a short between the wire and the shield in both ends of the cable? For simplicity, lets assume a 1-wire copper wire wrapped in an aluminum shield. The wire and the shield has the same cross section area. There are insulating material between them, and in both ends there is a short between them. My first thought, the total resistance of the cable would be reduced...
Hi all I have some confusion about piezoelectrical sensors combination. If i have three acoustic piezoelectrical sensors (with same receive sensitivity in dB ref V/1uPa) placed at specific distance, these sensors receive acoustic signal from a sound source placed at far field distance (Plane Wave) and from broadside. I receive output of these sensors through individual preamplifiers, add them through hardware like summer circuit adder or in software after digitization and in this way got an...
I am not an electrical engineering student, but a lowly apprentice electrician. I learn both on the job and also take classes for my apprenticeship. I recently wired my first transformer and I understand that the neutral and ground are bonded together in the transformer or in the service. What I don't understand is, if the neutral is a current carrying conductor, which is then bonded to the ground conductor, why does current only flow back to its source and not on the ground path...

Similar threads

Replies
5
Views
2K
Replies
2
Views
2K
Replies
10
Views
3K
Replies
8
Views
18K
Replies
17
Views
24K
Replies
21
Views
24K
Replies
8
Views
4K
Replies
4
Views
2K
Replies
4
Views
3K
Back
Top