Page 1 of 1

Configurazione Porte I/O

PostPosted: 04 Mar 2014, 18:24
by einstein
salve a tutti, sono alle prime con il bascom e già la prima domanda.

come faccio a configurare la porta A del atmega32 in modo da avere i primi 4bit di input con resistenza pull-up e
gli altri bit come uscita?
devo usare il CONFIG oppure c'è un altro modo?
grazie

Re: Configurazione Porte I/O

PostPosted: 04 Mar 2014, 21:10
by Fagos
einstein puoi configurare i pin scrivendo direttamente nei registi DDR direction data register

es:
Code: Select all
DDRA = &B_1111_0000


i primi quattro bit=0 della porta A sono di ingresso, mentre i bit più alti =1 sono di uscita.
per configurare le res di pu:

Code: Select all
PORTA = &B_0000_1111


puoi configurare bit x bit singolarmente, es:
Code: Select all
DDRA.0=0    'configuri il bit zero della porta A come input


ok?

Re: Configurazione Porte I/O

PostPosted: 05 Mar 2014, 09:22
by deluca
@einstein,
è chiaro che puoi settare i registri utilizzando anche la notazione esadecimale o decimale, anche se quella binaria in questo caso è più chiara ed esauriente.

Re: Configurazione Porte I/O

PostPosted: 05 Mar 2014, 14:30
by einstein
grazie fagos e deluca.
nella notazione binaria gli "_" tra i bit sono necessari, o possono essere omessi?

altra domanda:
quali sono le cose da definire necessarie e importanti quando inizio a scrivere un codice sorgente, per esempio per atmega32?

Re: Configurazione Porte I/O

PostPosted: 05 Mar 2014, 19:38
by deluca
si, gli (_) possono essere omessi, si inseriscono per rendere + leggibili i valori dei bit.

Code: Select all
$regfile = "m32def.dat"
$crystal = 8000000                                         
$hwstack = 64
$swstack = 64
$framesize = 64
$baud=115200

Le direttive minime per istruire il compilatore sono queste.