PIC Microchip

http://gbelectroweb.free.fr/driverspic.html Drivers pour microprocesseur PIC

https://www.vogons.org/viewtopic.php?p=815231#p815231 Fabricating a New Turbo Display (PIC16F690)

http://www.malinov.com/Home/sergeys-projects/lcd-clock LCD Clock

http://www.tehnomagazin.com/Schematics_wiring_diagram_circuits_schema/pic-schematic.htm


http://pikdev.free.fr/ PiKdev, An IDE for the development of PIC based applications under KDE

http://p.may.perso.libertysurf.fr/telecharger.html
Icprog
Instruction PIC 16F84
Compilateur C
Datasheet 16F84
Datasheet 16F628
Désassembleur
Source Timer
Source IT
Source E²PROM
Cours sur les PIC


http://www.enetsystems.com/~lorenzo/propic2/
Propic2 Clone
http://www.enetsystems.com/~lorenzo/pic.asp PIC16x84
http://notre.equipe.perso.neuf.fr/micro_controleur/PIC16F84.pdf
http://notre.equipe.perso.neuf.fr/micro_controleur/PIC16F876-77-V1.pdf

http://spazioinwind.libero.it/nferrarese/elettronica/4dgtLCD/4dgtLCD.htm LCD driver AY0438


http://www.etc.ugal.ro/cchiculita/software/picbootloader.htm
Tiny PIC bootloader ;
code ASM qui permet de déverouiller et programmer la flash interne

http://home.versatel.nl/edithenwilliam/william.htm

Pour vous initier à l'utilisation des PIC, je vous recommande

- d'acheter un PicKit de Microchip qui comprend une petite carte d'évaluation pour moins de 50 euros, avec son programmateur USB.

- de vous initier au langage C. Tous les détails sur le site de Microchip.

Les connaissances ainsi acquises seront générales et vous profiteront longtemps.

 

http://gputils.sourceforge.net/#Mplab GNU PIC utilities

http://www.von-info.ch/PIC/cours_16f87x.htm#23%20octobre%202002 COURS 16F87x DE BIGONOFF 23 octobre 2002

Quartz et Pic

Dans le datasheet p121-122 on a:

       C1      Y1      C2

GND---||--o--|[]|--o--||---GND
           |        |
           |        |    R1
          OSC1      o--\/\/\/---OSC2 

à 4 MHz tu peux être configuré en XT ou en HS donc Y1 = 4MHz C1 et C2 = 15pF (indicatif car peut varier avec le quartz) R1 dépend des caractéristiques du quartz (Drive level) Sur la carte que j'utilise elle est à 0 ohms et ça fonctionne parfaitement. R1 = 0 ohm fonctionne avec tout les quartz mais pas toujours très
longtemps. Par sécurité le fait de mettre une résitance de quelques centaines d'ohms n'est pas une grosse dépense supplémentaire (pour un prototype ou une petite serie) et peux éviter des ennuis par la suite. La résistance permet de limiter la dissipation dans le quartz, donc éviter une surchauffe de ce dernier. Ce phénomène est très marqué sur les quartz CMS et 'bas profil' et miniatures (type HC49-3H, UM-1, UM-2, ...) ou cylindriques (type GCX-39), moins sur les boîtiers standards (type HC49).

http://www.piclist.com/techref/index.htm Microcontrollers Designs tech references

PIC16F877 Programmer
This programmer is the simplest I have ever seen
http://www.finitesite.com/d3jsys/

But if you are going to play with the PIC16F877 I would build an In Circuit debugger "the same microchip sells"

http://www.sxlist.com/techref/piclist/freeicd/index.htm

You can find a good single sided PCB of JDM84 programmer on these pages:
http://www.geocities.com/mpu51/jdm84/jdm2001.htm
http://www.geocities.com/mpu51/jdm84/jdm84.html
this is an excellent programmer! http://www.lancos.com/prog.html
A http://florent.bedoiseau.free.fr/HWare/AdaptateurPIC/AdaptateurPIC.html Adaptateur pour la programmation de PIC


Very simple programmer, you can use only that part of it, that is needed for PIC16F87X series.
Over the edge IMHO.

-For $200 I can (and am about to) buy the programmer myself. If I -didn't have the programmer, I'd still need all the development tools, -and for $200 I can shorten the burn cycle from days to minutes...There are so many low cost options for programming PICs that I find the $200 price you quoted shocking. Here are some options:1) For the ultra cheap hobbiest, my Trivial Low Voltage Programmer is the ticket. An afternoon and $10 in Radio Shack parts is all that's necessary
to get it going. It'll program in LVP mode any of the 16F LVP capable parts. With the addition of a few components, it's possible to do High Voltage programming too: http://www.finitesite.com/d3jsys

2) Wouter van Ooijen's Wisp628 is an excellent PIC programmer. The kit is $23 and the assembled box $35. Be aware that it's an ISCP only programmer so
you'd have to wire your own socket or connector. http://www.voti.nl/wisp628/

3) The Warp13 programmer is just as capable as the PicStart+ and is only $99 assembled. It also programs everything. http://www.newfoundelectronics.com/

Lots of options available.

 

Routine I2C Pour PIC16F84

Je vais donc te répondre pour le compilo que j'ai, PIC-C de CCS http://www.ccsinfo.com/picc/ Il suffit de definir ton mode I2C en slave en précisant ton adresse esclave (par exemple : #use i2c(SLAVE, SDA=PIN_C4, SCL=PIN_C3, address=0xa0) ) Puis, par interruption, quand des data sont présents sur le bus I2C (donc, ton composant doit gerer l'I2C en hard, je te conseille donc de prendre autre chose qu'un 16F84. Un 16F870 sera presque au meme prix beaucoup plus performant); tu lis les données via la fonction i2c_poll.

http://www.dontronics.com/giga.html Add USB to your Product in 10 min. The World's Largest Range of Atmel/AVR & PICmicro Hardware and Software

Bravo et Merci à Monsieur PEREIRA CARDOSO João qui nous a réalisé une Interface pour Picbasic réalisé en Delphi

Cette interface fonctionnera indifféremment sous toutes les versions de Windows existant, contrairement à mon interface ecrite en SuperBatch qui avait été réalisé pour Windows 3.1 et qui ne fonctionne pas parfaitement avec les nouvelles versions de Windows http://f1lzr.free.fr/tele/
http://f1lzr.free.fr/programmes/setuppicbasic.exe

Rappel des adresses Picbasic : Page PicBasic http://perso.orange.fr/pat.deaubonne/pic/ dernière modif http://perso.orange.fr/pat.deaubonne/DOWNLOAD/CoursPicbasic/

 

http://www.vermontficks.org/pic.htm

Basic Stamp

http://www.parallaxinc.com what about learning BasicStamp? There are some cool kits.

Compilateur C pour PIC16F876

http://www.bknd.com/cc5x/download.shtml Il y a ici une version gratuite qui supporte les 16F87X.

http://jeanlouis.salvat.free.fr/cours_pic.htm Cours de programmation microcontrôleur PIC : le PIC16C5X (version PDF ; DOC)

http://perso.orange.fr/peggs/ Un nouveau dossier sur les PIC16F84, avec les cartes à différents modules: dossier(456K) et les dosssiers de fabrication (426K) .

http://perso.club-internet.fr/ope/prgpic.htm Programmateur de PIC et EEPROM

http://spazioweb.inwind.it/nferrarese/Elettronica/Progetti/FCPic/FCpic.htm FCPIC programmer for the 16F84
http://spazioweb.inwind.it/nferrarese/Elettronica/Progetti/Propic2/propic2.htm Propic Clone

http://www.volny.cz/osepie/menu.htm few DIY solutions for PIC programming

http://www.dontronics.com/newfound.html warp-13 pic programmer . Its fast and only $99

http://www.telesys.ru/english/picprog.shtml It is a very nice programmer that can operate in stand alone mode and can even cr@ck 16f84 and 16c84 chips.


http://www.lancos.com/prog.html
Pony

http://www.tanzilli.com/index.php3?page=articles.php3&id=1

http://hacktv.metropoli2000.net/espanol.html PIC programamtori
http://www.microchip.com/ PIC
PIC INFO
http://ee.cleversoul.com/ various PIC projects
http://www.technick.net/circuits.htm#PIC

ICD In Circuit Debugger
http://www.vitrum.cz/snail/icd.htm
http://www.piclist.com/images/com/multimania/www/http/silicium31/Electronique/PIC/free_icd_en.htm

http://www4.tpg.com.au/users/talking/MultiChipPgmr-Intro.html Programmateur de PIC "multi-chip"

Désassemblage de PIC

http://home.the-wire.com/~mwilson/python/dispic16.py PIC16 Disassembler for Linux

http://www.oingo.com/topic/197/197119.html Désassembleurs pour PIC

Dans le cas de programmes à plusieurs pages; cela va dépendre de la qualité du décompilateur car les adresses de goto et call n'ayant que 2ko de longueur de saut si l'on peut appeler ça comme ça , il existe deux type de saut des sauts courts "intra-page" et des sauts longs "extra-page" necessitant la manipulation du PCLATH Le désassembleur à priori ne sait pas de quel page il s'agit , il ne verra qu'une adresse de 2Ko (1 page). Si l'on modifie une page et que des appels existent d'une autre page vers celle qui est modifiée,
comment le dessassembleur saura t il que l'adresse pointé (2k0) sera en fait une adresse longue se référent à une page différente A mon avis , il y aura une erreur le programme assemblé va très certainement voir une adresse page local, pour résoudre a ce problème , il faudrait que le déssasembleur , interprète la valeur de PCLATH et ainsi déduise que l'adresse se réfère a une autre page en lui mettant une adresse du genre 0800H pour la page 1, ou 1000H pour la page 2 etc...

pas si simple que ça en a l'air, je viens d'écrire un programme utilisant plusieurs pages et plusieurs banks mémoire, je sais de quoi je parle ! Avis au amateurs ....


http://www.u1.chat.ru/ Schéma Picstart Plus, kit dtmf, ICD, etc...

I believe HiTech has their PIC-C compiler available for free for the F84 PICs. http://www.hitech.com.au I've managed to get the free Hi-Tech compiler working (with MPLAB, as well, which is nice). I found an examples of serial I/O for the Hi-Tech compiler at
http://www.workingtex.com/htpic/Hi-tech_C_sample_code.htm#mikepearce
http://perso.orange.fr/bernard.acquier/micro_pic.html Exemples d'applications à base de PIC en particulier avec des moteurs pas à pas.

http://www.rickard.gunee.com/projects Une application du PIC16F84 : Virtual Game System

http://www.von-info.ch/pic/bigonoff_01.htm Cours de programmation PIC16F84 (190 pages)

http://perso.orange.fr/pat.deaubonne/DOWNLOAD/WinPP logiciel programmateur 1 passe sous Windows (version béta) http://perso.orange.fr/pat.deaubonne/PCB106/pcb106.htm copieur autonome de Wafer http://perso.orange.fr/pat.deaubonne/DOWNLOAD/Serrure_A_WaferCard/ serrure à Wafer carte http://perso.orange.fr/pat.deaubonne/DOWNLOAD/PCB105 charger la disquette http://perso.orange.fr/pat.deaubonne/DOWNLOAD/FAQ Réponse à des question fréquentes http://perso.orange.fr/pat.deaubonne/DOWNLOAD divers chose interressante doc Microchip et autres http://perso.orange.fr/pat.deaubonne/WAFER programmation wafer 1 passe

http://www.covingtoninnovations.com/noppp/index.html NOPPP Windows PIC programmer

http://www.microchip.com/10/tools/picmicro/program/picstart/index.htm Upgrade PICstart Plus

http://www.jdm.homepage.dk/solution.htm How to make Programmer Working

http://www.ise.pw.edu.pl/~wzab/picprog/picprog.html Free PIC 16x84 programmers for Linux

http://geocities.com/SiliconValley/Peaks/9620/#HARDWARE P16PRO

Peut-on remplacer un PIC 16C84 par un 16F84 ? > Quelle est la différence? Il y en a très peu : le mot de configuration est différent, et la version F (flash) à 68 octets de RAM contre 36 pour la version C (EEPROM). D'autres différences minimes sont expliquées dans le datasheet p115. Il est à noter que l'EEPROM peut être reprogrammée 10000000 fois et la flash 'seulement' 1000 fois, mais ca ne devrait pas poser de problème. Les microcontrôleurs PIC 16 CXX de Microchip

http://members.optushome.com.au/donmck/dtait/upp.html Parallel Port PIC16C5X/XX Programmer

http://www.oingo.com/topic/197/197119.html Désassembleurs pour PIC.

Temporisation avec le BASIC-STAMP : (D'après l'article RADIO-PLANS N°577/p.31-38 de J.-M. BALSSA) Il s'agit d'une temporisation pouvant aller de 0 à 59 secondes ou de 0 à 59 minutes. Elle tient son originalité à son affichage de l'écoulement du temps et au fait qu'elle soit réalisée autour du processeur Basic Stamp, un PIC programmable en Basic via un PC qui s'avère donc d'un abord plus simple aux habitués de ce langage.

Programmateur de PIC (D'après ELEKTOR)

 

P16PRO http://geocities.com/SiliconValley/Peaks/9620/ et utiliser le soft libre IC-prog http://www.h2deetoo.demon.nl/index.htm

Le Micro-bRISC Device Programmer ('71,'64,'74,'84) (D'après Circuit CELLAR INK #66 Janvier 1996 Article de Ken Pergola)

http://perso.orange.fr/yves.heilig/page1.htm#PIC16F84

http://www.rennes.supelec.fr/ren/perso/jweiss/microp/pic/pic.php

http://perso.infonie.fr/atexa_elec/

http://fribotte.free.fr/bdtech/pic_and_linux/pic_and_linux.html

programmateur de PIC http://perso.orange.fr/pat.deaubonne/pic/index.htm

programmation PIC http://www.baboune.net ou http://www.chez.com/lesilicium

PÏC16F876 http://membres.multimania.fr/silicium31/

Programmateur PIC http://www.multimania.com/offset/

PIC 16F84 + SN74LS164

Comme j'ai peu d'entrees et de sorties sur mon pic j'ai mis un 74LS164 mais comment programmer un lcd maintenant...
Ca fonctionne très bien avec un 74Ls164. L'astuce est de valider les données après chargement grace à une diode faisant un ET logique avec l'entrée data et le 6 iem Q (sortie)
dans l'exemple ci-dessous un 74ls174 est utilisé mais un 74ls164 et le CD4015 si vous préférez (il est moins cher) fonctionnera aussi !

http://www.rentron.com/Myke1.htm allez voir ce site, y a tout ce qui faut !

autre alternative en utilisant le 74HC595:


Voila un bout de code qui pourrait aider notre ami (pour PIC) nlatches doit contenir le nombre de 74HC595 (si il n'y en a qu'un on met bettement 1)

si il y a plusieurs registres a decalage, par exemple 3, tu devras proceder ainsi pour stoquer les données en RAM : first pointe vers l'adresse mémoire
du PREMIER registre. Ensuite first+1 pointera vers les données du second registre et first+2 vers les données du 3ème.

On peut declarer ca bêtement dans un cblock avec first: X où x indique le nombre d'octets a reserver, prmeier compris (first:2 reserve 2 octets, first et first+1)

;port a bit assignments
latch equ 00 ;latch line to 74HC595
ser equ 01 ;data line to 74HC595
clock equ 02 ;clock line to 74HC595

; ----------------------------
; latch output subroutine
; setup conditions are "nlatches" equated to the number of daisy chained
; 74HC595 ICs
;
; "first" is the first register used to store the latch data followed by
; other consecutive registers totalling "nlatches"
;
; The routine loops round "nlatches" and 8 bits per latch and shifts out
; the data with the relevant enable signals.
; ----------------------------

ripple

clrf rcount

nextr clrf bcount
movf rcount,w ;get offset
addlw first ;add register start point
movwf fsr ;put it in register select

movf ind,w
movwf backup

nextb bcf porta,ser
rlf ind,f ;rotate indirected value
btfsc status,c
bsf porta,ser

bsf porta,clock
nop
nop
bcf porta,clock

incf bcount,f
movlw 08 ;8 bits!
subwf bcount,w
btfss status,z
goto nextb

movf backup,w
movwf ind

incf rcount,f
movlw nlatches
subwf rcount,w
btfss status,z
goto nextr

bsf porta,latch
nop
nop
bcf porta,latch

retlw 00

END

Retour au sommaire


Retour à la Page d'accueil

Mise à jour: 27 avril, 2022

Email : matthieu.benoit@free.fr