RTV forum PL | NewsGroups PL

Jak zbudować uniwersalny programator równoległy do układów z pinami i wejściami?

programator rownolegly - na ile to skomplikowac?

NOWY TEMAT

elektroda NewsGroups Forum Index - Elektronika Polska - Jak zbudować uniwersalny programator równoległy do układów z pinami i wejściami?

Mirek
Guest

Sat Jul 26, 2008 6:48 pm   



Właśnie myślę nad zrobieniem sobie takiego bardziej uniwersalnego
programatora. W układach, które w życiu programowałem (a nie było tego
wiele) wystarczały stany H, L, masa, napięcie zasilania, napięcie
programujące - czyli robię np. podstawkę ilośtam pinową, każdy pin mogę
ustawić zworką na: masę, wejście-wyjście, napięcie zasilania i dodatkowo
jeden z pinów (to już kabelkiem) na takie coś, co mi ustawi
programowo: stan niski, stan wysoki, napięcie zasilania lub napięcie
programujące. Tu oczywiście pytanie, czy jest potrzebne coś więcej? -
jeśli tak, to do jakiego (przydatnego) układu.
Konstrukcja wejścia-wyjścia jak w prockach '51, czyli L wymuszamy H
podciągamy (10k?) i w przypadku wejścia sprawdzamy co tam mamy. Czy jest
potrzebny stan wysokiej impedancji?

Mirek.

Dykus
Guest

Sat Jul 26, 2008 9:38 pm   



Witam,

Dnia 26.07.08 (sobota), 'Mirek' napisał(a):

Quote:
Właśnie myślę nad zrobieniem sobie takiego bardziej uniwersalnego
programatora.

Weź jakiś a miarę nowoczesny procek (np. byle AVR), gdzie piny są dowolnie
konfigurowalne i typu push-pull - możesz wtedy zadać (prawie) wszystkie
wymagane stany - masę (pull, stan L), zasilanie (push, stan H - wydajność
kilkadziesiąt mA, więc do zaprogramowania spokojnie wystarczy), wyjście
(H/L), wejście (w razie potrzeby możesz włączyć wewnętrzne rezystory
podciągające do Vcc/GND), oraz stan wysokiej impedancji. Z drugiej strony
jakieś USB, albo RS-232 do komputera, czy coś tym stylu... Oprogramowanie w
uC na tyle elastyczne, że wszystkie poziomy i stany zadawane z PC.

Problem może być inny - programator równoległy kojarzy mi się z możliwością
programowania procka z wykorzystaniem wyższego napięcia niż napięcie
zasilania (np. '51, AVR) - np. dla Vcc=5V potrzeba często na wejście RESET
podać +12V. I tu należało by albo rozważyć, jakie procki będą programowane
i odpowiednie piny wyposażyć w możliwość generowania wysokiego napięcia,
lub przemyśleć/rozbudować układ tak, by każdy pin to potrafił...

Bo tak poza tym to chyba wszystkie "dzisiejsze" procki programuje się
szeregowo z wykorzystaniem tylko i wyłącznie napięcia zasilania. A
programator równoległy nie powinien mieć żadnych ograniczeń w
programowaniu, chyba, że zależy nam tylko na szybkości.


--
Pozdrawiam,
Dykus.

Mirek
Guest

Sat Jul 26, 2008 10:07 pm   



Dykus wrote:

Quote:
Weź jakiś a miarę nowoczesny procek (np. byle AVR), gdzie piny są dowolnie
konfigurowalne i typu push-pull - możesz wtedy zadać (prawie) wszystkie
wymagane stany

Zasilanie i masę wolę jednak podawać zworkami.



Quote:
i odpowiednie piny wyposażyć w możliwość generowania wysokiego napięcia,
lub przemyśleć/rozbudować układ tak, by każdy pin to potrafił...

No właśnie raczej nie ma takiej potrzeby - takie wielostanowe wejście

jest zwykle tylko jedno - zdejmuję zworkę i wpinam kabelkiem ten układ,
który będzie podawał GND, Vcc, Vp.

Mirek.

Jarosław Sokołowski
Guest

Sun Jul 27, 2008 1:08 am   



Pan Mirek napisał:

Quote:
Właśnie myślę nad zrobieniem sobie takiego bardziej
uniwersalnego programatora.

Ma realizować parallel programming? Ciekawe zagadnienie,
choć w sumie dość skomplikowane.

--
Jarek

Dykus
Guest

Sun Jul 27, 2008 10:26 am   



Witam,

Dnia 26.07.08 (sobota), 'Mirek' napisał(a):

Quote:
Zasilanie i masę wolę jednak podawać zworkami.

Dlaczego? Obawa, że przez przypadek (?!) nieprawidłowo zostanie podane
napięcie zasilania (np. odwrotna polaryzacja)? Zworkami też się możesz
machnąć i niewykluczone, że prawdopodobieństwo jest większe... :)


Quote:
No właśnie raczej nie ma takiej potrzeby - takie wielostanowe wejście
jest zwykle tylko jedno - zdejmuję zworkę i wpinam kabelkiem ten układ,
który będzie podawał GND, Vcc, Vp.

Jak widać mamy odmienne podejście do programatorów. Dla mnie programator ma
być możliwie automatyczny - żadnych zworek, przełączników, przycisków. Ty
jak widzę kochasz zworki. Wink Nienawidzę, gdy przed jakimś programowaniem
muszę za każdym razem wcisnąć jakiś knefel. Gdybym robił programator pod
różne układy, to chciałbym, aby jedyny wybór układu następował z poziomu
komputera. Programator sam może wykryć włożenie układu i może sprawdzić,
czy właściwej wielkości układ został podłączony (przetworniki ADC), oraz
może spróbować odczytać sygnaturę. Jeśli coś się nie zgadza, to odłączamy
układ. Trwa to ileś tam milisekund i możemy wszystko spokojnie zasilać ze
stabilizatora z ograniczeniem prądowym (np. 20mA) - mniejsze ryzyko
uszkodzenia.

No w ostateczności jakiś przełącznik przy samym programatorze, ale to wtedy
musiałby być jakiś problem skomplikowany... :)

Dla formalności - programator równoległy to dla mnie układ, do którego
wkładamy programowaną kość. Podłączanie programatora do jakiegoś gotowego
układu jest nieco bardziej skomplikowane i wtedy rzeczywiście zworki mogą
być potrzebne... Zakładam, że rozmawiamy o tym pierwszym.


--
Pozdrawiam,
Dykus.

Mirek
Guest

Sun Jul 27, 2008 10:56 am   



Dykus wrote:

Quote:
Dlaczego? Obawa, że przez przypadek (?!) nieprawidłowo zostanie podane
napięcie zasilania

Nie. Raczej obawa, że będę kiedyś chciał zaprogramować, albo
przetestować jakiś "cięższy" układ (ttl?), poza tym możliwe będzie
wykorzystanie tego programatora do przetestowania jakiegoś nowego
projektu (zadajemy stany z komputera) i konieczność dołączenia gotowych
już układów wykonawczych - takie niepewne zasilanie może powodować różne
problemy, a przestawienie zworek raz na jakiś czas (nie bawię się
przecież jednocześnie kilkoma mikrokontrolerami) to żaden problem.


Quote:
Jak widać mamy odmienne podejście do programatorów. Dla mnie programator ma
być możliwie automatyczny - żadnych zworek, przełączników, przycisków.

I będzie automatyczny, Robienie 40-tu programowanych źródeł napięcia po
to tylko żeby raz na parę dni móc kliknąć myszką zamiast przestawić zworkę?

Układ musi być możliwie prosty, bo inaczej nigdy go nie ukończę Wink i
znowu za jakiś czas będę lutował na kolanie kolejny programator albo
układ testujący.

Mirek.

Mirek
Guest

Sun Jul 27, 2008 10:58 am   



Jarosław Sokołowski wrote:

Quote:
Ma realizować parallel programming?

Czemu nie? Jeśli tylko zajdzie taka potrzeba, to będzie kwestia
napisania odpowiedniego skryptu, a na razie założenia są takie żeby
programować układy, których się nie da szeregowo.

Mirek.

John Smith
Guest

Sun Jul 27, 2008 12:54 pm   



Quote:
Właśnie myślę nad zrobieniem sobie takiego bardziej uniwersalnego
programatora. W układach, które w życiu programowałem (a nie było tego

Polecam zrobienie lub kupienie programatora Willem. Schematy i PCB na sieci.
K.

Konop
Guest

Sun Jul 27, 2008 2:10 pm   



Mirek pisze:
Quote:
Właśnie myślę nad zrobieniem sobie takiego bardziej uniwersalnego
programatora. W układach, które w życiu programowałem (a nie było tego
wiele) wystarczały stany H, L, masa, napięcie zasilania, napięcie
programujące - czyli robię np. podstawkę ilośtam pinową, każdy pin mogę
ustawić zworką na: masę, wejście-wyjście, napięcie zasilania i dodatkowo
jeden z pinów (to już kabelkiem) na takie coś, co mi ustawi programowo:
stan niski, stan wysoki, napięcie zasilania lub napięcie programujące.
Tu oczywiście pytanie, czy jest potrzebne coś więcej? - jeśli tak, to do
jakiego (przydatnego) układu.
Konstrukcja wejścia-wyjścia jak w prockach '51, czyli L wymuszamy H
podciągamy (10k?) i w przypadku wejścia sprawdzamy co tam mamy. Czy jest
potrzebny stan wysokiej impedancji?

Mirek.

Poleciłbym Ci zrobić zworkę, która zwiera dany pin układu do portu
jakiegoś uC i do tego kabelki, którymi możesz na taki pin zamiast we/wy
podpiąć np. zasilanie. I gdzieś z brzegu płytki umieścisz takie "jeże" -
po kilka pinów z VCC, z GND i może z jakimś sterowanym 12V Smile... . To
wystarczy Smile... Co do uC - ważne, żeby miał stan wysokiej impedancji!!
Często nogi do programowania są wykorzystywane przez mikrokontroler jako
We/Wy i gdy wyjdziesz z trybu programowania (czasem jest to konieczne)
ten program zacznie działać i poda Ci np. zewrze Ci taki pin do masy, a
Ty w tym czasie podawać będziesz tam zasilanie Wink...

Pozdrawiam
Konop

Mirek
Guest

Sun Jul 27, 2008 5:26 pm   



John Smith wrote:
Quote:

Polecam zrobienie lub kupienie programatora Willem.

Znam to z AVT - za mało uniwersalny - tzn. lista obsługiwanych kości
jest ogromna i pewnie w życiu nie będzie tyle potrzeba, ale ja chcę mieć
możliwość ustawienia KAŻDEGO pinu na wejście lub wyjście, bo inaczej
będę chciał przetestować jakiś układ i znowu lutownica do ręki.

Mirek.

Mirek
Guest

Sun Jul 27, 2008 5:32 pm   



Konop wrote:

Quote:
Poleciłbym Ci zrobić zworkę, która zwiera dany pin układu do portu
jakiegoś uC i do tego kabelki, którymi możesz na taki pin zamiast we/wy
podpiąć np. zasilanie. I gdzieś z brzegu płytki umieścisz takie "jeże" -
po kilka pinów z VCC, z GND i może z jakimś sterowanym 12V Smile... . To
wystarczy Smile...

Widzę, że myślisz podobnie, tylko co do tego czy będzie to uC czy układ
logiczny (prosty) sterowany z komputera to jeszcze się zastanawiam.

Quote:
Co do uC - ważne, żeby miał stan wysokiej impedancji!!
Często nogi do programowania są wykorzystywane przez mikrokontroler jako
We/Wy i gdy wyjdziesz z trybu programowania (czasem jest to konieczne)
ten program zacznie działać i poda Ci np. zewrze Ci taki pin do masy, a
Ty w tym czasie podawać będziesz tam zasilanie Wink...

Proszę o konkretny przykład - który układ tak robi? tzn. któremu pin
zasilania albo Vp zamienia się w wyjście? Bo jeśli poda mi stan niski
podczas gdy ja podaję wysoki (logiczny) to nie ma problemu jeśli mam
wyjścia OC.

Mirek.

John Smith
Guest

Sun Jul 27, 2008 8:30 pm   



Quote:
Polecam zrobienie lub kupienie programatora Willem.


Znam to z AVT - za mało uniwersalny - tzn. lista obsługiwanych kości
jest ogromna i pewnie w życiu nie będzie tyle potrzeba, ale ja chcę mieć
możliwość ustawienia KAŻDEGO pinu na wejście lub wyjście, bo inaczej
będę chciał przetestować jakiś układ i znowu lutownica do ręki.


Praktyka dowodzi, że dążysz do wyspecjalizowanego programatora dla kilku kości.
Willem ma bardzo elastyczną budowę, można napisac program dla swojej
wybranej pamięci.
K.

Mirek
Guest

Sun Aug 03, 2008 4:53 pm   



Mirek wrote:
Quote:
czy będzie to uC czy układ
logiczny (prosty) sterowany z komputera to jeszcze się zastanawiam.


Wychodzi mi około 30 kości 40xx, więc chyba najlepiej będzie zastosować
dwie atmegi16 i sterować wprost z wyprowadzeń.

Mirek.

Adam Dybkowski
Guest

Mon Aug 04, 2008 11:32 pm   



Mirek pisze:

Quote:
czy będzie to uC czy układ logiczny (prosty) sterowany z komputera to
jeszcze się zastanawiam.

Wychodzi mi około 30 kości 40xx, więc chyba najlepiej będzie zastosować
dwie atmegi16 i sterować wprost z wyprowadzeń.

To już lepiej po prostu jedną ATmegę 3250.

--
Adam Dybkowski
http://dybkowski.net/

Uwaga: przed wysłaniem do mnie maila usuń cyfry z adresu.

Mirek
Guest

Tue Aug 05, 2008 8:12 pm   



Adam Dybkowski wrote:

Quote:
To już lepiej po prostu jedną ATmegę 3250.


Nie ma szans. ATmega16 jest w zwykłej obudowie DIL40 - w razie draki
wyciągnę ją z podstawki i wsadzę nową. Do tego dwie 16-ki to dopiero
połowa ceny 3250. W każdym razie dzięki za zainteresowanie.

Mirek.

elektroda NewsGroups Forum Index - Elektronika Polska - Jak zbudować uniwersalny programator równoległy do układów z pinami i wejściami?

NOWY TEMAT

Regulamin - Zasady uzytkowania Polityka prywatnosci Kontakt RTV map News map