VNC1L и все, все, все - Задача
Индекс материала |
---|
VNC1L и все, все, все |
Задача |
Особенности SPI интерфейса |
Некоторые особенности и дополнения |
Программа |
Дополнительные материалы |
Все страницы |
Задача
Любая задача по управлению предполагает наличие измерения и хранения результатов измерения. В нашем случае контроллер измеряет, решает задачу управления исполнительными устройствами и пишет логи один раз в минуту. Непрерывный процесс управления может быть достаточно длительным, например 7 дней. Удобно логи писать прямо в ASCII, с тем, чтобы полученный файл легко импортировался в MS Excel. Взятый за основу контроллер Atmega128, имея на борту энергонезависимую память, не удовлетворяет нашим требованиям по емкости этой памяти. Вначале было отработано решение с SD картами. За основу взята библиотека, поддерживающая FAT.
Это решение имело одно достоинство и два недостатка для нашей задачи.
Достоинство: дешево, аппаратно никаких промежуточных драйверов.Недостатки:
- занимает 17% памяти;
- при подключении пяти SD карт разных емкостей и производителей, одна SD карта не работала с контроллером, хотя стандартный CARD Reader ее читал.
Из этого было сделано заключение, что аппаратные промежуточные буферы между контроллером и SD картой необходимы, тем более, что расстояние между контроллером и картодержателем может быть не малым, исходя из конструктивных решений.
Решение с VNC1L (“Винни”) обещало рай за дополнительные 450 рублей розницы. И прежде всего никаких забот по FAT. Но как это всегда бывает, рай нужно было еще заработать. Фирменное описание изложено тяжеловато, встречаются противоречия с примерами программ.
По умолчанию подключение идет через UART. Идея замечательная. AVR общается с «Винни» через три интерфейса: UART, SPI, Параллельный. Выбор осуществляется перемычками. Для нашей задачи актуально было только SPI, т.к. все два UART-а были заняты. Конечно скоростей при этом не достичь, но нам и не надо. Команды, которые подает AVR имеют формат ASCII. Список этих команд достаточно развит: можно открывать файл, писать, читать, добавлять и.т.д.
Обновлено (17.06.2012 09:04)