programator pamięci eeprom DS2502


Witam,potrzebuję zaprogramować pamięć eeprom "DS2502".Na necie znalazłem tylko jeden programator z możliwością zapisu układu pamięci http://www.imsolidstate.com/archives/1148.Jest tam też wsad do procka obsługującego owy programator,tylko nie wiem jaki to jest procesor i jak jest podłączony programator z nim(prockiem).Domyślam się tylko że "uC" programatora idzie na 1-wire procesora,lecz nie wiem gdzie by szło "PROG" które to daje "sygnał" do zapisu,dalej od procka po uart-cie do kompa.To tylko moje takie domysły ponieważ mogę się mylić.Równie dobrze "uC" i "PROG" mogą iść bezpośrednio na rs-232 tak jak na przykładzie tu: http://www.chiprecharge.50megs.com/index1wire.html tyle że tym można tylko zczytać układ.Jeśli ktoś by wiedział jaki w owym programatorku "siedzi" procek i jak jest podłączony,lub znał jakiś inny programator z opcją zapisu układów,to bym był bardzo wdzięczny za jakiekolwiek info




Portret użytkownika EDC

Odp. Programator DS2502

Kup Mastera DS2480. On ma wszystko w sobie. Jeśli zasilisz go zgodnie z jego notą aplikacyjną i do nóżki VPP doprowadzisz mu 12V to w połaczeniu z darmowym oprogramowaniem "DS2505K_Evaluation" ze strony Maxim`a sam bedzie generował impuls potrzebny do programowania. Impuls jest generowany na 480us ale dopiero po odebraniu poprawnej CRC....inaczej ciemno to widze :D
Układ ma juz wyjście na RS232.
Program sciągnałem po darmowej rejestracji (wpisz w google, ma 11MB).
Układzik jest np. w TME za 16zł (reszty nie sprawdzałem więc możesz poszukać).
Swoją droga robiłem ostatnio zamówienie..w TME niektóre rzeczy trzeba było kupować po więcej sztuk..ale jak sprawdziłem inne sklepy (oprócz Lispolu bo nie handluja modułami radiowymi) to na końcu za te same pieniadze mam po prostu więcej zapasowych :F
Przesyłka w TME niecałe 13zł i cześci miałem na drugi dzień (a zamawiałem nocą), za to w AVT 24 zł na start do rachunku..
Gdybyś miał problem ze ściągnięciem tego programu napisz na bo nie można go od tak udostępniać.

...ale jak tak na to patrze to można by ekspresem program na to w Bascom napisać bo wszystkie adresy sa w PDF`ie do układu DS2502..przepytać go jak termometr DS18B20 zmieniając tylko adresy i w odpowiednim momencie podać 12V tym interfejsem (tak żebys nie miał 12V na atmedze :D ) 1024Bit(raptem 8 Bajtów) tablice sobie w ATmedze zapisać i wysłać mu to :D

Miłego dnia :)

-

BARTek
Moja strona

Portret użytkownika mcgyver26

Witam,dziękuję za odpowiedź -

Witam,dziękuję za odpowiedź - info.W najbliszym czasie postaram się kupić układzik i przetestować,a co to "emulacji" układu DS2502(czy też ds2501)pod bascomem,to znalazłem coś takiego http://www.mikrocontroller.net/topic/186476 jest tam wsad do attiny 13 napisany w bascomie lecz emuluje on (program) pod zasilacz 90W,a ja potrzebuję 240W.Problem w tym że nie daję rady zmienić z 90W na 240W (w instrukcji"data").Znalazłem "zrzut"pamięci z zasilacza 240W i to by mnie ratowało by zasilacz ładował baterię w dellu,bo niestety kupiłem zasilacz na znanym portalu aukcyjnym,lecz z uszkodzonym eepromem(choć zasilacz miał być sprawny) i dell nie ładuje bateri(ładuje po podmianie ds-a z zasilacza 65W).Zasilacz 65W nie daje rady gdy podłączona jest stacja dokująca i po włożeniu płyty "siada" napięcie,tymbardziej że sporo mam podłączone rzeczy do dela

Portret użytkownika EDC

Odp. DS2502 DELL

Wyslij mi ten zrzut z 240W to zerkne. &H oznacza tylko zapis w systemie szesnastkowym więc dokładnie tak jak widzisz to w programatorze. Jesli więc masz pamięć i pisze tam np. 4B,8H,76,20..itd to to wpisz po kolei w miejsce Data tylko przed tym postaw &H. Czyli będzie &H4B,&H8H,&H76,&H20...nie widze problemu :D
W razie gdybyś musiał coś przeliczać to windosowy kalkulator robi to w trybie naukowym :D
Zaznaczasz kropke Hex wpisujesz 4B, naciskasz kropke Dec i masz 75 :D i w druga stronę, co tylko chcesz... a z Bascom chodziło mi o zaprogramowanie pamieci mikrokontrolerem.

-

BARTek
Moja strona

Portret użytkownika gosc

Tak wiem że przedrostek "&H"

Tak wiem że przedrostek "&H" na począdku oznacza zapis HEX(podobnie jest z wartościami binarnymi "&B").Ja już "przeliczyłem" te dane z HEX-sa na DEC,ale niczego się tam nie doszukałem co by odpowiadało mocy,prądowi i napięciu zasilacza(emulowanego)itp.,czyli typowych danych z układu DS2501 dla zasilaczy della.Program w bascomie jest na stronie którą podałem,ale zamieszcze też tu:

' Emulation eines DS2501 aus Dell Notebook netzteilen
 
 
' Entwicklung basiert auf folgenden Quellen :
 
' Dallas DS 2501/02 Datasheet
' Webseite Wolfgang Pöllinger -> <a href="http://www.wp">www.wp</a>ö.de
' Webseite <a href="http://www.howtofixcomputers.com/forums/dell/dell-pa-10-ac-adapter-center-pin-108608.html
'">http://www.howtofixcomputers.com/forums/dell/dell-pa-10-ac-adapter-center-pin-108608.html
'</a> Webseite <a href="http://www.laptop-junction.com/toast/content/inside-dell-ac-power-adapter-mystery-revealed
'">http://www.laptop-junction.com/toast/content/inside-dell-ac-power-adapter-mystery-revealed
'</a> Webseite <a href="http://www.ringwelt.de/computer/pc/dell-d600-mit-12v-netzteil.html
'">http://www.ringwelt.de/computer/pc/dell-d600-mit-12v-netzteil.html
'</a> Webseite <a href="http://bascom.at.ua/publ/1-1-0-1
 
 
'">http://bascom.at.ua/publ/1-1-0-1
 
 
'</a>  Attiny 13 V  ---   UB = 3,6 Volt  -- 78L05 + 2x 1n4148 an dessen Ausgang --  gespeist aus 19 Volt von Dell
'  1Wire an Pin2 = PB3
 
'
'
'
'
'               + VCC +3,6
'                  +
'                  |
'                 .-.
'                 | | 4k7
'                 | |
'                 '-'
'                  | ___
'  Dell 1 Wire  o--o|___|---------> PB3
 
'                    220R
'
'
'
 
' (created by AACircuit v1.28.6 beta 04/19/05 <a href="http://www.tech-chat.de">www.tech-chat.de</a>)
 
 
 
 
$crystal = 9600000
$regfile = "attiny13.dat"
 
 
$hwstack = 32
$swstack = 8
$framesize = 16
 
 
Dim Incommand(2) As Byte
Dim Bytedat As Byte
Dim Bytedatbuffer As Byte
 
Dim I As Byte
Dim B As Byte
Dim Crc As Byte
Dim Bufstart As Byte
 
 
 
' Commands
 
Const Skip_rom = &HCC
Const Read_rom = &H33
Const Read_mem = &HF0
 
' we use port b .3
Const Dqpin = 3
Const Ipin = 0                                              ' value in DDRB for input
Const Opin = 1                                              ' value in DDRB for output
Dq Alias Pinb.dqpin
 
 
 
' Timings
 
Const Owpresent = 150
Const Owpause = 50
Const Owstrobe = 15
Const Owdata = 25
 
' Timer Delays
 
Const T1reset = 60
Const Timeout = 120
 
' ***********************  TIMER and ISR
Config Timer0 = Timer , Prescale = 64
Stop Timer0
Enable Timer0
On Timer0 Isr Nosave
Timer_t0 Alias Tcnt0
'***************************************
 
 
 
 
Mainloop:
Waitreset:
 
    Disable Interrupts
    Timer_t0 = 0
 
Waitfall:
 
L1:
    sbis pinb, DqPin
    rjmp L1
L2:
    sbic pinb, DqPin
    rjmp L2
 
    Start Timer0
 
Rwaitrise:
 
L01:
    sbic pinb, DqPin
    rjmp L01
L02:
    sbis pinb, DqPin
    rjmp L02
 
    Stop Timer0
 
    If Timer_t0 < T1reset Then Goto Waitreset
    If Timer_t0 > Timeout Then Goto Waitreset
 
 
Sendpresense:
    Waitus Owpause
 
    Ddrb.dqpin = Opin
 
    Waitus Owpresent
    Ddrb.dqpin = Ipin
    Timer_t0 = 0
    Enable Interrupts
 
Readb:
 
    Gosub Readbyte
 
Readb1:
 
    If Bytedat = Read_rom Then Goto Readrom
 
 
    If Bytedat = Skip_rom Then
     Crc = 0
     For B = 1 To 2
     Gosub Readbyte
     Incommand(b) = Bytedat
     Bytedatbuffer = Crc Xor Incommand(b)
 
      Crc = Crc8(bytedatbuffer , 1)
     Next B
 
 
     Gosub Readbyte                                         ' empty read for high adress
     'Bytedatbuffer = Crc Xor 00
     Bytedat = Crc8(crc , 1)
     Gosub Sendbyte
 
 
 
     If Incommand(1) = Read_mem Then Goto Readmem
 
 
 
    End If
    Goto Waitreset
End
 
Readrom:
       For B = 0 To 7
       Bytedat = Lookup(b , Rom)
       Gosub Sendbyte
       Next B
Goto Waitreset
'----------------------------------
'================================
Readbyte:
         For I = 0 To 7
 
L11:
    sbis pinb, DqPin
    rjmp L11
L12:
    sbic pinb, DqPin
    rjmp L12
         Timer_t0 = 256 - T1reset
         Start Timer0
 
         Rotate Bytedat , Right
         Waitus Owstrobe
 
 
         Bytedat.7 = Dq
 
         Next I
         Stop Timer0
Return
'----------------------------------
Sendbyte:
       Bytedatbuffer = Bytedat
        For I = 0 To 7
 
L21:
    sbis pinb, DqPin
    rjmp L21
L22:
    sbic pinb, DqPin
    rjmp L22
           Timer_t0 = 256 - T1reset
           Start Timer0
 
           If Bytedat.0 = 0 Then Ddrb.dqpin = Opin
           Waitus Owdata
           Ddrb.dqpin = Ipin
 
           Rotate Bytedat , Right
 
        Next I
        Bytedat = Bytedatbuffer
        Stop Timer0
Return
'-----------------------------------
 
Readmem:
Crc = 0
Bufstart = Incommand(2)
 
     For B = Bufstart To 63
     Bytedat = Lookup(b , Mem1)
     'Print Hex(bytedat)
    Bytedatbuffer = Crc Xor Bytedat
 
 Crc = Crc8(bytedatbuffer , 1)
     Gosub Sendbyte
     Next B
 
 Bytedat = Crc
 
 Gosub Sendbyte
 
 Goto Waitreset
 
 
' ***********************  isr
Isr:
 
    If Dq = 0 Then                                          ' Das ist Strange mit den Goto aus der Isr rauszugehen.
                                                            'aber es läuft
    Timer_t0 = T1reset
 
    Goto Rwaitrise
    Else
    Goto Waitreset
    End If
 
Return
 
'******************************
 
 
 
 
 
'*************** ROM **************************
Rom:
Data &H11 , &HB4 , &H91 , &H2F , &H05 , &H00 , &H00 , &HB8
 
 
 
'*************** mem 1 **************************
' Settings für 90 Watt Netzteil
 
Mem1:
 
Data &H44 , &H45 , &H4C , &H4C , &H30 , &H30 , &H41 , &H43
Data &H30 , &H39 , &H30 , &H31 , &H39 , &H35 , &H30 , &H34
Data &H36 , &H43 , &H4E , &H30 , &H43 , &H38 , &H30 , &H32
Data &H33 , &H34 , &H38 , &H36 , &H36 , &H31 , &H36 , &H31
Data &H52 , &H32 , &H33 , &H48 , &H38 , &H41 , &H30 , &H33
Data &H4D , &H7C , &HFF , &HFF , &HFF , &HFF , &HFF , &HFF
Data &HFF , &HFF , &HFF , &HFF , &HFF , &HFF , &HFF , &HFF
Data &HFF , &HFF , &HFF , &HFF , &HFF , &HFF , &HFF , &HFF

Zdecytowanie wolałbym zaprogramować pamięć DS2502-wystarczy podmienić,a emulacja na attiny13 wiąże się z potrzebą większego miejsca w zasilaczu,a tego miejsca brak-jedyne rozwiązanie to dać na kablu zaraz za zasilaczem "puszkę"z całym emulatorem

Portret użytkownika EDC

Odp.DS2502 DELL

Ja myślałem o tym żeby się sensu nie doszukiwać w tych danych tylko żywcem przepisać te z zasilacza 240W. Tam pewnie tylko jedna odpowiada za to ale nie trzeba wiedzieć co do czego żeby spróbować. W końcu swoją kostkę też musisz czymś zaprogramować. W czym problem żeby spróbować emulatorem czy budowa programatora do tej pamięci ma sens ;) Co jak zasilacz nie będzie wyrabiał i tak? Jak zadziała z Twoimi danymi to będzie sens dopiero ładować te dane do pamięci.

Miłego dnia.

-

BARTek
Moja strona

Portret użytkownika mcgyver26

Witam,przepraszam że tak

Witam,przepraszam że tak długo nie pisałem,lecz z braku czasu nie mogłem.Zauważyłem że kolega chce wsad pamięci do zasilacza 240W,więc go zamieszczam - jest to zrzut z działającego zasilacza 240W zaczerpnięty z internetu:

0 × 0000 0 × 44 0 × 45 0 × 0x4C 0x4C 30 0 × 30 0 × 41 0 × 43 
0 × 0008 0 × 32 0 × 34 0 × 30 0 × 31 0 × 39 0 × 35 0 × 31 0 × 32 
0 × 0010 0 × 33 0 × 43 0 × 30 0x4E 0 × 46 0 × 57 0 × 43 0 × 52 
0 × 0018 0 × 43 0 × 34 0 × 38 0 × 36 0 × 36 0 × 31 0 × 32 0 × 41 
0 × 0020 0 × 56 0 × 32 0 × 35 0 × 38 0 × 43 0 × 41 0 × 30 0 × 32 
0 × 0028 0x6B 0xCA 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 
0 × 0030 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 
0 × 0038 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 
0 × 0040 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 
0 × 0048 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 
0 × 0050 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 
0 × 0058 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 
0 × 0060 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 
0 × 0068 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 
0 × 0070 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 
0 × 0078 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 
CRC OK: 0xCC

to jego bym chciał wrzucić do ds-a 2502 lecz niestety mam problem ze zdobyciem programiku jaki podał kolega powyżej.Samego ds-a 2480 kupiłem w elektroniku normalnie lecz nie wiem za bardzo według którego schemacika z pdf-a mam zrobić ukłacik,czy może by wystarczyło podłączyć do układu ds2480 układ max232 + zasilanie 5V na VDD,12V na VPP i POOL do GND w układzie ds2480.

Portret użytkownika EDC

Odp. Programator DS2502

Sprawdź pocztę. Wysłałem ten Kit. To było niestety tak dawno że po tym temacie został mi ten program i kilka not aplikacyjnych ;)
Program do emulacji 1Wire to też oryginalna Bascomowa nota aplikacyjna. Mam ją po angielsku. Ja robię wszystko od razu. Na drugie podejście u mnie to niejedna rzecz czeka latami :P

-

BARTek
Moja strona

Portret użytkownika EDC

Ciekawostka ;)

Szukasz sensu w zapisie HEX to musisz czasem myśleć jak procesor :P To przykłady kodowania przebiegu w licznikach o których wielu już zapomniało bo powstało pełno kalkulatorów do tego...a sens jest zaszyty :P

sposoby liczenia komórek stanu licznika : np : 175.000 km

1.Najbardziej typowy sposób zapisu tzw "FFFF - xxxx"
jednostka zapisu : 2 bajty
1.1 stan licznika zostaj podzielony przez 32 (lub 16) = 5468 (reszta z dzielenia odrzucona)
1.2 zamieniony na HEX = 155C
1.3 odejmujemy od FFFF nasz wynik = EAA3 (wynik)

2.Typowy sposób zapisu tzw "zamienione bajty"
jednostka zapisu : 2 bajty
2.1 stan licznika dzielimy przez 32 (ew 16 lub 4) = 5468
2.2 zamieniamy na HEX = 155C
2.3 zamieniamy bajty młodszy ze starszym = 5c15 (wynik)

3.Sposób zapisu tzw "FFFF minus i zamienione bajty"
jednostka zapisu : 2 bajty
3.1 stan licznika dzielimy przez 32 (ew 16 lub 4) = 5468
3.2 zamieniamy na HEX = 155C
3.3 odejmujemy od FFFF nasz wynik = EAA3
3.3 zamieniamy bajty młodszy ze starszym = A3EA (wynik)

4.Tzw "zapis dziesiętny z sumą kontrolną" (np VW Corrado)
jednostka zapisu : 4 bajty
4.1 stan zapisany jest w notacji dziesiętnej w młodszych 3 bajtach = XX175000
4.2 XX jest sumą kontrolną wszystkich cyfr w zapisie HEX (1+7+5+0+0+0) = 13 (Dec) -> 0D (Hex)
wynik = 0D175000

5.Sposób "dec to hex 3 bity" (np BMW 5)
5.1 stan zamieniamy na HEX = 0124F8
5.1 bajty zapisujemy w przeciwnej kolejności = F82401
(uwaga : lepiej nie zmieniać najmłodszego bajtu) = xx2401

===================================================================

Sposoby zapisu komórek ze stanem licznika :

1. Najbardziej typowy tzw : 2 linijki
zapisane jeden po drugim wyniki naszych obliczeń 16 razy np :
00x0: EA A3 EA A3 EA A3 EA A3 EA A3 EA A3 EA A3 EA A3
00x0: EA A3 EA A3 EA A3 EA A3 EA A3 EA A3 EA A3 EA A3
x zapis w komórkach pod różnym adresem początku ale zawsze 0 jako najmłodszy bajt

2.Typowy zapis w jednej linijce
zapisane jeden po drugim wyniki naszych obliczeń 16 razy np :
00x0: EA A3 EA A3 EA A3 EA A3 EA A3 EA A3 EA A3 EA A3
x : j/w

3.Zapis w ciągu 16 (32) bajtowym
00x0: xx xx xx xx xx xx xx xx EA A3 EA A3 EA A3 EA A3
00x0: EA A3 EA A3 EA A3 EA A3 EA A3 EA A3 EA A3 EA A3 (ta linijka dla 32 bajtowego zapisu)
00x0: EA A3 EA A3 EA A3 EA A3 xx xx xx xx xx xx xx xx
x zapis w komórkach pod różnym adresem początku ale 8 jako najmłodszy bajt

4.Zapis w kolumnie
0060 : F8 24 01 xx xx xx xx xx xx xx xx xx xx xx xx xx
0070 : F9 24 01 xx xx xx xx xx xx xx xx xx xx xx xx xx
0080 : FA 24 01 xx xx xx xx xx xx xx xx xx xx xx xx xx
0090 : FB 24 01 xx xx xx xx xx xx xx xx xx xx xx xx xx
00A0 : FC 24 01 xx xx xx xx xx xx xx xx xx xx xx xx xx
00B0 : FD 24 01 xx xx xx xx xx xx xx xx xx xx xx xx xx
00C0 : F4 24 01 xx xx xx xx xx xx xx xx xx xx xx xx xx
00D0 : F5 24 01 xx xx xx xx xx xx xx xx xx xx xx xx xx
00E0 : F6 24 01 xx xx xx xx xx xx xx xx xx xx xx xx xx
00F0 : F7 24 01 xx xx xx xx xx xx xx xx xx xx xx xx xx
ZMIENIAĆ TYLKO NAJSTARSZE BAJTY (24 01) w/g sposobu "dec to hex 3 bity"

-

BARTek
Moja strona

Portret użytkownika mcgyver26

Witam,długo nie pisałem z

Witam,długo nie pisałem z braku czasu,a jak go miałem to rwałem włosy z głowy żeby tylko się uporać z owym programatorkiem pod DS-a.Pod program który dostałem od kolegi powyżej złożyłem programatorek,lecz program go nie wykrywa,programator nie reaguje - nic nie wysyła po rs-sie.Układ DS2480 zasilam dwoma napięciami(na pinie 4(VDD)daję 5V,choć na mierniku mam 4,9V),(na pinie 5(VPP)daję 12V - na mierniku mam 11,8V).POL mam podłączony do masy,pin 3 mam wolny,pin 2(1-wire)idzie do układu DSxxxx(w tym przypadku DS2502).Pin 7(TXD) idzie do wejścia TXD(pin 11)układu MAX232,a pin 8(RXD)idzie do wyjścia RXD(pin 12)układu MAX232.Sygnały RXD i TXD (piny 13 i 14)układu MAX232 idą przez jumper(RX/TX) do złącza RS232(do PC-ta).Jumperem tym można wybrać połączenie bezpośrednie lub z "przeplotem".Piny złacza RS232 są łączone ze sobą: pin4 z pin6 i pin7 z pin8.Piny 1 i 9 są wolne,a pin 2 i 3(TXD i RXD)idą na układ MAX232,a pin 5 leci na masę.Zamieszczam schemat-może ktoś się wypowie co zrobiłem źle,bo nic nie działa.Próbowałem też zamieniać sygnały między układem MAX232 a DS2480,choć to nic nie daje-jedyny efekt mam po odłączeniu układu DS2480 i połączeniu ze sobą (zwarciu)sygnałów TXD i RXD z max-sa - mam wtedy sygnał zwrotny z terminala.

Portret użytkownika EDC

Odp. Dallas

Proszę Kolego sympatyczny :D
Przed chwilą zainstalowałem to oprogramowanie na komputerze ze sprzętowym COM1 i systemem WindowsXP. Podłączyłem do tego pierwszy z brzegu interfejs który ma diody LED na liniach transmisyjnych. Diody mrugały. Takie interfejsy komunikują się zazwyczaj na liniach 2 i 3 COM. U Ciebie widzę jakieś to zapętlone. Idąc dalej program napisał, że nie może się skomunikować z DS9123. Wpisałem w Google i okazało się że na stronie Maxim jest cały schemat bo to nazwa płytki testowej uniwersalnej przejściówki RS232-1WIRE używającej zakupionego przez Ciebie ukladu. :D
Schemat, dla Twojej wygody umieściłem pod tym linkiem na moim koncie GoogleDrive .

Życzę miłego dnia i samych sukcesów :D Mam dziś bardzo dobry humor, to chyba wpływ pogody

..no i miałem nosa..linie 2 i 3 ...analizując schemat widzę że zrobili go "self powered" tak jak JDM dla procesorów PIC. Czyli z portu może ciągnąć te 12V. Jesli jednak masz tam zasilacz to możesz te część schematu z diodami Schotkiego pominąć. W razie kłopotów z nawiązaniem komunikacji rozważ jeszcze to, że układ MAX232 odwraca stany logiczne portu.

-

BARTek
Moja strona

Portret użytkownika gosc

Dzięki za odpowiedz.U mnie

Dzięki za odpowiedz.U mnie jak widać sygnały TXD i RXD(piny 2 i 3 złącza RS232)lecą przez jumpery na układ MAX232.Tymi zworkami wybieram połączenie bezpośrednie TXD->TXD i RXD->RXD lub z przeplotem TXD->RXD i RXD->TXD,mowa tu o sygnałach między układem MAX232 a złączem DB9(RS232)- nic tu nie jest zaplątane 8P.Ja po prostu myślałem że podłączę to przez max-a232 żeby dopasować poziomy napięć dla ds-a2480,podpatrzyłem trochę w notach układu i myślałem że układ ds2480 się odezwie jak go podepnę do com-a.Ja niestety na maxima dostać się nie mogę-już nie pamiętam jak dawno się rejestrowałem,lecz do tej pory nie otrzymałem kodu aktywacyjnego :/.Tam POL jest podpięty do plusa(na schemacie który podałeś),a ja znalazłem w opisie że przy zapisie układu ds2480 POL idzie do masy.
PS-sądzisz że jak zamiast układu max232 dam tranzystory to pójdzie?,bo tak jest na twoim schemacie - na razie nie zrobię(nie przetestuję tego schematu)bo nie mam takich tranzystorów.
ps-pogoda faktycznie poprawia nastrój :D i fajne widoki na drodze ;P

Portret użytkownika EDC

Odp. Dallas

Com Pin2 -> 14Max
Com Pin3 -> 13Max
Powinno działać, ta polaryzacja jest właśnie do wyboru jeśli jest inwerter więc chyba tych tranzystorów szukać nie musisz. Nie wiem czy nie powinieneś mieć jakiegoś układu 1Wire już podłączonego też. Można też dla testu zamienić Tx z RX pomiędzy MAX a DS. Nie bez powodu napisałem że uruchamiałem na kompie ze sprzętowym portem i winXP. Co ten Twój ma pod maską? :D
Może program nie może się na Com dostać. Spawdzony sposób jeszcze z czasów jak rozkodowywałem radia samochodowe i podłączenia do procesorów Motoroli to była codzienność. Bierzesz słuchawki. Masę łączysz z masą układu a sygnał do słuchawek bierzesz przez 2,2uF kondensatorek. I tak podsłuchiwać można transmisję. Czy w ogóle coś sie tam dzieje.

-

BARTek
Moja strona

Portret użytkownika gosc

Witam,właśnie tak mam

Witam,właśnie tak mam podłączonego max-a z com-em,poza tym zworkami mogę zamienić połączenie na odwrót.Na odcinku MAX232 a DS2480 mam połączone pin11 max-a z pinem7 ds-a(TXDout z TXDin)i pin12 max-a z pinem8 ds-a(RXDin z RXDout).Na tym odcinku przeciąłem też ścieżki i zamieniałem miejscami (tak jak piszesz) - bez rezultatu.Sygnały sprawdzałem próbnikiem stanów logicznych i zauważyłem że (na przeciętej ścieżce RXD między ds-em a max-em)z max-a mam stan wysoki a od ds-a mam stan niski.Od strony max-a jak wysyłam coś z terminala to pojawia się sygnał,a po połączeniu z ds-em jest cały czas stan niski(na RXD) i sygnał zanika.Po odłączeniu ds-a i "zwarciu" pinów 11 i 12 (RXD z TXD)układu max232-mam sygnał zwrotny na terminalu czyli układ max232 pracuje poprawnie - ginie sygnał po podłączeniu ds-a2480.Całość sprawdzałem z wpiętym układem DS2502 i DS1820 oraz bez wpiętych układów z tej racji że jak w programatorku (schemat w pierwszym poście)miałem układ ds2502 to program nie wykrywał programatorka,dopiero po wykryciu mogłem wpiąć układ ds2502-wada taka że można tylko zrobić było odczyt.POL mam podłączony do masy ale sprawdzałem też do +5V(wybieram zworką)- bez rezultatu.Ja używam tylko system windows xp profesjonal sp2(jest dla mnie najlepszy),system jest oryginalny.Sprawdzałem na komputerze stacjonarnym(PC)-tam program który podałeś instaluje się tylko pod USB,pod COM-a wywala błędy że brakuje jakiegoś pliku "DS2502K.CAB",a na laptopie instaluje się bez problemu choć na wszystkich kompach mam ten sam system.W delu d430 com-a mam ze stacji dokującej,ale port działa bez problemu.Jak piszesz podłączałem też "szukacza sygnałów"(zamiast słuchawki - nie chciałem uszkodzić układu choć używam tylko słuchawki telefonicznej która ma 400ohm)-bez skutku -brak sygnału.

Portret użytkownika gosc

Witam,właśnie tak mam

Witam,właśnie tak mam podłączonego max-a z com-em,poza tym zworkami mogę zamienić połączenie na odwrót.Na odcinku MAX232 a DS2480 mam połączone pin11 max-a z pinem7 ds-a(TXDout z TXDin)i pin12 max-a z pinem8 ds-a(RXDin z RXDout).Na tym odcinku przeciąłem też ścieżki i zamieniałem miejscami (tak jak piszesz) - bez rezultatu.Sygnały sprawdzałem próbnikiem stanów logicznych i zauważyłem że (na przeciętej ścieżce RXD między ds-em a max-em)z max-a mam stan wysoki a od ds-a mam stan niski.Od strony max-a jak wysyłam coś z terminala to pojawia się sygnał,a po połączeniu z ds-em jest cały czas stan niski(na RXD) i sygnał zanika.Po odłączeniu ds-a i "zwarciu" pinów 11 i 12 (RXD z TXD)układu max232-mam sygnał zwrotny na terminalu czyli układ max232 pracuje poprawnie - ginie sygnał po podłączeniu ds-a2480.Całość sprawdzałem z wpiętym układem DS2502 i DS1820 oraz bez wpiętych układów z tej racji że jak w programatorku (schemat w pierwszym poście)miałem układ ds2502 to program nie wykrywał programatorka,dopiero po wykryciu mogłem wpiąć układ ds2502-wada taka że można tylko zrobić było odczyt.POL mam podłączony do masy ale sprawdzałem też do +5V(wybieram zworką)- bez rezultatu.Ja używam tylko system windows xp profesjonal sp2(jest dla mnie najlepszy),system jest oryginalny.Sprawdzałem na komputerze stacjonarnym(PC)-tam program który podałeś instaluje się tylko pod USB,pod COM-a wywala błędy że brakuje jakiegoś pliku "DS2502K.CAB",a na laptopie instaluje się bez problemu choć na wszystkich kompach mam ten sam system.W delu d430 com-a mam ze stacji dokującej,ale port działa bez problemu.Jak piszesz podłączałem też "szukacza sygnałów"(zamiast słuchawki - nie chciałem uszkodzić układu choć używam tylko słuchawki telefonicznej która ma 400ohm)-bez skutku -brak sygnału.

Portret użytkownika EDC

Odp. Dallas

Quote:
program nie wykrywał programatorka,dopiero po wykryciu mogłem wpiąć układ ds2502-wada taka że można tylko zrobić było odczyt
Mam rozumieć, że program jednak rusza, odczytuje, tylko nie można zaprogramować? Bo to by trochę zmieniało by postać rzeczy.

Zapomniałem w ostatnim poście napisać, że rejestracja na MAXIM nie przechodzi na wielu kontach e-mail, z uwagi na bardzo długi link aktywacyjny, który automatycznie odrzucają serwery poczty. Sprawdzone jest konto g-mail.
Przyglądnę się temu programowi. Tam w pliku *.inf pisze że ze względu na różne ID potrzebna czasem jest jego modyfikacja "to get Your chip work" hahaha - no nieźle. Widzę też, że to może na USB z układem DS2490 pracować. Wpiszesz to w Google i pokazuja sie programy 1Wire Viewer i do iButton.

-

BARTek
Moja strona

Portret użytkownika mcgyver26

Ja wcześniej zrobiłem

Ja wcześniej zrobiłem programatorek

i używałem programu "Chip_1Wire" - to na nim miałem tak że program mi nie wykrywał programatorka jak miałem włożony układ ds2502,ja po prostu "analogicznie"-porównawczo jak w tym przypadku robiłem i z owym programatorkiem na ds2480 bo myślałem że może program nie wykrywa programatora dlatego że jest wpięty układ ds2502.

Portret użytkownika EDC

Odp. Dallas

Próbowałeś te niepotrzebne zwory z wtyku COM zdjąć? (6->4 i 7->8) Może port zabezpieczony przed jakimś przeciążeniem Ci się wyłącza. Terminal nie przewiduje użycia reszty pinów, a ten program pewnie je uruchamia bo chce napompować napięcia dla zasilania układu. Tak jak pisze, u mnie podłączone 2,3 i masa i diody przy próbie uruchomienia programu migają.

-

BARTek
Moja strona

Portret użytkownika mcgyver26

Nie nie próbowałem,ale

Nie nie próbowałem,ale spróbuję - jak mówisz "zwory" w com-ie tak mam ponieważ wziąłem podstawowy i sprawdzony schemat konwertera napięć dla RS232 przy współpracy komputera PC z układem mikrokontrolera.Układ ten zawsze działał bezproblemowo,ale DS2480 to nie procek więc może tu jest pies pogrzebany - sprawdzę i dam znać.

Portret użytkownika mcgyver26

Niestety rozłączenie "zwor"

Niestety rozłączenie "zwor" nic nie wniosło - jak było tak jest,choć dziś wyjątkowo program się uruchomił choć najpierw wyskoczył komunikat "error 13" - klikłem "ok" i program się uruchomił,po jakimś czasie się sam wyłączył.Zrobiłem kilka scren-ów co mi się po uruchomieniu pokazuje(nie zrobiłem scren-u tego błędu bo nie zdążyłem),a więc po uruchomieniu wyskakuje mi coś takiego

klikam "ok" i wychodzi mi coś takiego

a potem coś takiego

tutaj jak klikam "ok" to wszystko się powtarza odnowa choć co kilka uruchomień "program" się wyłącza.Dodam iż że uruchomienie programu poprzedzone błędem "13" nastąpiło przy wyłączonym programatorze(zapomniałem go włączyć)i bez wspomnianych zwor na com-ie.Było to tylko raz i więcej się nie powtórzyło(mowa tu o tym uruchomieniu programu poprzedzonym błędem)-potem pojawiały się komunikaty jakie podałem powyżej.

Portret użytkownika EDC

Odp. Dallas

On "słucha" na pinie TX, a nadaje na RX wiec napewno trzeba te piny tam zamienić względem Twojego schematu. Ostatnia rzecz jaka mi przychodzi do głowy to ustawienia portu COM. Powinno to być 9600 na start.

Dalej musisz sobie poradzić, bo bez układu nie będę drążył tematu.

-

BARTek
Moja strona

Portret użytkownika mcgyver26

Jak wcześniej pisałem

Jak wcześniej pisałem przeciąłem ścieżki RXD i TXD pomiędzy układem MAX232 a DS2480 i je zamieniałem miejscami - bez rezultatu.Ja zawsze jak nie mam podanej prędkości transmisji to używam "standardowej" czyli te 9600.Dla spokoju ducha i ciała :) to jeszcze raz zamienię miejscami,choć to mi wcześniej nic nie dało-miałem te same komunikaty-problemy.Na twoim schemacie jest jak u mnie RXD->RXD i TXD->TXD(wcześniej pisałem o tym)jeśli chodzi o odcinek pomiędzy układami.Mam pytanko,a mianowicie czy muszę zrobić taki układ jak podałeś czy tylko podałeś go przykładowo dla pokazania połączeń transmisji?.

Portret użytkownika EDC

Odp. Dallas

Quote:
.Na twoim schemacie jest jak u mnie RXD->RXD i TXD->TXD

Nie jest

Pamiętaj o czymś takim, że jeśli masz w układzie dwa błędy i na chwilę na próbę wykluczysz tylko jeden, potem wrócisz do poprzednich ustawień bo to nic nie dało, to nigdy nie dojdziesz do tego co jest powodem niesprawności układu. Ten obrazek z poprzedniego postu jest z Noty katalogowej DS2480 i widac tam ,że wystarczył by jeden MosFet i kilka diod.

-

BARTek
Moja strona

Portret użytkownika mcgyver26

Max-a232 ja bym zostawił w

Max-a232 ja bym zostawił w spokoju ponieważ pracuje poprawnie-jak wspomniałem wcześniej wysyła on i odbiera dane czego przykładem jest odbiór wysłanych danych(w terminalu) po "zwarciu" sygnałów RXD i TXD które idą na układ DS2480.Zauważyłem że po kilku włączeniach i wyłączeniach programatorka zaczął się pojawiać sygnał(dane) na RXD układu DS2480 podczas próby uruchomienia programu.Sygnał na RXD ds-a jest silny,choć czasem wcale go nie ma(pojawia się co któreś uruchomienie programatora).Czasem pojawia się też sygnał na 1-wire i TXD,ale są one bardzo słabe.Sygnał 1-wire nabiera na sile jak pomiędzy GND a DQ wpinam dwu kolorową,dwu nóżkową diodę led.Dioda ta świeci się gdy nie wysyłam nic(na DQ mam 4,9V-więc dobrze wg.mnie),dioda przygasa(miga)gdy podczas uruchomienia programu coś jest wysyłane.Doszedłem do wniosku że może układ DS2502 potrzebuje tak jak układ DS1820 rezystora 4,7k pomiędzy +5V a 1-wire - niestety nic to nie pomogło.Najlepiej sygnał wzrasta na 1-wire gdy podciągam DQ do GND przez diodę lub rezystor.Sygnał TXD z układu DS2480 się nie zmienia-jest słaby,próbowałem go wzmocnić tranzystorem,ale to nic nie pomogło.Na wejściu sygnału RXD do max-a są duże szumy,ale na wyjściu już ich nie ma.Na wyjściu sygnału TXD z max-a do kompa też są szumy,ale słychać słaby sygnał powrotny.A co to powyższego to ja mam podłączone tak:
sygnał z coma idzie na pin 13 max-a(RXDin)i wychodzi z pinu 12-go (RXDout) do RXD układu DS2480.Z układu DS2480 sygnał TXD leci na pin 11(TXDin)max-a i wychodzi pinem 14(TXDout) na coma.W Max-ie mam wolne piny 7;8;9;10.Pierwszy kond leci minusem na pin5,a plusem na pin4(max-a),drugi kond leci minusem do pin3 a plusem do pin1(max-a),trzeci kond leci minusem do +5V a plusem do pin2(max-a),czwarty kond leci minusem do pin6 a plusem do GND(max-a),pin16 do +5V,a pin15 do GND(wszystko w max-ie)

Portret użytkownika EDC

Odp. Dallas

Quote:
sygnał z coma idzie na pin 13 max-a(RXDin)i wychodzi z pinu 12-go (RXDout) do RXD układu DS2480

Czyli moje wypociny i edytowanie obrazków w poprzednich dwóch postach nic nie dały.
Zauważ, że w oryginalnej nocie aplikacyjnej to Pin RXD steruje bramką tranzystora czyli to on nadaje w tym układzie..Na tym drugim obrazku widać zaznaczony czerwoną elipsą napis "From TTL" znaczy - z układu TTL, w drugiej elipsie pisze "To TTL" - do układu TTL. W Twoim połączeniu to co nadaje DS2480 rozbija się o wyjście MAXa, a to co nadaje MAX rozbija się o wyjście DS`a...jeszcze jakiś błąd po drodze i uznasz , że to nic nie wniosło do sprawy..

-

BARTek
Moja strona

Portret użytkownika mcgyver26

Mam rozumieć że w ds-ie RXD

Mam rozumieć że w ds-ie RXD nadaje a TXD odbiera?bo jeśli tak to taka zamiana szyn danych mi nic nie wniosła.Testowałem,kombinowałem jak przysłowiowy koń pod górę,ale zamiana miejscami wejść i wyjść pomiędzy ds-em i max-em jak i między max-em a com-em nic nie dały.Nawet zamieniałem bramki zwykłe ze schmittem,ale obecnie mam jak być powinno - zwykła bramka do nadawania z ds-a,a ta ze schmittem do odbioru przez ds-a.W czwartek idę do elektronika to kupię części i złożę na próbę ten twój pierwszy układzik,zostwię tylko normalne zasilanie z układów 78xx.Zastanawia mnie tylko czy te diody schottkiego mogą być dowolne?.Tyle korzystam już z układów max232 i nigdy nie miałem żadnych problemów,a tu taka niespodzianka :/ pierwszy raz kiedyś musi być :/.Drogi kolego,twoja praca nie idzie na marne,ja po prostu uznałem że to jest błąd w druku.Dość często się spotykałem już z błędami w notach aplikacyjnych układów,a nawet w książkach,a ja na swój rozum(może i głupi)porównuję dość sporo not układów by wykluczyć błąd jak i metodą prób i błędów,jeżeli coś mi nie działa to sprawdzam każdą inną opcję,a tutaj się już zastanawiam czy się podczas lutowania nie uszkodził układ ds od ładunku z lutownicy?choć mało prawdopodobnie.W każdym bądz razie takie podłączenie jak piszesz nie działa,a szkoda.

Portret użytkownika mcgyver26

Witam,dzisiaj chciałbym

Witam,dzisiaj chciałbym zakończyć temat.Programatorek ds-ów ruszył z mojego schematu,niestety ze schematów z not katalogowych podanych przez kolegę "EDC" nic nie drgnęło w kierunku by układ chciał działać.Układ ruszył gdy odłączyłem VPP od +12V i podłączyłem VPP pod +5V(razem z VDD),a POL przepiąłem zworką z GND na VDD i wtedy układ ruszył.Gdy ruszyło ponownie podłączyłem VPP pod +12V(POL został pod VDD)i teraz układ działa bezproblemowo - odpala za każdym razem.Chciałbym podziękować koledze "EDC" zaz pomoc,zwłaszcza za program bez którego bym nic nie zdziałał - WIELKIE DZIĘKI ci EDC.

Portret użytkownika EDC

Odp. Dallas

Wielkie dzięki Kolego za takie zakończenie bo wszyscy się czegoś nauczyliśmy. Ja sobie notatkę zrobie w pliku tekstowym i wrzucę do folderu z tym programem na przyszłość. Nauczyłem się tego od kolegi który ma notatki dotyczące każdego urządzenia które musiał sam rozpracować naprawiając. Sam nie raz się łapałem na tym że musiałem na nowo szukać czegoś od nowa mimo że kiedyś już to robiłem...

-

BARTek
Moja strona

Portret użytkownika mcgyver26

Masz ci los - szlak mnie

Masz ci los - szlak mnie trafia,chyba się za bardzo pośpieszyłem z kończeniem tego tematu.Wczoraj wszystko działało pięknie,zaprogramowałem ds-a,a dzisiaj chcąc zaprogramować drugiego ds-a musiałem przepiąć POL-a pod GND.Programatorek zaczął się zachowywać tak że aby zrobić odczyt trzeba POL dać pod VDD,a żeby zrobić zapis to trzeba POL dać pod GND.Z tym nie było by problemu bo bym dał przełącznik na zewnątrz i bym sobie przełączał zapis-odczyt,ale zapisałem tylko dwa ds-y i koniec.Program odczytuje lecz nie zapisuje,siedzę jak ten głupi już cztery godziny i przepisuję komórkę po komórce wsadu i usiłuję zapisać układ i niby zapisuje lecz gdy robię odczyt to układ jest nie zapisany.Mam pytanie do kolegi "EDC" czy ten program od kolegi ma jakieś ograniczenia czasowe w programowaniu?,bo czytać to czyta,a nie zapisuje.Na odcinku układów ds2480 a max232 na liniach RXD i TXD mam podłączone diody led względem plusa(VDD)czyli +5V ponieważ gdy podciągłem do GND to ledy ciągle świeciły.Teraz ledy mrugają przy odczycie gdy POL jest pod VDD a gdy chcę zrobić zapis i daję POL pod GND to ciągle się świeci dioda TXD a dioda RXD mruga(przy zapisie)-po zapisie gaśnie, TXD ciągle świeci.Świecenie jej mnie trochę zastanawia ponieważ POL zmienia polaryzację danych z ds2480 i powinny po zmianie polaryzacji świecić się oba ledy lub wcale.Czy kolega może mi coś powiedzieć na ten temat - czy ten program ma jakieś ograniczenia?.Gdy POL jest na VDD i usiłuję zaprogramować układ to wyskakuje mi taki komunikat

oczywiście po zmianie POL na GND tego komunikatu nie ma i zapis prawidłowy (był-bo już nie można zapisać).Napięcia na układzie ds2480 tz. (+12V)-11,83V i (+5V)-4,98V - oba są stabilne i dobrze filtrowane.Czy te 12V musi być równe 12V?????,czy taka "tolerancja"może być???.Oba napięcia idą ze stabilizatorów 78xx i na począdku bez problemu zapisałem układ(y)więc wydaje mi się że napięcie może być,choć na necie znalazłem wątek że te napięcie musi być równe 12V - proszę o jakieś info.

Portret użytkownika EDC

Odp. Dallas

Spróbuj dać jakąś diodę prostowniczą pomiędzy masę a nóżkę masy tego 78x12. To sprawdzony sposób na podwyższenie napięcia z takiego stabilizatora. Dioda normalnie w kierunku przewodzenia, strzałką do masy. Spadek na diodzie zwykłej 0,6V a na Schotky 0,2V o tyle samo podniesie napięcie na wyjściu.
Mi procesory PIC tez sie programuja dopiero miedzy 12 -13V

-

BARTek
Moja strona

Portret użytkownika gosc

Witam,wpiąłem pomiędzy GND

Witam,wpiąłem pomiędzy GND diodę(y)schottkiego(dla mniejszego napięcia)i teraz mam takie napięcia: dla 5V mam 5,28V a dla 12V mam 12,16V.A co to pic-ków to wiem że one do programowania potrzebują 13V - budując programator wstawiałem pomiędzy GND układu 7812 zieloną diodę led-podnosiła ona napięcie do 13,02V i działała jako wskaźnik zasilania,ale to supełnie inna bajka.Wracając do tematu to podniesienie napięć(ia)nic nie wniosło-jak było tak jest.

Portret użytkownika EDC

Odp. Dallas

Wiesz może tam trzeba usiąść i poczytać bo ta pamięć jest napewno ADD-ONLY i trzeba by doczytać czy to nie jest OTP (One Time Programming). Czytajac sam nagłówek można przeczytać:

więc może sobie ją zablokowałeś..kombinuj Życzę samych sukcesów i trzymam kciuki :)

Pracując w branży samochodowej sam musiałem kiedyś mieć nowe (i mam do dzisiaj) pamieci M30080 do BMW bo w nich sa zapisane przebiegi hahaha a sa do ruszenia dopiero specjalnym programatorem bo normalnie są tylko AD-ONLY

-

BARTek
Moja strona

Portret użytkownika mcgyver26

Chciałem wrzucić wsad do

Chciałem wrzucić wsad do zasilacza 240W do della - wsad zamieściłem wyżej,ale pokarzę w "bin-ie" to co wrzucam do pamięci ds2502,a przynajmniej usiłuję:

trzeba to sobie tylko rozpisać od "page0" do "page3" - zrzut zrobiłem całościowo w programie "chip_1wire" bo w programie "ds2502k" podzielone jest na "page" i trzeba by kilka scren-ów.Nie wiem czy tym wsadem mogłem zablokować sobie układy bo pierwszy raz mam z nimi doczynienia - lubuję sie w atmegach,a ds-ami(mowa tu o pamięci,a nie czuj.temp.) zajmuję się z potrzeby tak jak pic-kami,choć one nie stwarzały żadnych problemów.Obecnie usiłuję zapisać dwa układy,lecz oba dają się tylko odczytać - podczas próby zapisu jak wspomniałem (POL pod GND) led_TXD świeci ciągle,a led_RXD mruga i po jakimś czasie przestaje i gaśnie.Po przepięciu POL pod VDD oba układy czyta,lecz są nie zapisane - czyżbym zablokował je oba???.W wolnym czasie kupię jeszcze ze dwa układy na próbę,choć będę je musiał zamówić i poczekać trochę bo ok 2-tygodni.Póki co będę kombinował z tymi dwoma.Zastanawia mnie fakt iż jeżeli bym zablokował układ pamięci to bym nie mógł jej odczytać,czyż nie?,czy tylko by była "blokowana"przed zapisem?,bo i tak bywa.
Dla jasności zamieszczam fragment pdf-a pamięci: