Become a subscriber (Free)

Join 29,000 other subscribers to receive subscriber sale discounts and other free resources.
:
:
Don't worry -- youre-mail address is totally secure. I promise to use it only to send you MicroZine.

PIC 18F2550

The 18F2550 is the same as the 18F4550 except it is in a 28 pin poackage and has no SSP port but it does have the USB port.

The 18F2550 is a microcontroller for more demanding applications having lots of program memory (16k) and RAM (2k) and a full USB interface - V2.0 Compliant (Low Speed (1.5Mb/s) and Full Speed (12Mb/s).  

You can run the external clock up to 48MHz and if using a lower external clock the internal PLL will run high enough so that the USB clock operates at the correct speed.   So this microcontroller can operate at 48MHz! - but remember the internal clock is Fosc/4 so the MIPS rate is 12MIPSi.e. the real operating frequency is 12MHz.

It comes in a 28 pin package and is also optimized for C programming (75 standard + 8 extra instrucitons) and it uses nano watt technology.

Once again the device uses ICSP for programming and you can program it in circuit if you design the interface correctly.

As with all the 18F series there is a built in 8x8 hardware multiplier so your calculations will run much faster.  

Note: Unlike the mid range PIC micros the 18F series have a 31 word stack so you can make nested function calls without worrying about running out of return stack space.

For a summary of each peripheral block click here.

PIC18F2550 PINOUT

pinout 18F2550


PIC18F2550

18F2550 resources

The 18F2550 is a very capable microcontroller that includes a USB interface built-in. In fact this microcontroller is very similar to the Arduino Uno, which uses the Atmega328p,. The only major (functional) difference being that the 18F2550 has a built in USB whereas the 328p does not.

The architectures of each device are also not similar (the 328p uses a big instruction set whereas the PIC range uses a RISC instruction set). The PIC devices split the clock into four phases so the actual instruction speed (MIPS) is 1/4 the main clock the speed. The Atmega parts run at the clock speed So it looks like the Atmega should be faster since it can take a 20MHz clock it can run at 20MIPS. However for timing reasons (generating a millisecond clock) the Arduino runs at 16MHz. The max clock for the 18F2550 is 48MHz (12 Mhz Xtal upscaled by internal PLL) to 48 so 1/4 of that is 12Mhz or 12MIPS.

The other factor that is interesting is that the RISC instruction set means you need to use more instructions to get the same job done compared to Atmega parts - but that is all hidden in the compiler that generates the assembly code. In all the Atmega parts should be faster. However you may want to choose a PIC part as there is a huge range of internal peripherals that can be matched to your application.


Jump from 18F2550 resources to
Best Microcontroller Projects Home Page.


New! Comments

Have your say about what you just read! Leave me a comment in the box below.



Privacy Policy | Contact | About Me

Site Map | Terms of Use





Visit our Facebook Page:

   Click Here

Recent Articles

  1. Easy Switch Debounce

    Switch debounce: Three different ways to debounce input push switches with one amazing method that you can't miss.

    Read more

  2. How to use a DS18B20 on the Arduino for easy temperature measurement

    How to Easily Use the DS18B20 Maxim One-Wire thermometer with Arduino example code showing external or parasitic power modes.

    Read more

  3. How to use the BMP280 Barometric Pressure chip with the Arduino

    How to use the BMP280 for weather pressure measurement or altitude change detection.

    Read more

  4. The TCS230 Color Sensing Chip: How it works and how to use it.

    How to use the TCS230 (/TCS3200) Color detector chip and easily add it to any of your projects.

    Read more

  5. All about the MC78M05BDTRKG Linear Voltage Regulator

    How to use MC78M05BDTRKG for maximum current without using too large a heatsink pad and how to select the optimum input voltage.

    Read more

  6. Fixed point: A fast and easy way to save tons of microcntroller flash memory

    How to use fixed point maths to save microcontroller memory by avoiding use of the floating point library.

    Read more

Readers Comments

"I wanted to thank
you so so so much
for all the information
you have provided in
your site it's

SUPERB and FANTASTIC."

- Ranish Pottath

"This site really is
the best and my favorite.
I find here many useful
projects and tips."

- Milan

bursach<at>gmail.com<

"Awesome site,
very, very easy and nice
to navigate!"


- Matt
matt_tr<at>
wolf359.cjb.net


Learn Microcontrollers

"Interested in
Microcontrollers?"

Sign up for The
Free 7 day guide:

FREE GUIDE : CLICK HERE


"I am a newbie to PIC
and I wanted to say
 how great your
site has been for me."


- Dave

de_scott<at>bellsouth.net

"Your site is a great
and perfect work.
congratulations."


- Suresh

integratredinfosys<at>
yahoo.com

"I couldn't find the correct
words to define
yourweb site.

Very useful, uncovered,
honest and clear.

Thanks so much for
your time and works.
Regards."


- Anon

Back to Top