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 ---
On parle des Pics, sans rapport avec le langage ou la programmation

Modérateur : Jérémy

quel PIC choisir?
chevaliernoir
Membre
Membre
Messages : 1
Enregistré en : juillet 2023

#1 Message par chevaliernoir » jeu. 27 juil. 2023 14:30

Bonjour.
J'envisage de démarrer un nouveau projet, assez simple, mais qui me permettrait de rentrer dans l'univers des PIC.
Je suis electronicien (j'ai concu durant 15 and des calculateurs d'injection pour voiture), mais je n'ai pas aligné une ligne de code ni même configuré un registre depuis 30 ans. Mes souvenirs d'assembleur datent aussi de cette période mais j'imagine que ca n'a pas beaucoup changé, au moins dans l'univers du 8 bit.

Le concept du projet est simple : le PIC lit une ou deux entrées analogiques, effectue quelques traitements simples, et fournit une tension analogique en sortie

Voici ou j'en suis de ma reflexion :

Choix du PIC :
Mon besoin en périphérique est d'avoir une ou deux entrées analogiques 10 bits, et une ou deux sortie analogique (10 bits aussi), plus une sortie logique.
Plus c'est petit, mieux c'est.
Le minimum de mémoire devrait suffire.
J'envisage de le programmer en assembleur.
Avec le moteur de recherche Microchip, j'ai identifié la série de PIC 8 bits PIC16F171/16F181 qui me parait convenir (?)
Ca vous inspire quelque chose?

Ce que je n'arrive pas à anticiper c'est, dans le cas où je fais une acquisition analogique et que je recopie cette valeur sur la sortie analogique, en dehors du traitement que je ferai entre les deux, quelle est l'ordre de grandeur :
- du délais entre l'entrée et la sortie (si j'utilise l'oscillateur interne)
- de l'écart en tension entre l'entrée et la sortie.
Je ne voudrais pas faire la réalisation et découvrir au final qu'il y a trop d'écart (de tension ou de delais)

Je suis perdu aussi sur toutes les eval boards dispo... mon but étant de pouvoir programmer des PIC, avoir accès aux ports pour faire tourner le programme, et éventuellement pouvoir debugger. Si tout fonctionne je ferai mes propres PCB en suivant.
Si je choisis un PIC avec le minimum de pins, je vais utiliser tous les ports, et du coup, j'imagine que le debug ne sera plus possible, non?
Comme démarrer un tel projet demande un investissement important (en temps) je souhaiterais ne pas me tromper avant de me lancer. D'où mes questions... Merci

quel PIC choisir?
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 2624
Enregistré en : juillet 2016
Localisation : Terre

#2 Message par Temps-x » jeu. 27 juil. 2023 21:13

Bonjour chevaliernoir, et tout le forum,

chevaliernoir a écrit :Source du message Le concept du projet est simple : le PIC lit une ou deux entrées analogiques, effectue quelques traitements simples, et fournit une tension analogique en sortie


Dans la plupart des Pics 8 bits, il y a un seul convertisseur adc, par contre il y a plusieurs entrée qui peuvent être configurer en numérique.

En faisant du multiplexage tu lis la première entrée, puis tu passes à la suivante et ainsi de suite.....

Sur quoi veux tu afficher ton résultat (l'écran) ?

chevaliernoir a écrit :Source du message Mon besoin en périphérique est d'avoir une ou deux entrées analogiques 10 bits, et une ou deux sortie analogique (10 bits aussi), plus une sortie logique.



:roll: Entrées analogiques 10 bits ........ tu veux dire : entrée numérique 10 bits

Pour une sortie numérique 10 bits, il faut 10 pattes, si ton a deux, ça fait 20 pattes, plus l'écran à gérer

J'ai pas tout compris sur ta demande ? que veux tu faire ? as tu un schéma ?

Un Pic avec 40 pattes me semble adapté pour ton projet, genre Pic18F46k22 qui reste simple à programmer

chevaliernoir a écrit :Source du message J'envisage de le programmer en assembleur.


Tu as de la change je programme mes pic en ASM, donc je pourrais éventuellement te venir en aide

chevaliernoir a écrit :Source du message Ce que je n'arrive pas à anticiper c'est, dans le cas où je fais une acquisition analogique et que je recopie cette valeur sur la sortie analogique, en dehors du traitement que je ferai entre les deux, quelle est l'ordre de grandeur :
- du délais entre l'entrée et la sortie (si j'utilise l'oscillateur interne)
- de l'écart en tension entre l'entrée et la sortie.
Je ne voudrais pas faire la réalisation et découvrir au final qu'il y a trop d'écart (de tension ou de delais)



Sache qu'un Pic18F46k22 peut tourner à 64 Mhz (sans Quartz) ça va très vite, 62.5 nanoseconde par instruction.

L'écart de tension viens de l'électronique sur ton entrée et ton code écrit pour ton Pic (il faut rien négliger), la précision ça un prix... avec des composant qui ont des références de tension très précis pour ton adc .....

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

quel PIC choisir?
Claudius
Avatar de l’utilisateur
Passionné
Passionné
Messages : 260
Âge : 69
Enregistré en : septembre 2015
Localisation : ELANCOURT (78 - YVELINES)
Contact :

#3 Message par Claudius » ven. 28 juil. 2023 10:02

Bonjour,
chevaliernoir a écrit :
...
Le concept du projet est simple : le PIC lit une ou deux entrées analogiques, effectue quelques traitements simples, et fournit une tension analogique en sortie
...
Avec le moteur de recherche Microchip, j'ai identifié la série de PIC 8 bits PIC16F171/16F181 qui me parait convenir (?)

Si je m'en tiens qu'à la famille 16F170X/171X, ceux-ci ont bien au moins 2 entrées analogiques de résolution de 10 bits (sur les 8 voire 28 disponibles ;-) et une sortie analogique (sauf le 16f1703 et 16f1707) mais, sauf erreur de ma part, la résolution sur la seule sortie analogique est de 8 bits maximum...

Remarque 1: Pour une résolution de 10 bits en sortie et toujours sauf erreur de ma part, je pense qu'il faut choisir parmi la famille PIC24 ou prendre un "vrai" DAC comme le MCP3021A5T-E/OT interfacé en I2C (Cf. sa datasheet)

Remarque 2: Je crains que le PIC18F46K22 proposé par Temps-x n'ait qu'une conversion numérique -> analogique que sur 5 bits ;-((:
Pour preuve et à vérifier (pages 1 et 333 / 539):

Digital-to-Analog Converter (DAC) module:
- Fixed Voltage Reference (FVR) with 1.024V, 2.048V and 4.096V output levels
- 5-bit rail-to-rail resistive DAC with positive and negative reference selection

22.1 Output Voltage Selection
The DAC has 32 voltage level ranges. The 32 levels are set with the DACR<4:0> bits of the VREFCON2 register.

Pour revenir à la famille 16F170X/171X:

Cf. la datasheet du 16f1705 avec notamment pour plus de détails:
- § 20.0 ANALOG-TO-DIGITAL CONVERTER (ADC) MODULE (page 218 / 454)
- § 22.0 8-BIT DIGITAL-TO-ANALOG CONVERTER (DAC1) MODULE (page 235 / 454)

Quant au temps de "recopie" de l'entrée analogique sur la sortie analogique, je pense qu'il n'y a pas de problème vue le cadencement de ces µC à 32 MHz

Bonne lecture ;-)

A suivre...


Retourner vers « Généralités sur les PICs »

Qui est en ligne

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