robin87 Inserito: 30 marzo 2006 Segnala Share Inserito: 30 marzo 2006 salve a tuttivorrei creare, come da titolo, un circuito che, premendo un tasto mi visualizzi un carattere a video.come circuito ho provato a creare questo:http://img82.imageshack.us/img82/5928/telecomando8ol.pngper quanto riguarda il sorgente in C per il Pica16f84:#include <pic1684.h>#include "delay.c"main (void){ TRISB=0; TRISA=1; if (PORTA==0b0010) { PORTB=0b00000000;//bit start DelayUs(104); PORTB=0b00000100; DelayUs(104); PORTB=0b00000000; DelayUs(104); PORTB=0b00000000; DelayUs(104); PORTB=0b00000000; DelayUs(104); PORTB=0b00000000; DelayUs(104); PORTB=0b00000000; DelayUs(104); PORTB=0b00000000; DelayUs(104); PORTB=0b00000000; DelayUs(104); PORTB=0b00000100;//bit stop DelayMs(100); }}per quanto riguarda la parte sw lato pc ho usato Visual Basic tramite il comando MSCOMMEcco il programma:Private Sub Form_Load() MSComm1.CommPort = 1 ' Selezioniamo la COM1 MSComm1.Settings = "9600,n,8,1" ' Le impostazioni della seriale MSComm1.RThreshold = 1 ' voglio essere informato della ricezione di ogni singolo carattere MSComm1.PortOpen = True ' Apriamo la porta.End SubPrivate Sub MSComm1_OnComm() Dim Rx$ Rx$ = MSComm1.Input ' Leggo il contenuto del buffer di ricezione (e svuoto .Input) If Len(Rx$) Then ' Se ho ricevuto qualcosa lo scrivo nella TextBox Text1.Text = Text1.Text & Rx$ End IfEnd Subarrivato a questo punto quando faccio partire il prog in VB mi compare una textarea dove lì troverò il carattere da me premuto sul circuito.quando premo il pulsantino devo aspettare un 2-3 sec prima di vedere questo carattere "|".secondo voi funziona ho c'è qualche problema??come stranezza che ho riscontrato è stato il fatto di tenere premuto per 2-3 sec il pulsantini altrimenti non mi usciva nulla.infatti io volevo che immediatamente appena premuto il pulsantino mi usciva qualcosa.mi servirebbe un grosso aiuto da parte vostra.confido in voi tuttigrazie a tutti ROberto Link al commento Condividi su altri siti More sharing options...
dlgcom Inserita: 30 marzo 2006 Segnala Share Inserita: 30 marzo 2006 Ciao ,Ti sei dimenticato di dire quale compiatore C stai usando per il pic.Per esempio per il CCS per poter usare il Delay , devi dichiarare la frequenza di clock del tuo pic.Potrebbe essere un problema di temporizzazioni e la seriale del pc non riesce a riconoscere il byte. Link al commento Condividi su altri siti More sharing options...
robin87 Inserita: 31 marzo 2006 Autore Segnala Share Inserita: 31 marzo 2006 ciao uso il compilatore PICCLITE scaricabile gratuitamente sul web.la libreria delay quando installi il compilatore già c'è.cosa posso fare?ROberto Link al commento Condividi su altri siti More sharing options...
dlgcom Inserita: 31 marzo 2006 Segnala Share Inserita: 31 marzo 2006 Prima cosa , io non uso questo compilatore ma ho scaricato il manuale e il prg.Nell include devi mettere il delay.h se il tuo clock e di 4 mhz non devi fare niente ,ma se e' diverso devi impostarloPer sapere come , apri il file delay.h ci sono tutte le spiegazioni.Altra cosa , negli esempi ci sono anche delle routine per la seriale gia fatte , potresti partire con quelle Link al commento Condividi su altri siti More sharing options...
robin87 Inserita: 31 marzo 2006 Autore Segnala Share Inserita: 31 marzo 2006 grazie per il consiglio. provvederò al + presto.intanto se hai qualche altro suggerimento lo accetterò volentieri.ciaoRoberto Link al commento Condividi su altri siti More sharing options...
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora