|
|
|
||||||||
| Arcade | Registrazione | Blogs | Regolamento | Feedback | FAQ | Lista Utenti | Calendario | Segna come Letti |
| Ultimi 5 blog pubblicati su PcTuner Blog | ||||||
|
||||||
![]() |
|
|
Strumenti Discussione | Modalitą Visualizzazione |
|
|
#1 |
|
Registered User
|
Porta A con diversi utilizzi
Salve a tutti.
Ho il seguente dubbio: La porta A e' usata in un mio progetto per 2 scopi. La porta(0) e (1) con 2 conversioni analogiche digitali e le altre 6 porte devono decodificare i livelli alti e bassi (+5V e 0V) di 2 contraves per la sintonia MHz e decine di MHz della mia radio (da 1 a 30MHz) e visualizzarlo sull'LCD. Il primo contraves definisce le unita'(da 0 a 9 MHz) e l'altro le decine (da 1 a 3 decine di MHz) quindi 6 bit giusto quelle rimaste della porta a. Purtroppo non posso usare la funzione byteMHz=Bcd16Dec2(porta) in quanto la porta e' usata anche come conv. A/D. Pensavo di usare la funzione select case. Cosa mi consigliate voi? Avete qualche stralcio di codice da cui attingere possibilmente in Mikrobasic. Per le decine di MHz farei cosi' anche se non mi sembra tanto elegante. if porta[2]=1 and porta[3]=0 decMHz=1 end if if porta[2]=0 and porta[3]=1 decMHz=2 end if if porta[2]=1 and porta[3]= decMHz=3 end if grazie dell'aiuto. Antonio Ultima Modifica di aduri : 18-01-2009 15.10.50. Ragione: aggiunta codice |
|
|
|
|
|
#2 |
|
Registered User
|
Basta usare shift ed and logici
__________________se PORTA č composto da dduuuuaa, allora decine = (PORTA >> 6) & 0x3 unitą = (PORTA >> 2) & 0x0F non ho idea di come si scriva in basic, ma l'idea penso sia chiara Ultima Modifica di BitBerzerkir : 18-01-2009 15.21.34. |
|
|
|
![]() |
Per le vostre immagini su questo forum potete usare PcTunerUp! Iscriviti gratuitamente alla nostra newsletter. |
| Utenti attualmente attivi che stanno leggendo questa discussione: 1 (0 utenti e 1 visitatori) | |
| Strumenti Discussione | |
| Modalitą Visualizzazione | |
|
|