Libreria per i ritardi software

Questa libreria consente di inserire nel programma dei ritardi, specificando il valore di millisecondi o di secondi desiderato.

Per usarla basta seguire i passi sottostanti:

1) scaricare i file delay.h e delay.c dai link sottostanti e includerli nel progetto MPLAB

2) impostare il valore di frequenza (in Hertz) a cui lavora il PIC, modificando la costante F_CLOCK presente nel file delay.h; i valori attualmente supportati sono 4000000 (valore di default), 8000000, 16000000 e 20000000

3) inserire all'inizio del vostro programma la direttiva:

#include "delay.h"

4) usare le istruzioni DelayMs(...) e DelayS(...) per eseguire i ritardi

La funzione DelayMs(...) riceve come argomento un char senza segno (8 bit) e quindi consente di generare ritardi al massimo di 255 millisecondi; invece la funzione DelayS(...) riceve come argomento un intero senza segno (16 bit) e consente di generare ritardi fino a 65535 secondi.

Sono anche presenti le funzioni Delay_1_ms(), Delay_500_us() e Delay_50_us() che generano dei ritardi fissi rispettivamente di 1 millisecondo, 500 microsecondi e 50 microsecondi.

Bisogna prestare attenzione al fatto che la libreria fa uso della locazione di memoria (o registro) di indirizzo 0x0C come variabile di conteggio, quindi bisogna fare attenzione a non sovrascrivere questa locazione con altri valori usati dal programma (si può anche modificare la locazione in uso con una a scelta, sostituendo ogni valore 0x0C con un altro a scelta nel file delay.c).


delay.c   delay.h

Libreria per la gestione di display LCD

Consente di gestire un display LCD compatibile con lo standard del controller Hitachi HD44780; sono supportati anche i display con controller ST7066 e KS0066.

Caratteristiche principali supportate:

- display a 1x8, 1x16, 2x8 e 2x16 caratteri

- modalità di controllo con bus a 4 o 8 bit

- modalità di controllo con o senza busy flag

- modalità di sola scrittura (piedino RW collegato a massa) o lettura e scrittura (piedino RW collegato al PIC)

- assegnazione delle singole linee di I/O collegate al display, senza dover usare obbligatoriamente le linee di uno stesso PORT

Per lavorare necessita di avere a disposizione anche la libreria dei ritardi software, scaricabile dai link soprastanti.

Per usarla basta seguire i passi sottostanti:

1) scaricare i file lcd.h, lcdCommands.h e lcd.c dai link sottostanti e includerli nel progetto MPLAB

2) aprire il file lcd.h ed impostare i vari parametri del display in uso: i caratteri per riga (LCD_CHARACTERS), il numero di righe (LCD_LINES), il numero di bit per il bus (LCD_BUS_WIDTH), l'uso del busy flag (LCD_BUSY_FLAG_USED), l'uso del piedino RW (LCD_RW_USED) ed infine i nomi dei singoli pin di I/O del microcontrollore (registri PORT) collegati alle linee del display oltre ai nomi dei bit che ne controllano la direzionalità (registri TRIS)

3) inserire all'inizio del vostro programma la direttiva:

#include "lcd.h"

4) usare l'istruzione startDisplay() per inizializzare il display

In qualche caso i display 1x16 (soprattutto quelli con controller non Hitachi) devono essere gestiti come display 2x8, quindi in qualche caso può risultare necessario provare entrambe le modalità per accertarsi del funzionamento.

lcd.c   lcd.h  lcdCommands.h