Bienvenue aux nouveaux arrivants sur FantasPic !

- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.

--- L’équipe FantasPic ---
Forum général sur le langage C !

Modérateur : Jérémy

thermomètre afficheur 7 segments
venom
Avatar de l’utilisateur
Confirmé
Confirmé
Messages : 953
Âge : 38
Enregistré en : avril 2016
Localisation : Klyntar
Contact :

#141 Message par venom » dim. 14 mai 2017 00:08 lien vers la Data-Sheet : Cliquez ici

Bonjour a tous,

:oops: Je ne savais pas qu'il y avait un ordre de séquence précis. Je vais voir pour modifier ça. :wink:

Pour ce qui est de la led, j'en ai ajouté une qui s'allume 500ms juste après la boucle for et quand l'affichage disparait (au delà de 22°) la led continue bien a s'allumer. donc le programme continue bien de tourner. :mur: Et au multimètre aussi les valeurs montent biens.

Pour ce qui est de UART, je n'ai pas la possibilité. Désolé. :oops: (ni les connaissances je suppose)
J'ai que ce module là ach eter sans faire exprès. mais je ne sais pas si ça peux aidé.

Je vais continuer a chercher au niveau du code. Encore merci






@++
Mon site web
Mon discord : venom#4888

thermomètre afficheur 7 segments
paulfjujo
Avatar de l’utilisateur
Expert
Expert
Messages : 2589
Âge : 73
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#142 Message par paulfjujo » dim. 14 mai 2017 11:11 lien vers la Data-Sheet : Cliquez ici

venom a écrit :...

:oops: Je ne savais pas qu'il y avait un ordre de séquence précis. Je vais voir pour modifier ça. :wink:

Pour ce qui est de la led, j'en ai ajouté une qui s'allume 500ms juste après la boucle for et quand l'affichage disparait (au delà de 22°) la led continue bien a s'allumer. donc le programme continue bien de tourner. :mur: Et au multimètre aussi les valeurs montent biens.


La led, tu la fait bien clignoter à chaque passage dans la boucle programme ?

ligne à modifier aussi:
OSCCON = 0b01000000; //Fréquence pour oscillateur interne. oscillateur 1 MHz

venom a écrit :Pour ce qui est de UART, je n'ai pas la possibilité...
J'ai que ce module là ...
@++


Mai si, ce module va bien ...
par contre pour gerer l'UART, il faut passer par le SOft UART , vu que tu utilise RB5 et RB2 pour les afficheurs

Post aussi ta configuration complete :
Projet
Edit Projet
et les valeurs des registres
config1
config2

le watchdog timer est-il bien disabled ?

Je n'ai pas de 16F88 dispo sous la main pour le tester en reel , mai tu peux essayer ceci :

Code : Tout sélectionner

///////////////////////////////
//    name : thermometre     //
//      create : venom       //
//     date : 12/11/2015     //
//     pic : 16f88 1MHz      //
///////////////////////////////

// Liaison terminal univoque   PIC -> PC
// via adaptateur MAX232
// RA3  RX  <--- not used
// RA4  TX   -------------------->  RX PC
// 0V ---------------------------> 0V

long L;        // Initialise un long L
int temp_res;  // Initialise temp_res

int val1;      // Initialise val1
int val2;      // Initialise val2

int boucle_a;  // Initialise boucle_a
unsigned char TEXTE[64];
unsigned char * txt;

unsigned char  font[] = {0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};  // Charge les chiffres de 0 aa 9 en HEXA dans le font


void  SOFT_UART_Write_Text(char *txt)
{
  while(*(txt)>0)
  {
    Soft_UART_Write(*(txt));
    txt++;
  }
}

void  SOFT_UART_Write_CText(const char *txt)
{
 unsigned char c;
  while(*txt)
  { c=*(txt);
    Soft_UART_Write(c);
    txt++;
  }
}

void main() {

    OSCCON = 0b01000000;         //Fréquence pour oscillateur interne. oscillateur 1 MHz
    TRISA = 0b00001100;   // port RA2 et RA3 en entree    Entrée = 1, sortie = 0
    TRISB = 0b00000000;   // tous les port B en sortie. Entrée = 1, sortie = 0
    CMCON=0;              // inhibe les comparateurs
    ANSEL = 0b00000100;   // Configure AN2 en analog

    PORTA.RA0 = 0;        //Disable digit 1
    PORTA.RA1 = 0;        //Disable digit 2


    txt=&TEXTE[0];         // initalise le pointeur txtx sur le debut du tableau TEXTE

//char Soft_UART_Init(char *port, char rx_pin, char tx_pin, unsigned long baud_rate, char inverted);
    Soft_UART_Init(&PORTA,3,4,9600,0);
    Delay_ms(100);
    SOFT_UART_Write_CText("Init Liaison OK\r\n");

    ADC_Init();           // Initialise module ADC
    SOFT_UART_Write_CText("Init ADC OK\r\n");

    while(1){
       // récuperation du Vout du MCP9700A + forume transformation °C
       //  0°C = (10mV)*(0°C)+500 =  500mV
       // 20°C = (10mV)*(20°C)+500 = 700mv
       // 50°C = (10mV)*(50°C)+500 = 1000mv
       L = ADC_Read(2)*500;
   // affichage sur terminal PC
      SOFT_UART_Write_CText("Mesure ADC L= ");
      LongToStr(L,txt);
      SOFT_UART_Write_Text(txt);
      Soft_UART_Write(13);Soft_UART_Write(10);  // CR LF   saut d eligne

       L = L>>10;
       L = L-42; //42
       temp_res = L ;

       for(boucle_a=; boucle_a<100 ; boucle_a++)
       {
       val2 = temp_res / 10;  //recupere la dizaine de la valeur
       PORTB = font[val2];  //Envoie le chiffre en HEXA au portB
       PORTA.RA0 = 1; //active le port RA0
       Delay_ms(10);    //delay de 10 milisecondes
       PORTA.RA0 = 0; //desactive le port RA0

       val1 = temp_res % 10;  //recupere l'unité de la valeur
       PORTB = font[val1];  //Envoie le chiffre en HEXA au portB
       PORTA.RA1 = 1; //active le port RA1
       Delay_ms(10);  //delay de 10 milisecondes
       PORTA.RA1 = 0; //desactive le port RA1
       Delay_ms(10);
       }
    }
}
 
Aide toi, le ciel ou FantasPic t'aidera

thermomètre afficheur 7 segments
venom
Avatar de l’utilisateur
Confirmé
Confirmé
Messages : 953
Âge : 38
Enregistré en : avril 2016
Localisation : Klyntar
Contact :

#143 Message par venom » dim. 14 mai 2017 18:41 lien vers la Data-Sheet : Cliquez ici

Merci Paul pour ce code. Je vais me documenté sur la façon de communiquer entre pic et pc . je vous tiens au courant.

Encore merci






@++
Mon site web
Mon discord : venom#4888

thermomètre afficheur 7 segments
venom
Avatar de l’utilisateur
Confirmé
Confirmé
Messages : 953
Âge : 38
Enregistré en : avril 2016
Localisation : Klyntar
Contact :

#144 Message par venom » lun. 15 mai 2017 12:15 lien vers la Data-Sheet : Cliquez ici

Bonjour a tous,

:mur: quel bête. Ma tour est HS, donc je travail actuellement sur ordinateur portable. (Sans rs232)

Existe t'il le même module mais en USB ?
Si oui avez vous des liens pour être sur de prendre le bon ? D'avance merci 8-)






@++
Mon site web
Mon discord : venom#4888

thermomètre afficheur 7 segments
paulfjujo
Avatar de l’utilisateur
Expert
Expert
Messages : 2589
Âge : 73
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#145 Message par paulfjujo » lun. 15 mai 2017 18:32 lien vers la Data-Sheet : Cliquez ici

venom a écrit :Existe t'il le même module mais en USB ?
@++



un oeil ICI
Aide toi, le ciel ou FantasPic t'aidera

thermomètre afficheur 7 segments
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 2595
Enregistré en : juillet 2016
Localisation : Terre

#146 Message par Temps-x » lun. 15 mai 2017 22:31 lien vers la Data-Sheet : Cliquez ici

Bonsoir tous le monde,

Tu peux trouver cela ici :
http://www.ebay.fr/itm/Pl2303ta-For-Win ... SwtZJY9aHf

Il faut prendre la version de la puce PL2303TA, qui est compatible pour toutes version Windows.

Le pilote est téléchargeable ici :
http://www.prolific.com.tw/US/ShowProdu ... 25&pcid=41

A+
:roll: Les requins, c'est comme le langage ASM, c'est le sommet de la chaîne alimentaire. :wink:

thermomètre afficheur 7 segments
paulfjujo
Avatar de l’utilisateur
Expert
Expert
Messages : 2589
Âge : 73
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#147 Message par paulfjujo » mar. 16 mai 2017 09:11 lien vers la Data-Sheet : Cliquez ici

bonjour,


Rappel:

LePIckit2 peut AUSSI servir de terminal UART !
si les lignes RB6 RB7 sont dispo...
Aide toi, le ciel ou FantasPic t'aidera

thermomètre afficheur 7 segments
venom
Avatar de l’utilisateur
Confirmé
Confirmé
Messages : 953
Âge : 38
Enregistré en : avril 2016
Localisation : Klyntar
Contact :

#148 Message par venom » mer. 17 mai 2017 06:32 lien vers la Data-Sheet : Cliquez ici

Bonjour a tous,

Ok merci pour vos conseil. Je pars donc sur un module avec puce PL2303TA :wink:

Ces modules fonctionne aussi uniquement si les port RB6 et RB7 sont disspo ?






@++
Mon site web
Mon discord : venom#4888

thermomètre afficheur 7 segments
paulfjujo
Avatar de l’utilisateur
Expert
Expert
Messages : 2589
Âge : 73
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#149 Message par paulfjujo » mer. 17 mai 2017 13:07 lien vers la Data-Sheet : Cliquez ici

bonjour,


venom a écrit :...Ces modules fonctionne aussi uniquement si les port RB6 et RB7 sont disspo ?


Oui, si tu te serts de l'UART HARDWARE

NON, si tu prends le SOFTWARE UART
où tu peux definir toi meme , les pins à utuiliser pour TX ( e evntuellement RX)

voir exemple dans post precedent
Soft_UART_Init(&PORTA,3,4,9600,0); .....
Aide toi, le ciel ou FantasPic t'aidera

thermomètre afficheur 7 segments
venom
Avatar de l’utilisateur
Confirmé
Confirmé
Messages : 953
Âge : 38
Enregistré en : avril 2016
Localisation : Klyntar
Contact :

#150 Message par venom » jeu. 8 juin 2017 22:48 lien vers la Data-Sheet : Cliquez ici

Bonsoir a tous,

J’espère que vous allez bien depuis le temps ? NON NON, je n'est pas encore lâcher prise avec ce fichu thermomètre 7seg :furieux:

Plus sérieusement, j'ai reçu mon module TTl usb avec puce TA. J'ai donc installer les drivers via le lien de Temps-X sur mon Windows 10. Impeccable module reconnu de suite en port COM 3. 8-)

J'ai donc re-programmer mon 16f88 avec le code de paulfjujo, en y ajoutant en fin de code une led qui clignote sur le port RA3 pour etre sur que le code tourne.
Sa c'est good la led clignote bien a chaque boucle.

Par contre pour ce qui est de l'utilisation RX TX je ne connais pas du tout. J'ai donc relier (d’après le code de paul) le RA4 au RX de mon module, de la j'ai lancer USART Terminalqui est dans mikroc :oops: j’espère que c'est bien ça.
De la, j'ai appuyer sur le bouton connect, mais après je ne sais pas quoi faire. Rien ne se passe. :?
Ma breadbord est bien alimenté et la led que j'ai ajouté au montage clignote bien.

Voici un screen de mon usart treminal:
Image

Et comme la demander Paul, voici un screen des paramètre de mon projet sous mikroc:
Image

En vous remerciant d'avance.





@++
Mon site web
Mon discord : venom#4888


Retourner vers « Langage C »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 37 invités