Hello all!
I just had an oopsie on my pic dev board while writing a motion control routine with a unipoler stepper that went out of control and I shorted my breadboard. 16F877A up in smoke and programmer gives wierd errors so I figured now that I need a new setup lets see which rout to go.
For the obvious start lets compare hardware capabilities. On the pic side of things I use 16f870, 16f877a, 18f452 and 18f4550 the 4550 was chosen to be a ICSP from http://usbpicprog.org/ and the chip I prefer to use is the 877A @ 20MHz
Available on the 16f877a:
35 Instructions
Most instructions are 2 cycle
8k flash
368 data
256 EEPROM
15 Interrupts
Ports A/B/C/D - E is only 3 pins whoo
2 - 8bit timers
1 - 16bit timer
I2C/SPI/USART
8 - 10bit ADC
2 - Analog Comparators
2 - PWM Channels
40pin Dip
ATMEGA16:
131 Instructions
Most single cycle
16k flash
512 EEPROM
1K ram
JTAG Complaint
21 Interrupts
Ports A/B/C/D
2 - 8bit timers
1 - 16bit timers
4 - PWM Channels
I2C/SPI/USART
8 - 10bit ADC
1? - Analog Comparators
Onboard RTC
40pin DIP
OK so theirs quit similar in hardware, the things that stand out to me are the AVR has ALOT of features that are independently setup, onboard RTC, 4 PWM channels, larger flash/EEPROM/ram and the #1 that most instructions are single cycle so a 16MHz osc will probably seem as fast as the 20MHz pic. In the pic’s defence its strong point is its downside, their are so many avalible you can find one with just what you need but next project you need something else…
2nd issue, Programmers and Programming Suites:
I have no idea what AVR has to offer, I use MikroC (http://www.mikroe.com/en/compilers/mikroc/pic/), I have used Hi-Tech C and hated it, and microchips suit thats ok but bad interface. Programmers are easy to find parallel/serial/usb I use the cheep usbpicprog setup. What are my options for cheep programmers and good programming suites comparable to MikroC in quality but preferably without a closed source library?
Well thats all I can think of at the moment, I ask anyone with both pic & avr experience using C can give me their reasons for choosing one or the other, thanks!
On a side note here is what I was running:
EasyPIC4 (no touch screen) http://www.mikroe.com/en/tools/easypic5/
Was running a 36V 2A 75os/in unipoler stepper, was powered via PWM from the pic and a darlington phase setup the 36V rail shorted to one of the pics ports and suddenly all it would do is randomly 1/0/Z all pins.
What Im thinking of replacing it with:
http://www.mikroe.com/en/tools/pic-ready/ for PIC
http://www.mikroe.com/en/tools/avr-ready/ for AVR
Or I will make a simple carrier board for the uC & osc to plug into my breadboard.