• I






      
           

Научно-популярный образовательный ресурс для юных и начинающих радиолюбителей - Popular science educational resource for young and novice hams

Основы электричества, учебные материалы и опыт профессионалов - Basics of electricity, educational materials and professional experience

КОНКУРС
language
 
Поиск junradio

Радиодетали
Искать на DESSY.RU
Сервисы

Stock Images
Покупка - продажа
Фото и изображений


 
Выгодный обмен
электронных валют

Друзья JR



JUNIOR RADIO





MicroSD ATmega32 Data-Logger



Статьи публикуются по мере поступления. Для упорядоченного тематического
поиска воспользуйтесь блоком  "Карта сайта"







Цель исследования  - представить способ хранения большого количества данных на карте microSD в файлах с форматом FAT32. Здесь ATmega32 используется для сбора данных и интерфейса microSD. Данные поступают от встроенного 8-канального АЦП ATmega32. Один канал используется для считывания температуры с датчика LM35, а остальные каналы используются для простого считывания напряжений и их сохранения. Может использоваться для взаимодействия 8 различных датчиков с АЦП ATmega32, аналогично используемому здесь LM35. Данные хранятся в формате CSV (значения, разделенные запятыми), которые можно прочитать с помощью ПК / ноутбука с Microsoft Excel или другого совместимого программного обеспечения. Снимок файла


Вот схема



 

Проект содержит интерфейс RTC (для хранения даты и времени), RS232 (для подключения к ПК) и модуль microSD. Здесь гипертерминальное соединение требуется только для установки даты и времени RTC. После установки даты / времени соединение RS232 больше не требуется для обычной операции регистрации данных (его можно использовать для отладки, если есть проблема).

Используемый здесь модуль microSD - от eXtreme Electronics .

 


 

Модуль показан на рисунке. Помимо разъема microSD, этот недорогой модуль также содержит встроенный 3,3-вольтовый регулятор для карты microSD, конвертер уровня 5v-3,3v и другие функции безопасности, необходимые для карты. Этот модуль используется здесь, поскольку он обеспечивает стабильный интерфейс и делает карту совместимой с 5-вольтным питанием и 5-в-сигналами микроконтроллера. На схеме также показаны два светодиода и кнопка. Светодиоды используются для индикации мощности и записи, а кнопка используется для начала-остановки записи.

Работа схемы:
-----------------------------------------------
Для установки даты / времени RTC (или режима отладки):

Подключите модуль microSD, вставьте карту microSD

Подключите кабель RS232 к цепи. Гипер-терминал настройки с 19200 бод, без контроля четности, 8-битных данных, 1 стоп-бит и управления потоком как «Нет»

Подключите кабель питания и включите питание, удерживая нажатой кнопку

Зеленый светодиод будет светиться на печатной плате

На терминале Hyper будет отображаться меню, как показано на рисунке ниже. Выберите желаемый вариант и следуйте отображаемым инструкциям.

Когда дата / время установлены или отладка завершена, выберите опцию «0», чтобы выйти из меню и начать работать как регистратор данных

В этот момент кабель RS232 можно удалить



 

Операция как Data-Logger:

Подключите кабель питания и включите питание схемы

Загорится зеленый светодиод

Всякий раз, когда требуется регистрация данных, нажмите кнопку

Красный светодиод загорится, указывая, что запись началась

Чтобы остановить запись, нажмите кнопку еще раз, запись остановится и красный светодиод погаснет

Файлы, хранящиеся на карте, могут быть прочитаны с помощью устройства чтения карт ПК или с использованием гипертерминала, когда схема запущена в режиме отладки. Операция очень проста, так как она использует только одну кнопку и светодиодную индикацию. В случае ошибки при доступе к карте красный светодиод будет постоянно мигать. В этом случае вы можете запустить схему в режиме отладки (с терминалом) и просмотреть сообщения об ошибках. Файлы хранятся с датой в виде имени и расширения .CSV. Например, запись данных, сделанная 10 мая 2011 года, будет храниться в файле «10052011.CSV». Поскольку дата - это имя файла, каждый день создается один файл, и вся запись данных за один день переходит в один файл независимо от того, сколько раз запись остановлена ​​/ запущена. Первый столбец файла показывает дату, второе показывает время и следующие 8 столбцов показывают данные из 8 каналов. Файл, созданный во время тестирования, показан на рисунке ниже, где для измерений был установлен интервал в 5 секунд (щелкните по изображению, чтобы увеличить его). Здесь канал-0 использовался для датчика температуры LM35, а остальные каналы измеряли напряжение. 5v был подключен к каналу-1, а 3-вольтовый элемент Li был подключен к каналу-3 (каналы 2 и 4 показывают некоторые небольшие напряжения из-за шума от напряжений, подключенных к соседним каналам, которые могут быть исправлены с использованием обходных колпачков).


 

Интервал между двумя измерительными циклами определяется в файле main.c, который может быть установлен в соответствии с требованиями пользователя. В принципе, программа формирует dataString в каждом цикле измерений и добавляет эту строку в файл, если файл уже существует или создает новый файл (например, во время первой записи в день). Вы можете просмотреть комментарии в файле исходного кода для получения дополнительной информации.
Примечание: Убедитесь, что цепь RTC правильно подключена, иначе код просто зависает в ожидании получения даты и времени от RTC

--------------------------------------
Исходный код записывается в формате AVR-GCC с помощью winAVR с AVRStudio-4, полная папка проекта AVRStudio может быть загружена отсюда:


- Загрузить исходный код

 

 







Просмотров: 1190 | Добавил: Chinas | Рейтинг: 0.0/0








Необходимо добавить материалы...
Результат опроса Результаты Все опросы нашего сайта Архив опросов
Всего голосовало: 348



          

Радио для всех© 2022