knsteam
Messages postés6Date d'inscriptionjeudi 7 juin 2007StatutMembreDernière intervention19 juin 2007
-
7 juin 2007 à 11:10
knsteam
Messages postés6Date d'inscriptionjeudi 7 juin 2007StatutMembreDernière intervention19 juin 2007
-
19 juin 2007 à 09:37
Salut tout le monde
Je travaille sur un afficheur déroulant, et je voudrais taper un message depuis l'interface visal basic et l'enregistrer dans le PIC pour qu'il s'affiche.
Pour cela j'utilise une liaison RS232, lorsque je regarde les signaux qui proviennent du PC et du PIC je peux voir qu'ils communiquent bien entre eux mais que le PIC reois que des zeros ou alors il affiche n'importe quoi.
je voudrais donc savoir comment connecter le PIC au PC via la liaison RS232 et si quelqu'un avait une interface visual basic qui marche je suis preneur
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 11 juin 2007 à 10:45
Si j'ai bien compris, tu configure ton PIC pour fonctionner à 9600 baud sous 10MHz, mais comme il tourne sous 20MHz, tu espere communiquer en réalité à 19200 bauds.
Bidouille quelque peu hasardeuse me semble-t-il.
Déjà il te faudras donc configuré ton PC pour 19200 bauds.
Ensuite, il faut espérer que le calcul de la vitesse de communication au niveau du PIC est linéaire.
Je ne sait pas comment le PIC configure son uart en fonction des paramètres que tu lui envoie. Ta manip présuppose que la configuration de l'uart du PIC est strictement identique entre 10Mhz/9600 bauds et 20MHz/19200 bauds en respectant les règles normales de configuration. Peut-etre n'est-ce pas le cas.
Tu peux déjà essayer avec des outils classiques comme l'hyperterminal ou même les outils que tu peux avoir avec le PIC, voir si ta manip est possible.
Ou sinon, essayer avec ton code de fonctionner déjà avec une configuration plus conventionnelle.
knsteam
Messages postés6Date d'inscriptionjeudi 7 juin 2007StatutMembreDernière intervention19 juin 2007 11 juin 2007 à 11:36
En fait je n'utilise pas l'uart du pic mais le portA.4 du pic, j'ai tout de meme testé en me connectant sur le portC.7 du pic mais ca ne marche pas. J'ai toujours la meme chose (soit des zeros soit le pic affiche n'importe quoi). (D'après mon tuteur de stage le circuit fonctionnait.) .
Mais je vais essayer en configurant le PIC pour un oscillateur de 20MHz.
(je ne possede pas d'hyperterminal sur ce PC)
Vous n’avez pas trouvé la réponse que vous recherchez ?
knsteam
Messages postés6Date d'inscriptionjeudi 7 juin 2007StatutMembreDernière intervention19 juin 2007 11 juin 2007 à 16:12
Je voudrai aussi savoir si c'était normal que CTS se remet à zero lorsque le PIC recoie le premier caractère, il ne devrait pas se remetre à zero lorsque tout les caractères sont envoyés?
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 11 juin 2007 à 20:56
Ben normalement le CTS doit tu signalé que tu peux envoyer des données, c'est à dire que le PIC est pret pour en recevoir.
S'il passe le CTS à 0, ça veut dire que pour le moment il ne peut plus recevoir des données, peut-etre le temps de traiter les dernières recues. Il doit par la suite le remettre à 1 pour te signaler qu'il peut de nouveau en recevoir et donc que tu peux les envoyer.
Attention, il est possible qu'iol ne te signale qu'il est pret à recevoir que si toi même tu lui signale que tu est pret à lui en envoyer. Cela est fait avec le signal RTS
Le processus est :
- J'ai des données à t'envoyer, je fait une demande d'emission, je met RTS à 1
- Tu m'accorde l'emission et tu est pret à recevoir, tu me met CTS à 1
- j'envoie
- Tu ne peux plus recevoir, tu me met CTS à 0
- J'envoie plus
- Tu es de nouveau pret à recevoir, tu met remet CTS à 1
- Je reprend l'envoie
- JE n'ai plus rien à envoyer, je met RTS à 0
- Puisque je n'ai plus rien à envoyer, il n'y a pas de raison que tu m'autorise l'envoie, donc tu me repasse CTS à 0
Pour "Je" ton considère que c'est le PC, pour "Tu" le PIC
knsteam
Messages postés6Date d'inscriptionjeudi 7 juin 2007StatutMembreDernière intervention19 juin 2007 18 juin 2007 à 16:00
Salut
C'est encore moi
Je voulais savoir où est ce que je pouvais trouver un compilateur VB gratuit sans le télécharger sur Emule (car à mon stage je ne peux pas avoir Emule).
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 18 juin 2007 à 17:47
Pour le coté légal :
Il n'existe pas de version gratuite de VB6.
De plus, il n'est plus vendu depuis maintenant 4 ans. Ta seule chance de le trouver et de l'acheter d'occasion. Il peut arriver avec un peu de chance d'en trouver sur des sites comme Ebay ou consors
Il existe par contre en téléchargement chez microsoft une version gratuite de VB2005 (version Express), mais là ce n'est plus du VB6, c'est du VB.Net. Il te faudra donc reprendre une bonne partie de ton prog, ce n'est plus tout à fait la même philosophie de programmation.
Pour le coté obscur de la force (emule et autres réseaux pirates) :
Il est assez facile de le trouver, mais de ce coté là, c'est à toi de prendre tes responsabilités.
Ici à CodeS-SourceS, tu ne trouvera aucune aide, on ne cautionne pas ce genre de réseaux (même si à l'extérieur certains membres peuvent s'y promener, chacun fait ce qu'il veut).