I
М И К Р О К О Н Т Р О Л Л Е Р Ы
h
Предлагаем вашему вниманию устройство записи, хранения и воспроизведения речи,
построенное на современной элементной базе.
Печатается с разрешения Российского представительства INELTEK GmbH, www.ineltek.ru
I
I
\ j i т р у п о в
' / U p O j l d l i i O
jJ ü - J - lJ y
использующее
технологию AVR
и последовательную
память DATAFLASH
Окончание. Начало в_№1 Q/2004
З а п и с ь д а н н ы х
в D ataFlash
Запись данных в DataFlash производится путем запи-
си сначала в буфер, а когда этот буфер будет запол-
нен, его содержимое запишется в одну страницу глав-
ной памяти
(рис. 14).
В подпрограмме “write to flash” переменная “j” со-
ответствует номеру байта в буфере, а переменная “к”
номеру страницы, в которую будет записываться со-
держимое буфера. Если флаг новых данных показы-
вает, что DataFlash пуста, то оба счетчика устанавли-
ваются в нуль.
Если память уже содержит некоторые данные, то
переменные показывают следующее свободное мес-
то в памяти и гарантируют, что новые данные доба-
вятся к содержимому памяти.
Для того, чтобы защитить содержимое этих пере-
менных при двух вызовах функций, они объявляются
статическими переменными.
Для записи данных в буфер линия #CS переводит-
ся в низкое состояние и в DataFlash загружается опе-
рационный код 0x84. Это следует за 14-ю не имеющи-
ми смысла битами и 10 битовым адресом положения
внутри буфера. Затем вводятся 8-бит данных.
Эта последовательность передается “ведомому”
побайтно. После каждого байта проверяется регистр
состояния SPI (SPSR), пока флаг прерывания SRI но
покажет, что последовательная передача завершена.
После записи всей последовательности линия #CS пе-
реводится в высокое состояние.
Если буфер заполнен и остались пустые страницы,
то буфер копируется на следующую страницу DataFlash.
Так как память была очищена раньше, то данные могут
быть записаны без дополнительного стирания.
Если память заполнена, то цикл выполняется, пока
нажата кнопка “запись”. Любые данные, записанные в
го время, когда память ужо заполнена, будут потеряны.
С 3-
Ï
лет
флаг Hotux
42 |
Обнулить
страницы
счетчики
и буфера
Сброс флага но»мх
Ü1HHUX
t
Г Обнулить счётчик |
I
I
~ т ~
\
ДА
in лтюлиенР^> —
j
1Ълитъ
lÆX1
"
j
Передача команды
"буфер * сараницу".
адреса .• границы и
длош х не н-сущих
У
V
" “
Г
-
^ ''О т у щ б ш 'Х
HJ-Y
<
У -------------
Выключить DataFlash {
С
Уаелкчить C4éi<ut
страницы на
1
ши
Рис. 14. Запись в DataFlash
|" Радиолюбитель -
I2/2004
предыдущая страница 41 Радиолюбитель 2004-11-12 читать онлайн следующая страница 43 Радиолюбитель 2004-11-12 читать онлайн Домой Выключить/включить текст