Совсем запутался .... помогите
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
|
Отправлено
Zlobster 03 декабря 2004 г. 17:54
|
|
|
|
Собрал себе часы на 90s8515 + ds1307 + ds1820.
Динамическая индикация на семисегментные индикаторы в прерывании от таймера. Код семисегментный генерится непосредственно контроллером, что позволяет писать всякие матюги. Так вот собсно проблема: RTC опрашивать успевает прям в обработке прерывания. Захотелось еще видеть температуру в хатке. На опрос ds1820 нужно 400-500 мс, что не позволяет его впихнуть в обработчик таймера. При выборке температуры в основном цикле программы, она постоянно прерывается вызовом прерывания(сори за тафтологию) и соответсвенно неправильно показывает. Киньтьте мысль как побороть, мозги совсем уже устали. :( Сенкс.
Составить ответ
|||
Конференция
|||
Архив
Ответы
- Подумай о мультпроцессинге - подтавь два камня, основной и попроще. Может быть Тиню. Пусть она Далласы гоношит как хочет. Бишь чиста в программном цикле без прерываний. А когда палучит ризультат, выдаст старшому процу. А в каком виде, через что (может SPI, если Мегу поставишь) и по какому протоколу - сам напишешь. Достоинства - чистая (по строгим таймингам) работа с Далласом и быстрая передача результата (требующая времени не более, чем необходимо). — инвертор (03.12.2004 19:45, пустое)
- Ответ: — Михаил Е. (03.12.2004 18:31, 205 байт)
- Точно, никак. Поскольку для шины MicroLAN все основано на четком тайминге, в процессе опроса термометра ПРИДЕТСЯ запрещать прерывания. — -=John=- (03.12.2004 18:14, пустое)
- Запрещать прерывания на время опроса DSки, больше никак — -=Shura=- (03.12.2004 17:59, пустое)
Перейти к списку ответов
|||
Конференция
|||
Архив
|||
Главная страница
|||
Содержание
|||
Без кадра
E-mail:
info@telesys.ru