begin process at 2010 02 10 17:00:42
  Trouver un code source :
 
dans
 
Accueil > Forum > 

VB.NET et VB 2005

 > 

Divers

 > 

Débutants

 > 

transfert donnée VB2005 vers pic rs232


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

transfert donnée VB2005 vers pic rs232

jeudi 13 mars 2008 à 15:15:18 | transfert donnée VB2005 vers pic rs232

chestercat

Bonjour,

Je réalise actuellement un projet et je bloque sur la transmission de mon listview par rs232 à un pic 16f8777.
En réalité le pic reçoit les 2 premiers caractères et après il attend indéfiniment les suivants, je pense que mon apllication vb envoie tout à la suite et que le pic n'a pas le temps de tout voir.
Pourtant je travaille avec une connection 9600baud et un pic cadencé à 20Mhz.

Est-ce que quelqu'un pourrait regarder mon code VB pour me dire ce qui cloche et si tout est bon le problème viendra du pic.

Merci beaucoup de votre aide

Tig
jeudi 13 mars 2008 à 16:33:17 | Re : transfert donnée VB2005 vers pic rs232

tiblay

Membre Club
Salut,

Un Pic a 20 Mhz et 9600 Bps, ton Pic tourne a VIDE.....  tu le paie a rien faire  hi hi hi

Quelle language utilise tu ????
Est ce que tu utilise l'interrupt (PIC) pour recuperer tes BYTES ???
Quelle traitement fait tu dans le PIC ????
Tu recoit/envoie des BYTES NULL CHR(0) ???
As tu un BUFFER cote RX et si oui c'est le compilateur ou toi qui le gere


Reviens avec plus de details

Bye
jeudi 13 mars 2008 à 17:11:17 | Re : transfert donnée VB2005 vers pic rs232

chestercat

en fait je fais du polling des données arrivant et je les stocke dans des variables(pas un tableau).
Le seul moyen complétement tordu que j'ai trouvé est de faire un com.open et un Com.close à chaque envoi de 2 BYTE.
Je sais qu'il faudrait utiliser les interruptions mais je suis débutant et au début ça ma fait peur donc je suis partie comme ça et maintenant ça coince.

Je programme mon pic en C, donc un buffer serait un truc genre char tab[10] c'est ça?




jeudi 13 mars 2008 à 18:58:52 | Re : transfert donnée VB2005 vers pic rs232

tiblay

Membre Club
Salut,

OK pour le BUFER non ce n'est pas ca, c'est une memoire qui est cree software est qui fonctione en FIFO (first in first out), le tout fonctionne nuturellement avec l'interupt du port serie.  En C normalement tu as acces a cette fonction, et c'est le compilateur qui s'occupe du reste.  On peut bien entendu le cree (si on travaille en ASM en autre), mais quelque fois la logique de celui qui l'as cree cause probleme...... 

Pour ce qui est de ton probleme, a premiere vue cela resemble a un manque de temp du cote du PIC et tu semble perdre des BYTES.  Le fait que tu ouvre et ferme le port nous indique seulement que quand tu cree un delais entre l'envoie des bytes, le PIC semble avoir le temp de traiter l'information.  Il faudrait voir du cote du code du PIC, le probleme proviens de la gestion de la reception des BYTES.  Il faut pas oublier aussi, dans un PIC ou autre microcontroleur, le fait de declarer une variable plus  GROSSE  par exemple un LONG au lieu d'un BYTE par exemple, le temp de calcul en soufre enormement sans donner aucun autre ajout.  La quantite de donnees envoyer au micro est aussi importante.  Si la quantite est importante (> 250 BYTES) je te sugere de regarder du cote INTERUPT afin d'optimiser l'aquisition des donnees, de les mettres en memoire (dans un buffer) et les traiters pendant et apres le reception.  Tu peut mettre un delais aussi du cote PC entre chaque BYTE envoyer pour TESTER, mais cela devrais rester un TEST seulement, meme si cela fonctionne bien. 

Dans ton cas il faut eviter de BOUCLES sur le MAIN et de recuperer les BYTES a chaque fois que tu reviens au debut.  La methode NORMAL est d'activer l'interupt du port serie et des la reception de BYTES ton programme BRANCH dans la routine de l'interuption et REVIENT apres.  Il faut aussi faire attention a ne pas trop PERDRE de temps dans la routine d'interuption car quand tu est la il n'y a pas aucune autre INTERUPT EVENT qui peut etre cree.

Donne moi ta methode que tu utilise dans ton logiciel et on pourras t'aider a ameliorer ta solution

Bienvenue dans le mode des MICROCONTROLEURS,  C'est un merveilleux mode, et tu doit te donner le temps de COMPRENDRE le fonctionnement interne afin de bien l'utiliser.  C'est sur qu'il y a des differences majeur avec un PC quand tu concoit un FIRMEWARE.  Mais QUAND tu reussi, c'est beau a voir ce petit MONDE travailler.....

Fait tes TEST et reviens avec les resultats,

Bonnne chance




jeudi 13 mars 2008 à 19:38:17 | Re : transfert donnée VB2005 vers pic rs232

sar1967

Réponse acceptée !
essai ca juste apres avoire envoye le premier byte:
System.Threading.Thread.Sleep(50)
ensuite le second
System.Threading.Thread.Sleep(50)
3~ etc...
si c'est bon (enfin ca devrais marcher)
tu fait une boucle

on essai tous d'apprendre ce qu'on ne sait pas .
vendredi 14 mars 2008 à 11:50:49 | Re : transfert donnée VB2005 vers pic rs232

chestercat

Ok c'est  pas la plus classe des programmation mais pour la démo je vais essayer comme ça, je le reprendrais plus tard quand j'aurais le temps.

Merci beaucoup à tous!!


Cette discussion est classée dans : donnée, transfert, rs232, vb2005, pic


Répondre à ce message

Sujets en rapport avec ce message

transfert de donnée de asp vers js (et inverse) HELP! [ par glopglop ] Salut!!J'ai une liste deroulente dynamique qui doit lorsque l'utilisater a fait un choix envoyer plusieurs information a une autre page!J'arrive a env Le transfert d'une base de donnée mdb --> xls [ par jamaica ] Salut J'ai créé un programme sous vb5 avec une base de donnée access le problème que j'ai, je voudrait transférer certaine de ses donnée sur un tablea Transfert de donnée [ par mgarde ] J'ai 3 petites questions:1. est-il possible de faire une recherche de certains mots (par ex. *.mp3,*.mpg), sur un répertoire distant? et de les suppri lecture données par rs232? [ par duquep ] PhilBonjour à tous,En deux mots:J'ai programmé un PIC ( Microcontroleur de type PIC 16f876àCe microcontroleur lit deux variables (byte). Les variables RS232 et PIC [ par passicon ] Bonjour, j'essaye de communiquer avec mon pic (microchip) par liaison serie, dans mon code "pic" je mets ceci :     USART_Write(temp);     USART_Write enregistrement de donnée dans une base Access sous VB2005 [ par nemo_matrix ] Salut a tous,je suis débutant et je reste bloqué sur la possibilité d'entrer des données ecrite un TextBox, Je cherche a récupére l'élément ecrit dans liaison PIC --> RS232 [ par NwardeZ313 ] Bonjour tout le mondeVoilà, explication de l'affaire!Dans un projet microcontroleur, je dois effectuer une liaison entre un PIC (16f876) et un pc via [VB2005] Serialport->Transfert d'un fichier en binaire. [ par nitrique ] Bonjour à tous,J'aimerais envoyer un fichier image au format PCX sur le port COM en binaire.Simuler cette commande dos, en fait: "copy image.pcx COM1: transfert a distance entre 2 base de donnée SQL [ par elbenni ] Bonjour,Je developpe une application en VB6 et base de donnée SQl Server7.0 et j'ai besoin d'une methode efficace pour le transfert des transactions e Transfert de donnée excel à une base de donner sur access [ par micou26 ] Bonjour à tous.Je travail pour une entreprise qui stock des données sur excel, mais il y a trop de lignes existantes comportant des fonctions de calcu


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,718 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales