my PIC 18F4455 (and others...) Programming

Ultimo aggiornamento: 7/7/2008

Ho scoperto i PIC della Microchip e da qualche giorno mi diverto a realizzare progettini per capire bene come usarli. Percui mi sono dotato di un programmatore JDM con zoccoli ZIF (direttamente da eBay, a circa 10 euri qui) e di un paio di 18F4455 (samples dalla Microchip) con cui divertirmi. Ovviamente, essendo utente GNU/Linux, mi sono dovuto attrezzare di conseguenza: Vi consiglio di dotarvi anche di un alimentatore stabilizzato, una breadboard (o wishboard) con relativi fili, un multimetro digitale ed un pò di componentistica (resistenze, condensatori, quarzi, led...). Personalmente ho acquistato la beradboard su eBay, il multimetro ad una fiera dell'elettronica e l'alimentatore è autocostruito (trovate sul Web migliaia di progetti).

Prima di iniziare è FONDAMENTALE leggere e stampare almeno le prime pagine (compreso il pinout) del datasheet PIC18F4455.


Hello world !

Questo progetto è semplice: far lampeggiare un LED collegato ad una porta del PIC.



Ecco il sorgente in linguaggio C (con commenti) pronto per essere compilato con SDCC.

HITACH 44780-Compatible LCD Display Driver

Complichiamo le cose: inizializzare e far visualizzare delle scritte su un LCD compatibile con il famoso controller Hitachi 44780 (alle fiere dell'elettronica trovate questi display ad un costo variabile tra i 3 ed i 5 &euro.).



Ecco il sorgente in linguaggio C (con commenti) pronto per essere compilato con SDCC.

OzModule v0.1

La prima fase della realizzazione dell'OzModule è terminata. Attualmente il modulo è in grado di visualizzare data/ora e temperatura. Ho utilizzato, per lo scopo, due chip della Maxim: DS1337 come RTC ed il DS1631 come termometro digitale:



Le difficoltà sono state quelle di far funzionare correttamente il bus I2C. Grazie ad alcuni ragazzi sul forum della Microchip sono riuscito a sistemare il codice ed a far funzionare correttamente le transizioni I2C. Fatto questo è stato sufficente leggere i datasheet per far funzionare entrambi i chip.
I sorgenti in C.