Proteus szimulátor használata
még egy dolgot szeretnék tudni hogyan lehet busz kábelell dolgozni.
Van egy mega128-am egy teljes portjára akarok kötni egy 7segmenses kijelzőt az is pont egy teljes port hogyan tudom megcsinálni mert túl nagy a kábel katyvasz!
a buszt megrajzoltam és bele is húztam a kábeleket de honan tudja melyiket hova kell vezetnie?
Van egy mega128-am egy teljes portjára akarok kötni egy 7segmenses kijelzőt az is pont egy teljes port hogyan tudom megcsinálni mert túl nagy a kábel katyvasz!
a buszt megrajzoltam és bele is húztam a kábeleket de honan tudja melyiket hova kell vezetnie?
-= STK500 =-
- ampervadasz
- Bitmanipulátor
- Hozzászólások: 119
- Csatlakozott: 2008. január 19. szombat, 7:00
DS18B20 és DS18S20 szenzor szimulációja
Üdv PROTEUS Istenei!
Elakadtam egy bővülő projektemben. A lényeg az, hogy Proteusban szeretném szimulálni a fent említett 1-wire hőmérőket, de már az elején nem azt csinálja, mint a valóságban.
Adott 4db hőmérő IC, amit a programom a sorozatszáma alapján tud azonosítani, de bármit is csinálok a szimulátorban, nem találja a chipieket. Lebutítottam a programomat 1 hőmérőre, majd szimulálva ugyanaz az eredmény
A szimulátorban átírtam a "ROM serial number" mezőt a chip sorozatszámára, de akkorsem megy, sőt még a kiolvasása is hibás eredményeket hoz.
A chip azonosítására a következő kis programot fordíttatom a szimulátorba:
Tudom, hogy képes kezelni az egyedi sorozatszámmal megadott chipeket. mivel a samle program is így kezeli.
Kérlek segítsetek a problémámba, mert már 1 hete ezzel küszködök és nem tudok miatta továbblépni!
Előre is köszönöm.
Ha valaki tud segíteni felvehet MSN-re is!
MSN: ampervadasz@toldinet.hu
Elakadtam egy bővülő projektemben. A lényeg az, hogy Proteusban szeretném szimulálni a fent említett 1-wire hőmérőket, de már az elején nem azt csinálja, mint a valóságban.
Adott 4db hőmérő IC, amit a programom a sorozatszáma alapján tud azonosítani, de bármit is csinálok a szimulátorban, nem találja a chipieket. Lebutítottam a programomat 1 hőmérőre, majd szimulálva ugyanaz az eredmény
A szimulátorban átírtam a "ROM serial number" mezőt a chip sorozatszámára, de akkorsem megy, sőt még a kiolvasása is hibás eredményeket hoz.
A chip azonosítására a következő kis programot fordíttatom a szimulátorba:
Kód: Egész kijelölése
$regfile = "m32def.dat"
$crystal = 8000000
Config 1wire = Porta.7
Config Lcd = 20 * 2
Config Lcdpin = Pin , Db4 = Portb.2 , Db5 = Portb.3 , Db6 = Portb.0 , Db7 = Portb.1 , E = Portb.6 , Rs = Portb.4
Config Lcdmode = Port
Dim I As Byte
Dim Crc As Byte
Dim Sorozatszam(6) As Byte
Dim Csaladkod As Byte
1wreset
Cls
If Err = 1 Then
Locate 1 , 1 : Lcd "-- "
End If
1wwrite &H33
Csaladkod = 1wread()
For I = 1 To 6
Sorozatszam(i) = 1wread()
Next
Crc = 1wread()
If Err = 1 Then
Locate 1 , 1 : Lcd "-- "
End If
'Családkód kiírása
Locate 1 , 1 : Lcd "Csaladkod:"
Locate 1 , 15 : Lcd Hex(csaladkod)
Wait 3
Cls
'6 bytes sorozatszám kiírása
Locate 1 , 1 : Lcd "Szeriaszam:"
Locate 2 , 1
For I = 1 To 6
Lcd Hex(sorozatszam(i));
Next
Wait 3
Cls
Locate 1 , 1 : Lcd "crc : " ; Hex(crc)
End
Kérlek segítsetek a problémámba, mert már 1 hete ezzel küszködök és nem tudok miatta továbblépni!
Előre is köszönöm.
Ha valaki tud segíteni felvehet MSN-re is!
MSN: ampervadasz@toldinet.hu
- ampervadasz
- Bitmanipulátor
- Hozzászólások: 119
- Csatlakozott: 2008. január 19. szombat, 7:00
Az „Onewire.h”:
// rom-code size including CRC
#define OW_ROMCODE_SIZE 8
Ezek szerint CRC As Word ???
Közbe adatlap megnéztem:
http://pdfserv.maxim-ic.com/en/ds/DS18S20.pdf
Figure 6. 64-Bit Lasered ROM Code
8-BIT CRC 48-BIT SERIAL NUMBER 8-BIT FAMILY CODE (10h)
// rom-code size including CRC
#define OW_ROMCODE_SIZE 8
Ezek szerint CRC As Word ???
Közbe adatlap megnéztem:
http://pdfserv.maxim-ic.com/en/ds/DS18S20.pdf
Figure 6. 64-Bit Lasered ROM Code
8-BIT CRC 48-BIT SERIAL NUMBER 8-BIT FAMILY CODE (10h)
Rossz a hívó kód:
MATCH ROM [55h]
The match ROM command followed by a 64-bit ROM code sequence allows the bus master to address a
specific slave device on a multidrop or single-drop bus. Only the slave that exactly matches the 64-bit
ROM code sequence will respond to the function command issued by the master; all other slaves on the
bus will wait for a reset pulse.
Alkalmazás:
http://pdfserv.maxim-ic.com/en/an/appibstd.pdf
MATCH ROM [55h]
The match ROM command followed by a 64-bit ROM code sequence allows the bus master to address a
specific slave device on a multidrop or single-drop bus. Only the slave that exactly matches the 64-bit
ROM code sequence will respond to the function command issued by the master; all other slaves on the
bus will wait for a reset pulse.
Alkalmazás:
http://pdfserv.maxim-ic.com/en/an/appibstd.pdf
Itt van 2 szenzórra. Ezt már próbáltad?
http://www.mcselec.com/index.php?option ... &Itemid=57
Használj inkább I2C hőmérőt! 1*űbb a címzése és van rá megoldás!
Sirleslie-től: http://sirleslie.atw.hu/projektek/m16-t ... index.html
http://www.mcselec.com/index.php?option ... &Itemid=57
Használj inkább I2C hőmérőt! 1*űbb a címzése és van rá megoldás!
Sirleslie-től: http://sirleslie.atw.hu/projektek/m16-t ... index.html
- ampervadasz
- Bitmanipulátor
- Hozzászólások: 119
- Csatlakozott: 2008. január 19. szombat, 7:00
Használlni egyszerűbb, csakhát a távolság elég nagy! Kb. 40méter...kapu48 írta:Itt van 2 szenzórra. Ezt már próbáltad?
http://www.mcselec.com/index.php?option ... &Itemid=57
Használj inkább I2C hőmérőt! 1*űbb a címzése és van rá megoldás!
Sirleslie-től: http://sirleslie.atw.hu/projektek/m16-t ... index.html