CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
SITEMAP
Audiobooks by Valerio Di Stefano: Single Download - Complete Download [TAR] [WIM] [ZIP] [RAR] - Alphabetical Download  [TAR] [WIM] [ZIP] [RAR] - Download Instructions

Make a donation: IBAN: IT36M0708677020000000008016 - BIC/SWIFT:  ICRAITRRU60 - VALERIO DI STEFANO or
Privacy Policy Cookie Policy Terms and Conditions
Utilisateur:Nifrou/PIC - Wikipédia

Utilisateur:Nifrou/PIC

Un article de Wikipédia, l'encyclopédie libre.

Vous avez de nouveaux messages (diff ?).

Les microcontrôleurs PIC (ou PICmicro dans la terminologie du fabricant) forment une famille de microcontrôleurs de la société Microchip. Ces microcontrôleurs sont dérivés du PIC1650 développé à l'origine par la division microélectronique de General Instruments.

PIC 1655A.
Agrandir
PIC 1655A.

Le nom PIC n'est pas officiellement un acronyme, bien que la traduction en « Peripheral Interface Controller » (contrôleur d'interface périphérique) soit généralement admise. Cependant, à l'époque du développement du PIC1650 par General Instruments, PIC était un acronyme de « Programmable Intelligent Computer ».

Sommaire

[modifier] Utilité

Divers microcontrôleurs PIC.
Agrandir
Divers microcontrôleurs PIC.

Un microcontrôleur est une unité de traitement de l’information de type microprocesseur à laquelle on a ajouté des périphériques internes permettant de réaliser des montages sans nécessiter l’ajout de composants externes. En ce sens, les PIC sont particulièrement bien dotés, car ils intègrent mémoire de programme, mémoire de données, ports d'entrée-sortie, et même horloge, bien que des bases de temps externes puissent être employées. Certains modèles disposent de portd et unités de traitement de l'USB.

PIC 16F684, 12F675 et 10F222.
Agrandir
PIC 16F684, 12F675 et 10F222.

[modifier] Techniques mises en jeu

Les PIC sont des composants dits RISC (reduced instruction set computer), ou encore microprocesseur à jeu d’instruction réduit. Plus on réduit le nombre d’instructions, plus facile et plus rapide en est le décodage, et plus vite le composant fonctionne.

Le temps de cycle d'un PIC est donnée par la fréquence d’horloge utilisée pour le cadencer, divisée par 4. Cela est dû à l'architecture interne de ce microcontrôleur.

Les PIC stockent chaque instruction dans un seul mot de programme et exécutent chaque instruction en un cycle, sauf les sauts qui sont exécutés en deux cycles. On atteint donc des vitesses élevées, et les instructions sont de plus très rapidement assimilées.

Avec un quartz de 4MHz (ou l'horloge interne), on obtient donc 1000000 de cycles/seconde, or, comme le pic exécute pratiquement 1 instruction par cycle, hormis les sauts, cela donne une puissance de l’ordre de 1 MIPS (1 million d'instructions par seconde).

La plupart des PIC peuvent être cadencés jusqu'à 20MHz. C’est donc une vitesse de traitement plus qu’honorable pour un microcontrôleur.

[modifier] Programmation

[modifier] Transfert du code machine dans la mémoire de programme (ROM) du PIC

Carte de développement de Microchip, pour microcontrôleurs PIC de 6,8 et 14 broches.
Agrandir
Carte de développement de Microchip, pour microcontrôleurs PIC de 6,8 et 14 broches.

Le programme d'un pic peut être basé sur l'une des technologies suivantes :

  • EPROM Ecriture du programme de manière électrique, effacement impossible. Lettre d'idenfication 'C' (ex. : PIC16Cxxx, PIC18Cxxx)
  • EEPROM Ecriture et effacement du programme de manière électrique.
  • EPROM Ecriture du programme de manière électrique, effacement par insolation au Ultra-Violet.
  • UVPROM ,
  • flash est en fait un EEPROM utilisant une technologie plus rapide permettant des temps d'écriure et surtout d'effacement beaucoup plus rapides.

C'est la plus simple utilisation et la plus utilisée pour les petites série/moyenne. Lettre d'idenfication 'F' (ex. : PIC16Fxxx, PIC18Fxxx)


  • Par l'intermédiaire d'un programmateur dédié (par exemple : PROMATE de la société Microchip)
  • Par programmation in-situ. Il suffit alors de câbler correctement le micro sur la carte fille pour qu'une simple liaison série suffise. Il existe plusieurs solutions libres (logiciel + interface à faire soi-même) ou commerciales (par exemple : ICD2 de Microchip) pour faire cela.

[modifier] Ecriture et compilation du code programme

[modifier] Déboguage

Plusieurs solutions existent pour déboguer un programme écrit pour un microcontrôleur PIC :

  • Le simulateur, il reproduit le fonctionnement du PIC de manière virtuelle à l'aide d'un logiciel (ex: MPLAB SIM de Microchip ).

Ce système est limitté (par les différences et simplifications du logiciel par rapport au vrai PIC). Par l'impossibilité de simuler l'ensemble de l'environement du PIC (sytème électronique, humain, physique interagissaant avec le PIC). Par la grandeur du temps nécessaire pour simuler la quantité de phénomènes ayant lieu dans un court laps de temps. Cependant, il à l'interret d'etre économique voire même gratuit avec MPLAB.

  • L'emulateur, se substitue au PIC (on remplace donc sur la carte électronique le PIC par une connexion vers un Emulateur).

Ce sytème est géneralement constitué d'une carte d'interface électronique couplé d'un ordinateur. L'ensemble et capable de reproduire tres fidellement le comportement du PIC (du point de vue électrique, du timing, et fonctionnel). Sur l'ordinateur, on a à tout moment toutes les informations de l'etat du PIC (mémoires, états électrique des ports, valeurs des différents registres, etc..) De plus, Il est possible d'interagir de maniere tres finne avec le déroulement du processus (Arret, pause, Reprise, enregistrement des etat, action conditionné par des options ou bien évenement externes). Toutes ces caractéristiques en font le meilleurs outils de déboguage / aide au devellopement. Grace à l'amélioration des performances en informatique ; Les ordinateurs sont maintenant capable de prendre un part un peut plus active dans le processus de simulation. De ce fait le prix des simulateurs à tres fortement baissé mais il reste encore tres cher.

  • Débogueur in-situ.

cette fonctionnalité et assez récente. Les microcontroleurs on desormé des perfomance et "intelligence" suffisante pour gérer un processus de déboguage en parrallèle de leur fonctionnement

[modifier] Familles de PICs

Quatre microcontrôleurs PIC de familles différentes : 18F, 16F, 12F et 10F.
Agrandir
Quatre microcontrôleurs PIC de familles différentes : 18F, 16F, 12F et 10F.

[modifier] PIC10

[modifier] pic12

Composants récent. Il ont comme particuliaités extremement petit, simple et économique.

[modifier] PIC16

Composants de milieu de gamme. C'est la famille la plus fournie.

[modifier] pic17

Gamme intermédiaire entre 16xxx et 18xxx. Cette gamme n'est plus enrichie par Microchip. Elle supporte la compilation en C.

[modifier] PIC18

Cette famille RISC 8 bits haut de gamme est construite autour d'une architecture HARVARD avec un bus de données (8 bits) et un bus instruction de 16 bits. Elle a un jeu d'instruction plus étendu que les prédécesseurs (PIC16) puisqu'il comprend de l'ordre de 75 instructions. Cette palette d'instructions étendue lui permet de faire tourner du code C compilé de manière nettement plus efficace que les familles précédentes. On peut les utiliser avec un quartz oscillant jusqu'à 64MHz pour les toutes dernières versions. Certain dérivés intégrent maintenant (2006) des périphériques USB Full speed (MAC+PHY) et ETHERNET 10 Mbits (MAC+PHY).

[modifier] pic24

Sortie en 2006, c'est la famille la plus récente. Elle est la plus performante à ce jour. Elle est programmable en C comme tout les autre PIC.

Quelques caractéristiques à remarquer :

  • programable avec le compilateur MPLAB C30, dérivé de GCC 3.3 (c'est la seule famille de microcontrôleurs de chez Microchip à pouvoir être programmé avec) ;
  • dispose d'un port JTAG.

[modifier] dsPIC

Le dsPIC (digital signal PICs) est le premier microcontrôleur de la société Microchip qui ait une architecture 16 bits (les autres étant à 8 bits). Il est adapté aux applications de traitement du signal et peut donc remplacer un DSP.

[modifier] voir aussi

Microchip

[modifier] Liens externes

Static Wikipedia 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2006 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Sub-domains

CDRoms - Magnatune - Librivox - Liber Liber - Encyclopaedia Britannica - Project Gutenberg - Wikipedia 2008 - Wikipedia 2007 - Wikipedia 2006 -

Other Domains

https://www.classicistranieri.it - https://www.ebooksgratis.com - https://www.gutenbergaustralia.com - https://www.englishwikipedia.com - https://www.wikipediazim.com - https://www.wikisourcezim.com - https://www.projectgutenberg.net - https://www.projectgutenberg.es - https://www.radioascolto.com - https://www.debitoformtivo.it - https://www.wikipediaforschools.org - https://www.projectgutenbergzim.com