Inhoudsopgave:

JALPIC One Development Board: 5 stappen (met afbeeldingen)
JALPIC One Development Board: 5 stappen (met afbeeldingen)

Video: JALPIC One Development Board: 5 stappen (met afbeeldingen)

Video: JALPIC One Development Board: 5 stappen (met afbeeldingen)
Video: JALPIC One, an Arduino like solution for the PIC Microcontroller 2024, November
Anonim
JALPIC One-ontwikkelbord
JALPIC One-ontwikkelbord

Als je mijn Instructables-projecten volgt, weet je dat ik een grote fan ben van de JAL-programmeertaal in combinatie met de PIC Microcontroller. JAL is een Pascal-achtige programmeertaal die is ontwikkeld voor de 8-bit PIC-microcontrollers van Microchip. De meeste mensen kennen de Arduino met behulp van de ATMEL-microcontroller. Een van de leuke dingen van een Arduino-bord is dat je de microcontroller kunt programmeren zonder dat je een aparte programmer nodig hebt.

Deze afwezigheid van de noodzaak van een programmeur bracht me bij dit project. Ik wilde een Arduino Uno-achtig bord maken voor de PIC-microcontroller en de software voor dat bord ontwikkelen in de JAL-programmeertaal. Het bord hoefde niet de exacte grootte van het Arduino Uno-bord te hebben, maar de connectoren op het bord zouden - waar mogelijk - dezelfde aansluitingen moeten hebben als de aansluitingen van een Arduino Uno. En zo werd het JALPIC One ontwikkelbord geboren.

Stap 1: Het bord ontwerpen

Het bord ontwerpen
Het bord ontwerpen
Het bord ontwerpen
Het bord ontwerpen

Voordat ik aan het ontwerp begon, heb ik het Arduino-ontwerp goed bekeken en het volgende besloten:

  • Ik wilde dat het bord zou worden gebouwd met standaardcomponenten, dus geen Surface Mount Design (SMD). Reden hiervoor is dat het voor hobbyisten makkelijker zou zijn om het bord in elkaar te zetten.
  • De connectoren moeten zoveel mogelijk dezelfde functionaliteit hebben als de Arduino Uno. Op de voorfoto heb ik de connectoren nog niet gemonteerd.
  • De besturing van het bord moest worden gedaan door een PIC en deze PIC moest worden geprogrammeerd met behulp van de JAL-programmeertaal.
  • Voor testdoeleinden moet het bord een LED hebben die u kunt bedienen vanaf de PIC waarop de applicatie draait. Deze functie is ook aanwezig op de Arduino Uno.
  • De PIC waarop de applicatie draait, moet voldoende geheugen en RAM hebben om de applicatie gemakkelijk te kunnen ontwikkelen.

In het bijgevoegde schema vind je het ontwerp van het JALPIC One ontwikkelbord. Ik heb ook een screenshot van de print toegevoegd. Net als de Arduino kan het bord worden gevoed door de USB-poort of door een externe DC-voeding wanneer het stand-alone wordt gebruikt.

Ik heb een afbeelding toegevoegd die de Arduino en het JALPIC One-ontwikkelbord laat zien.

De applicatie-PIC op het bord wordt geprogrammeerd met behulp van het hex-bestand dat is gemaakt door de JAL-compiler.

Stap 2: Vereiste componenten

Vereiste componenten
Vereiste componenten

Je hebt de volgende componenten nodig voor dit project naast het bord zelf:

IC

  • 1 * LM2940CT-5.0: IC1
  • 1 * LM3940IT-3.3: IC2
  • 1 * PIC16F18557P: IC3 (toepassing PIC)
  • 1 * PIC16F1455P: IC4 (controle PIC)

Kristal

  • 1 * 20 MHz: Q1
  • 1 * 12 MHz: Q2

Diode

  • 1 * 1N4004: D1
  • 1 * 1N4148: D2

LED

  • 1 * Gele LED: LED1
  • 1 * Amber LED: LED2
  • 1 * Rode LED: LED3

Connector

  • 1 * Stroomaansluiting: J1
  • 1 * USB-connector: X1
  • 2 * 6-pins kop: SV2, SV5
  • 2 * 8-pins kop: SV1, SV4
  • 1 * 10-pins kop: SV3
  • 1 * 3-pins jumper: JP1
  • 1 * 2-pins jumper: JP2

Condensator

  • 4 * 22 pF: C1, C3, C11, C13
  • 5 * 100 nF: C2, C6, C7, C8, C 9
  • 1 * 470 nF/keramiek: C10

Elektrolytische condensator

3 * 10 uF/25V: C4, C5, C12

Weerstand

  • 2*22 Ohm: R10, R11
  • 2 * 330 Ohm: R1, R8
  • 6 * 1 kOhm: R2, R3, R4, R5, R6, R7
  • 1 * 33 kOhm: R9

Schakelaar

1 * Omron-drukknop: S1

In de bijgevoegde lay-out van het bord kun je zien waar elk onderdeel moet komen.

Stap 3: De bordsoftware

Het meeste werk was de ontwikkeling van de besturingssoftware voor de besturings-PIC op het bord. Het bord heeft een eenvoudige commandoset om de applicatie-PIC te wissen, de applicatie-PIC te programmeren en nog wat meer commando's. Zoals gezegd is het geschreven in JAL. Er zijn 3 hoofdcomponenten in de software:

  1. Het hoofdprogramma dat de interface met de USB levert, interpreteert de commando's en stuurt de antwoorden.
  2. De hex-bestandsparser die de inhoud van het hex-bestand controleert, extraheert het adres en de te programmeren gegevens.
  3. De programmeur die het geheugen van de applicatie-PIC wist en de applicatie-PIC programmeert met de gegevens afkomstig van de parser.

Aangezien de besturings-PIC geen groot intern geheugen heeft, wordt het hex-bestand realtime en regel voor regel geparseerd, waarna de gegevens worden doorgegeven aan de programmeersoftware die vervolgens ook de applicatie-PIC op een regel programmeert per lijnbasis.

Het bijgevoegde hex-bestand kan worden gebruikt om de controller PIC te programmeren.

Stap 4: Hoe een toepassingsprogramma eruitziet?

Aangezien de hardware van de applicatie-PIC bekend is, kan een eenvoudig include-bestand worden gebruikt om allerlei instellingen te definiëren die nodig zijn om de applicatie-PIC te laten werken. De persoon die het programma schrijft, kan zich dan concentreren op het programma zelf. Een simpel blink-a-led programma in JAL ziet er dan als volgt uit:

include jalpic_one -- voeg het boarddefinitiebestand toe

enable_digital_io() -- maak alle pinnen digitale I/O

alias led is pin_a0 -- alias voor pin met LED

pin_a0_direction = UITGANG

voor altijd lus

led = AAN

_usec_delay(100_000)

led = UIT

_usec_delay(400_000)

eindlus

Dit programma maakt gebruik van de LED die aanwezig is op het JALPIC One ontwikkelbord. Als het programma klaar is, is slechts 1 klik op een knop in een editor genaamd JalEdit voldoende om het programma te compileren en naar het bord te downloaden. De korte video laat zien hoe dit werkt.

Stap 5: Zelf het bord bouwen

Ik zou niet alles in deze Instructable kunnen beschrijven, maar het hele bordontwerp, de software en de documentatie kunnen worden gedownload van een van de Jallib-releases onder de map 'project\jalpic_one'.

Omdat deze nieuwe ontwikkeling nog niet officieel is uitgebracht in een nieuwe versie van Jallib, moet deze worden gedownload met behulp van het nieuwste 'bee-pakket' van de JAL-downloadsite.

De downloadsite is te vinden op: Just Another JAL Website

Veel plezier met het bouwen van je eigen project en kijk uit naar je reacties.

Aanbevolen: