Mundarija:

Avtobus qaroqchisi 3EEPROM Explorer kengashi: 5 qadam
Avtobus qaroqchisi 3EEPROM Explorer kengashi: 5 qadam

Video: Avtobus qaroqchisi 3EEPROM Explorer kengashi: 5 qadam

Video: Avtobus qaroqchisi 3EEPROM Explorer kengashi: 5 qadam
Video: Их состояние исчезло ~ Заброшенный сказочный дворец павшей семьи! 2024, Iyul
Anonim
Avtobus qaroqchisi 3EEPROM Explorer taxtasi
Avtobus qaroqchisi 3EEPROM Explorer taxtasi

Agar sizda Hack a Day's Bus Pirates -dan biri bo'lsa, unda nima qilasiz? 3EEPROM kashfiyot kartasi yordamida 1-simli, I2C va SPI EEPROMlar haqida bilib oling (biz buni THR-EE-PROM deb ataymiz). EEPROM-uzluksiz quvvat manbai bo'lmagan ma'lumotlarni saqlaydigan xotira chipining bir turi. Kichik logger sxemalarida ma'lumotlarni doimiy saqlash yoki mini -serverda maxsus sahifalarni saqlash uchun foydalidir. 3EEPROM uchta keng tarqalgan EEPROM chipiga ega: DS2431 (1-simli), 24AA- (I2C) va 25AA- (SPI). Hammasi ilgari Hack Day kuni namoyish qilingan, lekin har bir demo Bus Pirate apparat va dasturiy ta'minotining boshqa versiyasidan foydalanadi, bu esa yangi boshlanuvchilar uchun Bus Pirate v2go -dan foydalanishni qiyinlashtiradi. Bus Pirate v2go bilan DS2431, 24AA- va 25AA- EEPROM. Bizda to'liq sessiya jurnallari matnli fayllar sifatida saqlangan, shuning uchun siz hech qanday tafsilotni o'tkazib yubormaysiz, bizda Seeed Studio -da ishlab chiqarilgan 3EEPROM kashfiyotchi platalari yoki komplektlari bo'lishi mumkin. PCBlar taxminan 10 dollarni, to'plamlar taxminan 15 dollarni tashkil etadi, butun dunyo bo'ylab jo'natiladi. Ishni boshlash uchun biz 10 ta tenglikni yoki 20 ta to'plamni guruhli sotib olishni tashkil qilishimiz kerak. Agar siz avtobus qaroqchisiga qiziqsangiz, 3 -versiya keladi, men ko'rsatmaga ba'zi formatlash elementlari va HTML -jadvallarni qo'sha olmadim, siz asl xabarni "Xavfli prototiplar" blogida ko'rishingiz mumkin.

1 -qadam: 3EEPROM uskunalari haqida umumiy ma'lumot

3EEPROM uskunalari haqida umumiy ma'lumot
3EEPROM uskunalari haqida umumiy ma'lumot
3EEPROM uskunalari haqida umumiy ma'lumot
3EEPROM uskunalari haqida umumiy ma'lumot
3EEPROM uskunasiga umumiy nuqtai
3EEPROM uskunasiga umumiy nuqtai

Ushbu prototipning maqsadi - EEPROM va uchta umumiy avtobus protokoli haqida bilish. Birinchidan, biz 3EEPROM PCB ga qaraymiz, keyin Bus Pirate universal ketma -ket interfeys vositasi yordamida har bir EEPROMni namoyish qilamiz. Agar sizda avtobus qaroqchisi bo'lmasa, siz uni kuzatib borishingiz mumkin, chunki siz ularni qanday amalga oshirishingizdan qat'i nazar, interfeys operatsiyalarining asosiy tartibi o'zgarishsiz qoladi. Biz sxemani va tenglikni Cadsoft Eagle -ning bepul versiyasidan foydalanib tayyorladik. Siz sxematik va tenglikni PC Pirate SVN arxividan yuklab olishingiz mumkin. 3EEPROM tenglikni DS2431 1-simli EEPROM (IC1), 24AA-I2C EEPROM (IC4) va 25AA-SPI EEPROM (IC5) ga ega. IC1) 1-simli avtobusdan quvvat oladi, tashqi quvvat manbaiga ega emas va ajratuvchi kondansatkichni talab qilmaydi. IC2 va IC3-boshqa DS2431 yoki DS1822 harorat sensori kabi qo'shimcha 1-simli qurilmalar uchun bo'sh joy. C1 (0.01uF) ixtiyoriy va faqat agar IC2 yoki IC3da 1-simli qurilma o'rnatilgan bo'lsa, 1-simga maksimal tortishish qarshiligi talab qilinadi, maksimal 2,2 K ohm. Avtobus qaroqchisining bortli tortishish rezistorlari 10K, yozish paytida DS2431-ni to'g'ri quvvatlantirish uchun juda zaif. 3EEPROM tadqiqot paneli 1-simli avtobusda 1,8k ohmli 1/8 vattli tortish qarshiligini (R1) o'z ichiga oladi, shuning uchun qo'shimcha tortish qarshiligi kerak emas. 24AA- (IC4) va 25AA- (IC5) har biri 0,1uF kondansatör oladi, ularni quvvat manbaidan ajratadi (C2, C3). Ehtimol, bunday oddiy kontaktlarning zanglashiga olib keladigan kondansatkichlar kerak emas, biz ularni prototip taxtasida namoyish qilishda qoldirganmiz. 24AA-da ishlatiladigan I2C avtobusi, shuningdek, tortishish rezistorlarini talab qiladi, lekin Bus Pirate-ning bortidagi 10K ohmli qarshilik rezistorlari etarli, barcha komponentlar 2,8 voltdan 5 voltli shahargacha ishlaydi. O'chirish 3-VCC va GND pog'onali uchlari orqali quvvatlanadi. Ikkita VCC pin bor, biri quvvat uchun, ikkinchisi avtobus qaroqchisining rezistorli kuchlanish kuchlanish pimi (Vpullup) uchun. Cadsoft Eagle -ning bepul versiyasi. Siz sxemali va tenglikni PC Pirate SVN arxividan yuklab olishingiz mumkin. Agar siz professional darajada tayyorlangan PCB yoki 3EEPROM to'plamini xohlasangiz, 10 yoki 20 kishi qiziqsa, biz guruhli xaridni tashkil qilishimiz mumkin. Qismlar ro'yxati R1 1800 ohmli rezistor (1/8 vatt) C2, 3 0,1uF kondansatör/10 volt+JP1-4 0,1 dyuymli erkak pinli IC1 DS2431 1K 1 simli EEPROM TO-92IC4 ** 24AA014-I/P I2C EEPROM DIP8IC5 ** 25AA010A-I/P SPI EEPROM DIP8ICS4, IC5, 6 ** IC4, IC5 uchun 5 ta 8 pinli DIP uyasi har qanday o'lchamda bo'lishi mumkin, biz kichik chiplar bilan bog'langanmiz, biz 128 bayt va 128Kbayt ishlatganmiz. Ko'rsatmada siz "Xavfli prototiplar" blogidagi asl xabarni ko'rishingiz mumkin.

2-qadam: 25AA- / 25LC- SPI EEPROM

25AA- / 25LC- SPI EEPROM
25AA- / 25LC- SPI EEPROM
25AA- / 25LC- SPI EEPROM
25AA- / 25LC- SPI EEPROM
25AA- / 25LC- SPI EEPROM
25AA- / 25LC- SPI EEPROM

Barcha EEPROM demolari deyarli bir xil. Biz chipga bir nechta raqamlarni yozamiz, keyin ularni o'qiymiz. Har bir qurilmada bir nechta qiymatlarni yozishni xohlaganingizda, masalan, sahifa o'lchami va chegara cheklovlari mavjud bo'lgan shartlar mavjud. Ma'lumotlar jadvalida bu haqida ko'proq ma'lumotni o'qing, agar siz ishlashni ko'rsata olmasangiz, biz bajargan biror narsani o'tkazib yubormaslik uchun terminalning to'liq jurnalini yuklab oling. Yuk ko'taruvchi rezistorlar-eng keng tarqalgan muammo, avtobus qaroqchilar terminalidagi "v" menyusidan foydalanib, tortish pinining kuchlanishini tekshiring. Chip: 25AA, SPI EEPROM (1Kbayt). Avtobus: SPI. Quvvat talablari: 1,8 voltdan 5,5 voltgacha (AA), 2,5 voltdan 5,5 voltgacha (LC). Qo'llanmalar: ma'lumotlar sahifasi, bir kunlik namoyish. Avtobus qaroqchilarining sessiya jurnali.. Men ko'rsatmaga ba'zi formatlash va HTML jadvallarini qo'sha olmadim, asl nusxasini Xavfli prototiplar blogida ko'rishingiz mumkin. IC5- Microchip-dan 25AA seriyali I2C EEPROM, bu EEPROMlar bir tonna hajmda keladi. AA qismlari 1,8 voltdan 5,5 voltgacha ishlaydi, 25LC- 2,5 voltli minimal talabga ega. C3 (0,1uF) SPI EEPROMni quvvat manbaidan ajratadi. Yozishni himoya qilish (WP) va ushlab turish pinlari mikrokontrolder tomonidan boshqarilishi mumkin edi, lekin biz bu pimlarni baland tutib ularni o'chirib qo'ydik. CSI, DO, CLK va DI SPI avtobus pinlari JP4 sarlavhasiga olib kelingan. O'rnatish Agar siz avtobus qaroqchisidan foydalansangiz, uni 3EEPROM yoki 25AA-IC ga ulang, quyidagi rasmda ko'rsatilgan. SPI odatda tortishish rezistorlarini talab qilmaydi. Avtobus qaroqchilari terminalida rejim menyusi uchun 'm' tugmasini bosing va SPI ni tanlang. Oddiy pin chiqishi uchun SPI kutubxonasini sozlang, boshqa barcha SPI rejimi sozlamalari uchun standartlardan foydalaning. Quvvat manbalarini (katta 'V') SPI rejimi so'rovida yoqing. Nihoyat, quvvat manbalari ishlayotganiga ishonch hosil qilish uchun kuchlanish hisobotini oling ('v'). Biz oddiy pin rejimida SPI kutubxonasi yordamida EEPROMni to'g'ridan -to'g'ri 3.3 voltsli qanday ulash kerakligini ko'rsatamiz. Bu demo uchun tortishish rezistorlari shart emas. Agar siz 5 voltli EEPROM bilan ishlashni xohlasangiz, SPI kutubxonasidan ochiq kollektor (HiZ) pinli rejimda foydalaning va EEPROM quvvat manbaiga ulangan Vpullup pinli (Vpu) tortishish rezistorlarini yoqing. 1-qadam, yozishdan himoyalanuvchi SPI> [0b110] CS ENABLED <<< chip tanlash yoqilgan YOZISH: 0x06 <<< yozishni himoya qilish buyrug'ini o'chirib qo'ying CS o'chirilgan <<25AA- yoqilganda yozishdan himoyalangan. Pastki chip (CS) ([) ni tanlang, yozishni himoyalash buyrug'ini o'chirib qo'ying (0x06) va keyin EEPROMga yozishni yoqish uchun CS (] ni ko'taring. Yozishni himoyalashni o'chirish buyrug'i ikkilikda 0b00000110, lekin biz uni qisqartirishimiz mumkin. 0b110 va Bus Pirate hali ham tushunadi. 2 -qadam, ba'zi qiymatlarni yozing SPI> [0b10 0 3 2 1] CS ENABLED <<< chip tanlash yoqilgan YOZISH: 0x02 <<< yozish buyrug'i YOZISH: 0x00 <<< yozishni boshlash manzili YOZISH: 0x03 <<< yozish uchun 3 qiymat (3, 2, 1) YOZISH: 0x02 YOZISH: 0x01CS O'CHIRILGAN <<Endi EEPROM yozilishi mumkin. Birinchidan, 25AA-

3-qadam: 24AA- / 24LC I2C EEPROM

24AA / 24LC I2C EEPROM
24AA / 24LC I2C EEPROM
24AA / 24LC I2C EEPROM
24AA / 24LC I2C EEPROM
24AA / 24LC I2C EEPROM
24AA / 24LC I2C EEPROM

Chip: 24AA, I2C EEPROM. To'liq Bus Pirate sessiyasi jurnali. Men ko'rsatmaga ba'zi formatlash va HTML jadvallarini qo'sha olmadim, siz asl nusxasini Xavfli prototiplar blogida ko'rishingiz mumkin. IC4 Microchip-dan 24AA seriyali I2C EEPROM, bu EEPROMlar tonna o'lchamlari. AA qismlari 1,8 voltdan 5,5 voltgacha ishlaydi, 24LC qismlari esa 2,5 voltlik minimal talabga ega. 0,1uF kondansatör (C2) IC4ni quvvat manbaidan ajratadi. Yozishni himoya qilish pinini (WP) mikrokontroldordan boshqarish mumkin edi, lekin bu oddiy namoyish uchun biz uni erga ulangan holda o'chirib qo'yamiz. I2C avtobus pinlari, SDA va SCL, JP2 sarlavhasiga chiqariladi, ko'pchilik 24AA EEPROMlarning manzili 1010AAAS bo'lib, oxirgi to'rt bit manzil pinlari (A0, A1, A2) va o'qish/yozish rejimini tanlash biti bilan belgilanadi. (S). Barcha manzil bitlari bu misolda joylashgan, shuning uchun EEPROMning yozish manzili 10100000 (ma'lumotlar jadvali 6 -bet). O'rnatish Agar siz avtobus qaroqchisidan foydalansangiz, uni 3EEPROM yoki 24AA-IC ga ulang, quyidagi rasmda ko'rsatilgan. I2C-bu ikki pimli tortishish rezistorlarini talab qiladigan ikki tomonlama avtobus. Vpullup (Vpu) pinini 3.3 voltli quvvat manbaiga ulash va terminalda yoqish orqali siz avtobus qaroqchisining bortli tortish rezistorlaridan foydalanishingiz mumkin. Interfeys haqida eslatma: hamma I2C EEPROMlari bir xilda ishlamaydi. Kichkina 24AA01, masalan, butunlay boshqacha manzillar va buyruqlar tizimiga ega. Sizning chipingiz uchun ma'lumotlar jadvalini tekshirganingizga ishonch hosil qiling. Bus Pirate terminalidagi 'm' tugmasini bosing va rejim menyusidan I2C -ni tanlang. Quvvat manbalarini (katta 'V') va tortishish rezistorlarini ('p', variant 2) I2C buyrug'ida yoqing. Quvvat manbalari yoqilganligini va Vpullup pinini voltajga ulanganligini tekshirish uchun kuchlanish hisobotini ('v') oling. I2C> (0) <<(1) <<< manzil qidirish makrosidan foydalaning 7bit I2C manzil maydonini qidiring. Qurilmalarni toping: 0xA0 0xA1 <<Biz allaqachon bilamizki, I2C manzili 10100000, lekin biz 24AA- ni qidirish uchun avtobus qaroqchisining I2C qidiruv makrosidan (1) foydalanishimiz mumkin. Qidiruv makrosi qurilmani kutilgan yozish (0xA0) va o'qish (0xA1) manzillarida topdi. 1-qadam, ba'zi qiymatlarni yozing I2C> [0b10100000 0 0 3 2 1] I2C START VAZIYAT <<< I2C boshlang'ich sharti YOZISH: 0xA0 GOT ACK: YES <<< 24AA- manzil yozish YOZISH: 0x00 GOT ACK: Ha 1 YOZISH: 0x00 OK: HA <<< manzil baytini yozish 2 <Yozishni I2C boshlanish sharti bilan boshlang ([), keyin 24AA- yozish manzili (0xa0). Keyin, yozish uchun 16 bitli manzilni (0 0) va ma'lumotlarni yozishni (3 2 1) yuboring. I2C operatsiyasini to'xtatish sharti bilan tugating (]). 2-qadam, o'qish ko'rsatgichini joylashtiring I2C> [0b10100000 0 0] I2C START VAZIYAT <<< I2C boshlang'ich sharti YOZISH: 0xA0 AKT QILDI: YES <<< 24AA- manzil yozish 0x00 ACK: HA <<< manzil baytini yozish 2I2C STOP SHART <<24AA- dan o'qish uchun ikkita operatsiya kerak. Biri o'qish/yozish ko'rsatkichini joylashtiradi, ikkinchisi qiymatlarni qaytaradi. I2C boshlanish sharti ([) va yozish manzili (0xa0) bilan boshlang. 16 bitli manzilni o'qishga yuboring (0 0), keyin to'xtash sharti (]). Biz bu safar yozish uchun hech qanday ma'lumot yubormadik, faqat o'qish/yozish ko'rsatgichini 1 -qadamda yozilgan ma'lumotlarning boshiga joylashtirdik. 3 -qadam, ba'zi qiymatlarni o'qing I2C> [0b10100001 r: 3] I2C START VAZIYATI <<< I2C boshlang'ich sharti YOZISH: 0xA1 QO'LLANILDI: HA <<< 24AA- manzilni o'qingOXMALI O'QING 0x03 BYTES: <<< 3 qiymatni o'qing0x03 0x02 0x01I2C STOP SHART <<2 -qadam o'qish/yozish ko'rsatkichini biz o'qishni xohlagan ma'lumotlarning boshiga qo'ying. Endi biz ma'lumotlarni 24AA-o'qish manzili yordamida o'qiy olamiz, I2C boshlang'ich sharti ([) va 24AA-o'qish manzili (0xa1) bilan boshlaymiz. Biz yozgan uchta qiymatni 1 -qadamda o'qing (r: 3) va to'xtash sharti bilan tugating ()). Agar qiymatlar mos bo'lsa, unda sizning yozishingiz muvaffaqiyatli bo'ldi.

4-qadam: DS2431 1 simli EEPROM

DS2431 1 simli EEPROM
DS2431 1 simli EEPROM
DS2431 1 simli EEPROM
DS2431 1 simli EEPROM
DS2431 1 simli EEPROM
DS2431 1 simli EEPROM

Chip: DS2431, 1 simli EEPROM (1Kbayt). Avtobus: 1-simli, <2.2Kohm tortish qarshiligi talab qilinadi. Quvvat talablari: 2.8 voltdan 5.25 voltgacha. Manbalar: ma'lumotlar jadvali, bir kunlik namoyish Men ko'rsatma berishga ba'zi formatlash va HTML jadvallarini qo'sha olmadim, siz Xavfli prototiplar blogida asl nusxasini ko'rishingiz mumkin, DS2431 tortish qarshiligidan quvvat oladi va tashqi manbaga yoki ajratuvchi kondansatkichga muhtoj emas.. 1-simga maksimal tortishish qarshiligi kerak, maksimal 2,2 Kohm. Avtobus qaroqchisining bortli tortishish rezistorlari 10K, yozish paytida DS2431-ni to'g'ri quvvatlantirish uchun juda zaif. Quvvat va 1-simli shnur pimi o'rtasida 2,2 kohm yoki undan kichik tashqi rezistordan foydalanish kerak. Agar siz ma'lumot yozishda qiyinchiliklarga duch kelsangiz, tortishish qarshiligingiz etarlicha katta ekanligiga ishonch hosil qiling. 3EEPROM tadqiqot paneli 1-simli avtobusda 1800 ohmli tortish qarshiligini (R1) o'z ichiga oladi, shuning uchun tashqi qarshilik kerak emas. O'rnatish Agar siz avtobus qaroqchisidan foydalansangiz, uni 3EEPROM kartasiga yoki DS2431 ga quyidagi rasmda ko'rsatilgandek ulang. DS2431 quvvat manbai pinini talab qilmaydi, u 3EEPROM kartasida 1-simli avtobus uchun katta tortish qarshiligini yoqish uchun ishlatiladi. Interfacing Bus Pirate terminalidagi 'm' tugmasini bosing va 1-simli rejimni tanlang. Bort quvvat manbalarini yoqing (katta 'V') va kuchlanish monitorini (v) tekshiring. 1-qadam, qurilma manzilini toping 1-WIRE> (0xf0) <<< 1-simli qidiruv so'zi 1WIRE ROM buyrug'i: Qidiruv (0xF0) Quyidagi qurilmalarda topilgan: Ibratli 1WIRE manzili1.0x2D 0x54 0xD2 0xEF 0x00 0x00 0x00 0x2B <<< DS2431 yagona identifikator*DS2431 1K EEPROM <<Har bir 1-simli qurilmada noyob 8 baytli identifikator mavjud. 1-Wire-da barcha biriktirilgan qurilmalarning identifikatorini aniqlaydigan qidirish tartibi mavjud. Avtobus qaroqchisi 1-simli qidiruvni so'l sifatida amalga oshiradi (240). 1-simli qidiruvni boshlash uchun "Bus Pirate" terminaliga "(240)" buyrug'ini kiriting. Har bir qurilma manzili chop etiladi, ma'lum qurilmalar aniqlanadi. Birinchi 1-simli qurilmalarning o'nta manzili makro sifatida saqlanadi, bu misolda bizning DS2431 manzilimiz terminalda '(1)' yozish orqali mavjud. 2-qadam, chizish maydoniga 8 bayt yozing 1-WIRE> (0x55) (1) 0x0f 0 0 8 7 6 5 4 3 2 11WIRE BUS RESET OK <<< shuningdek {command 1WIRE WRITE ROM COMMAND: MATCH (0x55) * 64bit manzilga rioya qiling1WIRE ADDRESS MACRO 1: 0x2D 0x54 0xD2 0xEF 0x00 0x00 0x00 0x2B 'YOZISH: 0x0F <<< DS2431 skretch pad buyrug'i YOZISH: 0x00 <<< DS2431 yozish manzili bayt 1 WRITE: 2x31 <<<: 0x08 <<Keyin biz DS2431-dagi "skretch pad" deb nomlangan vaqtinchalik joyga 8 bayt yozamiz, 1-simli avtobusni tiklash va MATCH buyrug'i bilan operatsiyani boshlang (0x55). Ikkalasi ham so'l "0x55" sifatida mavjud. Buni "{0x55" yozish orqali makrosiz ham amalga oshirish mumkin, {1-simli resetni yuboradi, 0x55-1-simli MATCH buyrug'i. MATCH buyrug'idan so'ng, qurilmaning 8 baytli identifikatorini manzilga yuboring. Biz 1 -qadamda DS2431 identifikatori bilan to'ldirilgan so'lni (1) ishlatdik. Siz 8 baytli identifikatorni qo'lda kiritishingiz mumkin. Bu vaqtda DS2431 o'z manzilini olishi kerak edi va buyruqlarga tayyor bo'lishi kerak. 0x0f - skretch pad yozish buyrug'i, u DS2431ga ma'lumotlarni kutishini aytadi. Keyingi ikki bayt ma'lumotni qaerga qo'yish kerakligini aytadi, biz uni boshida saqlaymiz (0 0). Nihoyat, biz saqlash uchun 8 bayt qiymatlarni yuboramiz, 8 dan 1 gacha raqamlar. DS2431 ga to'liq 8 bayt yozish kerak. Bundan tashqari, yozish manzili 8 baytlik chegarada bo'lishi kerak. Yozish cheklovlari haqida to'liq ma'lumot olish uchun ma'lumotlar jadvaliga qarang. 3-qadam, chizish panelini tekshiring va avtorizatsiya kodini oling 1-WIRE> (0x55) (1) 0xaa r: 3 r: 8 r: 2 r: 21WIRE BUS RESET OK 0x55) *64bitli manzil bilan amal qiling 0x07 0x06 0x05 0x04 0x03 0x02 0x01BULT O'QISH 0x02 BYTES: <<< ma'lumotlar uchun CRC0xC8 0x86BULK O'QISH 0x02 BYTES: <<Ma'lumotlar to'g'ri qabul qilinganligini tekshiring va yozish uchun avtorizatsiya kodini oling. Qayta 1-simli sozlamalar va MATCH buyrug'i so'llari (0x55) va qurilma manzili so'llari (1) bilan boshlang. Bu safar DS2431 skretch pad o'qish buyrug'ini (0xAA) yuboradi va keyin jami 15 baytni o'qiydi. O'qilgan birinchi 3 bayt (r: 3) yozish uchun avtorizatsiya kodi bo'lib, keyingi nusxada nusxa ko'chirish uchun bizga kerak bo'ladi. chizish yostig'i EEPROMga. Keyingi 8 bayt (r: 8) biz 2 -bosqichda yuborilgan ma'lumotlarga mos kelishi kerak. Oxirgi 2 bayt (r: 2) ma'lumotlar uchun CRC16. CRC barcha 1 sonlarni qaytargandan keyin o'qiladi. 4-qadam, chizish panelini EEPROM 1-WIRE> (0x55) (1) 0x55 0x00 0x00 0x071WIRE BUS RESET OK <<< qurilmani manzilga yozing 0x2D 0x54 0xD2 0xEF 0x00 0x00 0x00 0x2BWRITE: 0x55 <<< skretch pad buyrug'ini nusxalash EEPROM. Qurilmani manzilga kiriting, so'ng DS2431 nusxa ko'chirish chizish buyrug'ini (0x55) va 3 -qadamda olingan uch baytli avtorizatsiya kodini yuboring (0x00 0x00 0x07). Agar avtorizatsiya kodi to'g'ri bo'lsa, ma'lumotlar EEPROMga o'tkaziladi. 5-qadam, skretch padini tekshiring 1-WIRE> (0x55) (1) 0xaa r: 31WIRE BUS RESET OK <<< qurilmaga manzil yozish1 ROM buyrug'i yozish 0xD2 0xEF 0x00 0x00 0x00 0x2BWRITE: 0xAA <<< skretch pad buyrug'ini o'qishDS2431 muvaffaqiyatli nusxa ko'chirish buyruq buyrug'idan so'ng yozish uchun avtorizatsiya kodining yuqori qismini o'rnatadi. Yangilangan avtorizatsiya kodini olish uchun boshqa skretch pad buyrug'ini (0xAA) yuboring, lekin birinchi uch baytni o'qing (r: 3). Oldingi 0x07 qiymati 0x87 ga o'zgardi, nusxa ko'chirish buyrug'i muvaffaqiyatli qabul qilindi.6-qadam, 1-WIRE> (0x55) (1) 0xf0 0x00 0x00 r: 8 r: 81 simini avtobus sozlamalarini tiklash OK <<< qurilmaga manzil yozish 1: 0x2D 0x54 0xD2 0xEF 0x00 0x00 0x00 0x2BWRITE: 0xF0 <<< DS2431 o'qish buyrug'iWRITE: 0x00 <<< 2 byte read addressWRITE: 0x00BULK READ 0x08 BYTES: <<< 8x0 0x00x0x0x0x0x0x0x0x0x0x0x0x0x0x0x o'qdik 0x08 BAYTLAR: <<Qiymatlarni olish orqali yozuv to'g'ri ishlanganligini tekshiring. DS2431 -ga murojaat qiling, keyin o'qish buyrug'ini (0xf0) va o'qiladigan manzilni (0x00 0x00) yuboring. Bitta buyruq bilan butun xotira diapazonini o'qish mumkin. Biz ilgari yozgan sakkiz baytni o'qiymiz (r: 8), bu kutilgan qiymatlarni qaytaradi. Bu qiymatlardan tashqari sakkiz bayt yozilmagan va 0 qaytariladi.

5 -qadam: Xulosa

Xulosa
Xulosa

Xulosa: Bu prototip EEPROM xotirasi haqida o'rgatadi va avtobus qaroqchisidan uchta umumiy protokoli bilan qanday foydalanishni ko'rsatadi: 1-sim, I2C va SPI. 3EEPROM tadqiqotchi taxtasi har bir EEPROM ga to'g'ri ulanishni ta'minlaydi va tashqi tortish qarshiligini ta'minlaydi. Parazitlar bilan ishlaydigan 1-simli avtobus. Bizda Seeed Studio-da ishlab chiqarilgan 3EEPROM kashfiyotchi platalari yoki komplektlari bo'lishi mumkin. PCBlar taxminan 10 dollarni, to'plamlar taxminan 15 dollarni tashkil etadi, butun dunyo bo'ylab jo'natiladi. Ishni boshlash uchun biz 10 ta tenglikni yoki 20 ta to'plamni guruhli sotib olishni tashkil qilishimiz kerak.

Tavsiya: