Stap 1: Hardware
Het apparaat bevat een header van de ICSP (In Circuit Serial programmeren) en een USB-type B-aansluiting. Daarnaast is er een enkele LED en een één push-schakelaar voor de input en output apparaten.
Het circuit is zeer ongecompliceerd vooruit (als u dit niveau van de microcontroller elektronica stel ik u ga je gang en enkele van de vele knipperende LED en drukknop tutorials beschikbaar op het web te bouwen voordat u probeert dit niet begrijpt).
De PIC18F4550 zullen 'bus-aangedreven'; Dit betekent dat het apparaat zal trekken de macht van de USB host (computer) dus geen macht verordening vereist is.
De 470nF condensator (C3) is vereist, zodat de PIC kan het functioneren van de interne USB-circuits (het helpt met het reguleren van de spanningen van de USB nodig door de ingebouwde USB-interface in de PIC).
De ICSP header kunt u verbinding maken met een PIC programmer, ik stel met behulp van de goedkope PICkit2-programmer, maar andere ICSP compatibel programmeurs moeten werken prima. De 20Mhz klok is vereist voor USB-toepassingen.
Hierdoor is de PIC te gebruiken PLL die ups-de kloksnelheid voor de vereiste 48Mhz nodig voor USB-communicatie.
(Reader [Jason] stuurde me een e-mail erop te wijzen dat een 20Mhz kristal niet strikt noodzakelijk, is bij het gebruik van de PIC18F on-board USB - dat helemaal juist is.
U kunt verschillende kristallen gebruiken, mits u de configuratie van de fuse PIC wijzigt. Check out de PIC18F4550 gegevensblad blz 29-30 voor meer informatie - Thanks Jason!).
De volgende afbeelding toont het circuit gebouwd op een hobbyist breadboard. Ik heb sommige etiketten toegevoegd aan de afbeelding duidelijk te maken welke onderdelen gaan waar.
Houd er rekening mee dat voor de programmering, we de 5V voeding van de programmeur gebruiken zullen. Aangezien dit een bus-aangedreven USB-apparaat zal de 5V lijnen worden aangesloten op de USB-connector ook.
Dit betekent dat als er gelijktijdig zowel de programmeur en de USB-kabel zijn aangesloten er het potentieel voor de programmeur is te leveren 5V naar de USB host; Dit wordt niet aanbevolen door de USB-normen.
Ik heb nooit een geval gezien waar deze zaken (voor experimenten doeleinden), maar als u wilt, kunt u een barrière diode toevoegen aan op de USB-connector om dit te voorkomen. In mijn projecten gebruik ik meestal een 1N5817 barrière Schottky diode hiervoor.