Jump to content
ELFORUM - Forumul electronistilor

Raspberry PI programator PIC


Guest Reydw

Recommended Posts

Guest Reydw

Buna ziua. Detin un Raspberry PI 3 model B si un PIC 16F526-I/P. Programul PICPgm poate rula pe Rpi si are pe site instructiunile de legare a pinilor de la GPIO la Vdd/Vss/Vpp/Data/Clock pentru un pic ce utilizeaza 3v3 la Vdd si este programat in LVM. PIC-ul meu se programeaza la 5v Vdd si 10v -12v MCLR(Vpp), cel putin asa scrie aici: http://picpgm.picprojects.net/devices.html Ma puteti ajuta sa adaptez circuitul: http://picpgm.picprojects.net/hardware/raspi_picpgm_simple_33v.png la PIC-ul meu? Multumesc anticipat.

Link to comment
  • Replies 11
  • Created
  • Last Reply

Top Posters In This Topic

Cred că trebuie să te convingi mai întâi - sau să modifici softul în sensul ăsta - că varianta de PICPgm penstru Raspberry știe HVM programming . 

Dacă da , atunci trebuie convertoarele de nivel din 3,3V în 5V pentru semnalele de comandă , pentru Vdd și un convertor de 10-12V de curent mic comandat de pinul Vpp din Raspberry .

 

A postat @sofian între timp . În esență și el spune același lucru . 

Edited by UDAR
Link to comment
Guest Reydw

Multumesc pentru raspunsuri. Am verificat si PIC-ul meu este suportat si pentru Vdd pot duce direct de la un pin de 5V fara convertor dar nu stiu cum pot scoate cei 10-12V din pini de 3v3 pentru Vpp/MCLR

Link to comment

The Program/Verify mode is entered by holding pins ICSPCLK and ICSPDAT low while raising VDD pin from VIL to VDD. Then raise VPP from VIL to VIHH.

 

Așa scrie în documentul de programare a lui PIC16F526. Deci eu cred că e nevoie de control și asupra lui Vdd . Plus translația de nivel pentru ICSPCLK și ICSPDAT și generarea a 10-12V comandat de semnalul Vpp din Raspberry . 

 

PS E posibil să faci o confuzie între PIC-urile suportate de softul PICPgm și cele care pot fi programate în varianta Raspberry . PICPgm , ca soft ,  este utilizabil cu mai multe interfețe hard . L-am folosit și eu înainte de a trece la PICKit . 

Link to comment

Deci eu cred că e nevoie de control și asupra lui Vdd .

N-ar trebui. Pickit2 (sau o fi ICD2?) te lasa sa alimentezi extern pic-ul de programat. Alimentarile externe chiar nu ai cum sa le controlezi.Parerea mea.
Link to comment

Da, e logic ce spui . Mai mult chiar PICKit 2 se pare că furnizează direct alimentarea , n-o trece printr-un comutator .

Înseamnă că interpretez greșit citatul ....

 

EDIT 

 

Totuși există PIC-uri ( nu cel din subiect ) care pretind ( eventual în anumite circumstanțe ) ca Vpp să fie aplicat înainte de Vdd .Opțiunea este disponibilă la PICKit2 variantele mai noi . Asta evident necesită control asupra Vdd .

 

Eu am generalizat presupunând că e întotdeauna nevoie de control asupra lui Vdd. 

 

 

Și o observație - când Vdd este aplicat din PICKit2 el este totusi controlat de softul care rulează în PC . 

Edited by UDAR
Link to comment

In specificatia de programare pentru 16f877a nu se specifia nimic despre VDD:

Both algorithms can be used with the two available programming entry methods. The first method follows the normal Microchip Programming mode entry of holding pins RB6 and RB7 low, while raising MCLR pin from VIL to VIHH (13V ± 0.5V). The second method, called Low Voltage ICSPTM or LVP for short, applies VDD to MCLR and uses the I/O pin RB3 to enter Programming mode. When RB3 is driven to VDD from ground, the PIC16F87XA device enters Programming mode

Poate astea noi si cu alte tehnologii de fabricatie functioneaza altfel.

Link to comment

Unul la care se specifică este chiar ultracunoscutul PIC12F675

 

The Program/Verify mode is entered by holding pins CLOCK and DATA low while raising MCLR pin from VIL to VIHH (high voltage). Apply VDD and data. Once in this mode, the user program memory, data memory and the configuration memory can be accessed and programmed in serial fashion.

 

Problema asta cu Vpp-rise-first apare mai ales la reprogramarea unor PIC-uri cu oscilator intern și la care MCLR a fost configurat ca Input . Prima dată merge oricum apoi cum îi dai Vdd cum pornește să execute programul existent . Dacă în schimb Vdd găsește Vpp(MCLR) ridicat intră corect în modul de programare .

 

Dar suntem deja destul de departe de subiect , spre să nu supere pe nimeni discuția . 

Link to comment
  • 2 weeks later...

<<atunci trebuie convertoarele de nivel din 3,3V în 5V pentru semnalele de comandă , pentru Vdd și un convertor de 10-12V de curent mic comandat de pinul Vpp>> 

Cu scuzele ca nu voi da un raspuns precis precum colegii de dicutie deci tineti cont de asta.

 

Am scris mai mult pentru a felicita pentru idee, oricum initiatorul pare sa caute o salutie simpla cu cateva fire trase.

Am fost preocupat un timp de programator PIC cu Arduino si alte genuri de programatore. Raspberry am.

 

Semnale de comanda la 5V - poate nu sunt neaparat necesare, PIC16F merge binisor si la 3V3 si ar putea avea Vcc, DAT si CLK la aceste valori.

 

Pentru 12Vpp nu are - cred eu - sens sa faci un convertor poti pune o sursa externa de 12V controlata de semalul Vpp.

Se semnalele de comanda se ocupa softul.

Edited by Mondan
Link to comment

----------------------------------------------------------------

Deci la limita tensiune se poate programa si la 3V3.

 

Pentru Vpp 12V necesar scriere Flash la limita ar putea fi folosita si o baterie de 9V daca se vrea o solutie ieftina. Este sub necesarul din documentatie dar merge.

Si vreo 1-2 tranziostori ca asest Vpp sa poate fi controlat din soft.

Cred ca un singur NPN care sa "dea masa" bateriei ar fi suficinet.

 

Atentie sunt doar sugestii.

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.Terms of Use si Guidelines