Показать сообщение отдельно
Старый 19.01.2010, 08:45   #428   
Форумец
 
Сообщений: 1,532
Регистрация: 19.02.2009
Возраст: 54
Записей в дневнике: 1

petrd вне форума Не в сети
Цитата:
Сообщение от _new_ Посмотреть сообщение
Проблема в следующем: нужно принять по USART 30 байт, сохранить их в EEPROM и передать обратно (для сравнения). Камень - pic16f628a, среда microC. Схема такая же как в файле справке (прикрепить картинку?)
МК не успевает все принимать и сохранять - успевает только первые несколько и последние, середина теряется. Данные передаю файлом через встроенный в microC терминал. Может есть возможность как-то тормозить передачу на время записи в память?
1. Конечно будут потери - процесс записи EEPROM достаточно медленный + по коду задержка 20 мс, а данные из файла идут непрерывно.
2. Вариантов несколько. Первый - принимаемые данные складывать в массив, а после приема всех 30 байт записать их в EEPROM. Второй - использовать аппаратное управление, в частности задействовать CTS/RTS.
P.S. mikroC mikroC mikroC mikroC mikroC
  Ответить с цитированием