Занимательная микроэлектроника - [202]

Шрифт
Интервал

  ;set LO address

         rcall write

         brcs rt_writef  ;C=1 ERROR

         pop DATA  ;set data to DATA

         rcall write

         brcs rt_f  ;C=1 ERROR

         rcall stop

         brcs rt_f  ;C=1 ERROR

         ret


;--------------- чтение EEPROM -------------

ReadFlash:  ;в AddrL,AddrH — адрес, данные в DATA

                  ;если бит с = 1 в регистре флагов, то ошибка

         cbi PORTD,pSDA

         cbi PORTD,pSCL

ldi cnt,120

loop_read_f:

         rcall start

         ldi DATA,0xA0  ;addr device=0,r/w=0

         rcall write

         brcs rt__f  ;C=1 ERROR

         mov DATA,AddrH  ;set HI address

         rcall write

         brcs rt__f  ;C=1 ERROR

         mov DATA,AddrL  ;set LO address rcall write

         brcs rt__f  ;C=1 ERROR

         rcall start

         ldi DATA,0xA1  ;addr device=0,r/w=1

         rcall write

         brcs rt__f  ;C=1 ERROR

         clt;  ;no put ACK

         rcall read

         rcall stop

         brcs rt__f  ;G=1 ERROR

         ret

rt__f:

         dec cnt

         brne loop_read_f

         ret


rt_writef:

         pop DATA

rt_f:

         brcc Ok_wr_f

         dec cnt

         brne loop120f

Ok_wr_f:

         ret


;------------ запись RTC ------------

write_i2c:  ;b ClkA — адрес, данные в DATA

                  ;если бит с = 1 в регистре флагов, то ошибка

         cbi PORTD,pSDA

         cbi PORTD,pSCL

         ldi cnt,120  ;120 попыток прописать

lоор120:

         push DATA

         rcall start

         ldi DATA,0bi1010000  ;addr device,r/w=0

         rcall write

         brcs rt_write  ;C=1 ERROR

         mov DATA,ClkA  ;set HI address

         rcall write

         brcs rt_write  ;C=1 ERROR

         pop DATA  ;set data to DATA

         rcall write

         brcs rt_  ;C=1 ERROR

         rcall stop

         brcs rt_  ;C=1 ERROR

         ret


;-----------чтение RTC-----------

read_i2c:  ;ClkA — адрес, данные в DATA

                ;если бит с = 1 в регистре флагов, то ошибка

         cbi PORTD,pSDA

         cbi PORTD,pSCL

ldi cnt,120

loop_read_:

         rcall start

         ldi DATA 0b11010000  ;addr device,r/w=0

         rcall write  ;C=1 ERROR

         mov DATA ClkA  ;set HI address

         rcall write

         brcs rt  ;C=1 ERROR

         rcall stare

         ldi DATA, 0b11010001  ;addr device, r/w=1

         rcall write

         brcs rt  ;C=1 ERROR

         clt  ;no put ACK

         rcall read

         rcall stop

         brcs rt  ;C=1 ERROR

         ret

rt__:

         dec cnt

         brne loop_read_

         ret

rt_write:

         pop DATA


rt_:

         brcc Ok_wr_

         dec cnt

         brne loop120

Ok_wr_:

         ret

;--------------------------------

write:  ;запись байта из DATA

         push DATA

         push cnt

         ldi cnt,8  ;счетчик бит


x42:

         rol DATA

         brcs sei

         sbi DDRD,pSDA

         rjmp del_wr

sel:

         cbi DDRD,pSDA

del_wr:

         cbi DDRD,pSCL

         rcall delay

         sbi DDRD,pSCL

         rcall delay

         dec cnt

         brne x42  ;следующий бит

         cbi DDRD,pSDA  ;освободить pSDA для АСК

         rcall delay

         cbi DDRD,pSCL

         rcall delay

         clc

         sbic PIND,pSDA  ;читаем в бит С состояние АСК

         sec  ;АСК не пришел

         sbi DDRD,pSCL

         rcall delay

         pop cnt

         pop DATA

         ret


read:  ;чтение в DATA, бит t=1 —> ответить АСК, t=0 не отвечать АСК

         ldi DATA,1

loop_read:

         sbi DDRD,pSCL  ;SCL=0

         cbi DDRD,pSDA  ;SDA=1

         rcall delay

         cbi DDRD,pSCL  ;SCL=1

         rcall delay

         clc

         sbic PIND,pSDA  ;читать SDA в бит С

         sec

         rol DATA

         brcc loop_read

         ;отсылаем ACK ()

         sbi DDRD,pSCL  ;SCL=0

         rcall delay

         brts se0

         cbi DDRD,pSDA  ;не отвечать ACK (t), SDA=1

         rjmp rd_

se0:

         sbi DDRD,pSDA  ;отвечать ACK (t), SDA=0

rd_:

         clc

         rcall delay

         cbi DDRD,pSCL  ;SCL=1

         rcall delay

ret


start:

         cbi DDRD,pSDA

         cbi DDRD,pSCL

         rcall delay

         sbis PINC,pSDA

         rjmp start

         sbis PINC,pSCL

         rjmp start

         sbi DDRD,pSDA  ;0=SDA

         rcall delay

         sbi DDRD,pSCL  ;0=SCL

         rcall delay

ret


stop:

         sbi DDRD,pSDA

         sbi DDRD,pSCL

         rcall delay

         cbi DDRD,pSCL  ;1=SCL

         rcall delay

         cbi DDRD.pSDA  ;1=SDA

         rcall delay

         clc

         sbic PIND,pSDA

         ret

sbic PIND,pSCL

         ret

         sec

ret


delay:  ;~5 мкс (кварц 4 МГц)

          push cnt

          ldi cnt,6

cyk_delay: dec cnt

          brne cyk_delay

          pop cnt

ret

Приложение 6

Словарь часто встречающихся терминов

В табл. П6.1 и П6.2 приведен перевод некоторых терминов, часто встречающихся в технической документации. Термины, вошедшие в русский язык в оригинальном звучании или близком к нему (transistor, resistor, logic, timer, emitter и т. п.) и потому понятные без перевода, за некоторыми исключениями в таблицах не приводятся. Не приводятся также термины и сокращения, подробно рассмотренные в тексте соответствующих глав (SRAM, DRAM, EEPROM и т. п.).


Таблица П6.1

Русско-английский

Блок (узел, устройство) —


Еще от автора Юрий Всеволодович Ревич
Информационные технологии в СССР. Создатели советской вычислительной техники

Показано, что представляла собой советская отрасль информационных технологий в реальности, без преувеличений и излишнего самоуничижения. Сборник составлен из очерков, посвященных создателям отечественной вычислительной техники советского периода. Вы узнаете о том, что в СССР существовала довольно развитая компьютерная отрасль, обеспечившая научные и военные нужды государства, созданная совершенно самостоятельно и нередко превосходившая зарубежные достижения. Авторы прослеживают все этапы ее развития, от создания первых компьютеров до распада самой страны, и подробно разбирают причины сдачи завоеванных позиций.Для широкого круга читателей.


Занимательная электроника

На практических примерах рассказано о том, как проектировать, отлаживать и изготавливать электронные устройства в домашних условиях. От физических основ электроники, описания устройства и принципов работы различных радиоэлектронных компонентов, советов по оборудованию домашней лаборатории автор переходит к конкретным аналоговым и цифровым схемам, включая устройства на основе микроконтроллеров. Приведены элементарные сведения по метрологии и теоретическим основам электроники. Дано множество практических рекомендаций: от принципов правильной организации электропитания до получения информации о приборах и приобретении компонентов применительно к российским условиям.


1001 совет по обустройству компьютера

В книге собраны и обобщены советы по решению различных проблем, которые рано или поздно возникают при эксплуатации как экономичных нетбуков, так и современных настольных моделей. Все приведенные рецепты опробованы на практике и разбиты по темам: аппаратные средства персональных компьютеров, компьютерные сети и подключение к Интернету, установка, настройка и ремонт ОС Windows, работа в Интернете, защита от вирусов. Рассмотрены не только готовые решения внезапно возникающих проблем, но и ответы на многие вопросы, которые возникают еще до покупки компьютера.


Запрограммированные

Эта статья посвящена программам – но программам не компьютерным. Ученые давно обнаружили, что все живое на земле в процессе существования и жизнедеятельности управляется некими алгоритмами, причем в данном случае речь идет вовсе не о достижениях генетики и молекулярной биологии…


Михаил Анчаров. Писатель, бард, художник, драматург

Эта книга — первое подробное жизнеописание писателя, сценариста, художника и поэта Михаила Леонидовича Анчарова (1923–1990). Анчаров — один из основателей жанра авторской песни, которой начал заниматься раньше других: первые песни написаны еще в конце тридцатых годов прошлого века. В шестидесятые годы им были опубликованы прозаические произведения, которые сделали М. Л. Анчарова признанным писателем. В семидесятые годы он создал сценарий первого советского телесериала «День за днем». Вернувшись к прозе во второй половине семидесятых, Анчаров написал несколько повестей и романов, которые до сих пор хорошо известны читателям («Дорога через хаос», «Самшитовый лес», «Записки странствующего энтузиаста»). Биография представлена на фоне социально-исторических событий, повлиявших на его судьбу и творчество.


Рекомендуем почитать
Как проектировать электронные схемы

Данная книга представляет собой сборник практических рекомендаций по проектированию, изготовлению и наладке аналоговых и цифровых электронных схем различного назначения.Большое внимание уделено особенностям использования разнообразных электронных компонентов, вопросам разработки и изготовления печатных плат и корпусов, методике испытания устройств и поиска неисправностей. Приведено большое количество сравнительно простых цифровых и аналоговых схем. Отдельная глава посвящена решению типовых задач по программированию микропроцессоров и микроконтроллеров, представлены примеры полезных подпрограмм.Книга адресована как начинающим любителям электроники и радиотехники, так и профессионалам.


Искусство схемотехники. Том 2 [Изд.4-е]

Широко известная читателю по предыдущим изданиям монография известных американских специалистов посвящена быстро развивающимся областям электроники. В ней приведены наиболее интересные технические решения, а также анализируются ошибки разработчиков аппаратуры: внимание читателя сосредоточивается на тонких аспектах проектирования и применения электронных схем. На русском языке издается в трех томах.Том 2 содержит сведения о прецизионных схемах и малошумящей аппаратуре, о цифровых схемах, о преобразователях информации, мини- и микроЭВМ и микропроцессорах.Для специалистов в области электроники, автоматики, вычислительной техники, а также студентов соответствующих специальностей вузов и техникумов.


Искусство схемотехники. Том 3 [Изд.4-е]

Широко известная читателю по предыдущим изданиям монография известных американских специалистов посвящена быстро развивающимся областям электроники. В ней приведены наиболее интересные технические решения, а также анализируются ошибки разработчиков аппаратуры: внимание читателя сосредотачивается на тонких аспектах проектирования и применения электронных схем.На русском языке издается в трех томах. Том 3 содержит сведения о микропроцессорах, радиотехнических схемах, методах измерения и обработки сигналов, принципах конструирования аппаратуры и проектирования маломощных устройств, а также обширные приложения.Для специалистов в области электроники, автоматики, вычислительной техники, а также студентов соответствующих специальностей вузов и техникумов.


Радио и телевидение?.. Это очень просто!

В книге рассказывается о том, как устроены и работают современные радиоприемник и телевизор. Рассказ ведется в форме непринужденных бесед между опытным и начинающим радиолюбителями.Книга рассчитана на широкий круг читателей.


Содержание журнала «Радиоаматор», 1993–2009 гг.

Данный путеводитель собран из различных источников, отредактирован, структурирован Терещенко Дмитрием aka timonПожелания-предложения-критику попрошу высказывать сюда - t i m o n @ m i h.s t v.r uПрошу прощения за возможные ошибки, не имею возможности проверять правильность данных по каждой статье.


Радиоцензура

В отличие от темы иновещания тематика радиотехнической борьбы между "социалистическим" лагерем и капиталистическими странами остаётся практически неизвестной массовому читателю.В данной работе автор - Римантас Плейкис (бывший министр связи Литвы в 1996-1998 гг.) подробно рассматривает радиоцензуру (синонимы: радиозащита, радиоподавление, постановка помех, глушение, радиопротиводействие, забивка антисоветских радиопередач, радиоэлектронная борьба).Без преувеличения эта статья, написанная в 2002-2003 годах, закрывает еще одно "белое пятно" в противостоянии двух военно-политических блоков и раскрывает технологию радиотехнической цензуры.К сожалению, для русскоязычных читателей доступен только электронный вариант данного исследования.