Hello, this is my newest addition to my collection of DangerousPrototypes' projects.
18f2550 breakout board (http://http://www.flickr.com/photos/psyko_chewbacca/7178545659/)
I did not solder the voltage regulator section as I don't plan on using it. This board will only be used for prototyping on a breadboard so 5V will be supplied either by USB or from an external source feeded through the breadboard.
Since the main objective of this board is to offer a complete base setup for a 18f2550 in order to save space on a breadboard, the IO header was soldered with right angle pin header. That way the PCB will be inserted vertically thus reducing space taken on a breadboard.
I chose to install a 16MHz crystal as I understood by reading the datasheet that this would be one of the best way to achieve maximum speed for both CPU and USB. Am I right? Documentation on this matter is not really straight-forward...
I feel that maybe a fuse should be added on the +5V line of USB. If the board is intended for breadboad use, shorts or high current load on the +5V line may be possible and I assume this is bad for the USB port of a computer. Surely there are fuses on the motherboard fo the computer but I would prefer changing a fuse on the breakout board rather than on my motherboard!
I have not yet tested the board as I am in my midterm exams period but I will get on it after that! I hope everything works but I don't see why not.
Thanks alot for the PCB!
[quote author="bennyboy"]I chose to install a 16MHz crystal as I understood by reading the datasheet that this would be one of the best way to achieve maximum speed for both CPU and USB. Am I right? Documentation on this matter is not really straight-forward...
See "TABLE 2-3: OSCILLATOR CONFIGURATION OPTIONS FOR USB OPERATION" in the datasheet.
After referring to the table you can see that if you configure the PIC for HSPLL, the 16MHz can be divided by 4 to get 4MHz which is used by PLL to generate a 96MHz clock. After that, the CPUDIV1 (PLL postscaler) divides the 96MHz by 2 producing a 48MHz clock signal for use by the MCU as its primary clock.
Hi I just ported the echo demo of the open source usb stack, for the pic18F2550 Breakout Board
http://dangerous-prototypes-open-hardwa ... /firmware/ (http://dangerous-prototypes-open-hardware.googlecode.com/svn/trunk/Microcontrollers/PIC18F2550/firmware/)
for your 16MHZ configuration in the configworks.h file change the first line from
#pragma config PLLDIV = 3
#pragma config PLLDIV = 4
the PLL wants a 4Mhz signal, the one I use has a 12Mhz crystal so it need to be divided by 3, your's needs to be divided by 4...all the other setting are set so the Pll drives the USB, and mcu ~48Mhz or 12MIPS