Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 28.10.2008, 17:08  
analitik33
Прописка
 
Регистрация: 11.11.2007
Сообщений: 143
Сказал спасибо: 15
Сказали Спасибо 11 раз(а) в 11 сообщении(ях)
analitik33 на пути к лучшему
По умолчанию Загадочный сброс предделителя таймеров 0 и 1 Меги16

В даташите на AVR ATmega16 на листах 87-88 указано, что синхронные таймеры-счетчики 0 и 1 имеют общий предделитель. Соответственно, его сброс битом 0 регистра SFIOR воздействует на оба таймера.
Стукнуло в голову проверить этот факт, для чего написал код на ассемблере, приложенный ниже. Запускаются Т0 и Т1 в нормальном режиме с предделителями у обоих 1/64. В цикле регулярно производится сброс общего предделителя. Прогон в AVR-Студии дал пораэительный результат: Т0 стоял как и ожидалось, а вот Т1 ведет счет не обращая внимания на сбросы!!! В железе тест не прогонялся. Как такое может быть???

; АТМега16 Тестовая программа сброса предделителя таймеров во время счета

.include "m16def.inc" ; Присоединение файла описаний

.def temp = r16 ; Определение главного рабочего регистра

;--------------------------- Инициализация таймера-счетчика 0
ldi temp,0b00010011
out TIMSK, temp ;Разрешение прерываний по переполнению
ldi temp,0b00000011
out TCCR0, temp ;Нормальный режим Таймера 0
;--------------------------- Инициализация таймера-счетчика 1
ldi temp,0b00000000 ;Нормальный режим Таймера 1
out TCCR1A, temp

ldi temp,0b00000011;Нормальный режим Таймера 1
out TCCR1B, temp

ldi temp, 0b00000011
main:
out SFIOR, temp
rjmp main ; К началу цикла
Реклама:
analitik33 вне форума  
Непрочитано 29.10.2008, 13:05  
picavr
Почётный гражданин KAZUS.RU
 
Аватар для picavr
 
Регистрация: 07.10.2007
Адрес: Луганск
Сообщений: 1,816
Сказал спасибо: 13
Сказали Спасибо 399 раз(а) в 214 сообщении(ях)
picavr на пути к лучшему
По умолчанию Re: Загадочный сброс предделителя таймеров 0 и 1 Меги16

Сообщение от analitik33
В даташите на AVR ATmega16 на листах 87-88 указано, что синхронные таймеры-счетчики 0 и 1 имеют общий предделитель. Соответственно, его сброс битом 0 регистра SFIOR воздействует на оба таймера.
Прогон в AVR-Студии дал пораэительный результат: Т0 стоял как и ожидалось, а вот Т1 ведет счет не обращая внимания на сбросы!!! В железе тест не прогонялся. ???
Действительно, даже на рисуночке разрисовано.
Нужно действовать методом научного ТЫКА, прогнать в Протеусе и в железе.

Во первых могет Студия не совсем коректно симулирует.
Всё таки софт безплатный. Хотя ИМХО глюков меньше чем в Протеусе ))))

А вообще, ATMEL отличалась не слишком точной ИНФО по МК AVR. Микрочип в этом отношении намного аккуратнее.

-- Прилагается рисунок: --

picavr вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сброс NE-4110S фирмы Moxa sergeq Микроконтроллеры, АЦП, память и т.д 0 03.07.2009 16:02
калькулятор для расчета таймеров счетчиков для AVR dimonbest Proteus, KiCAD и другие ECAD 23 21.09.2007 08:55
Как установить фьюзы для внешнего кварца Меги16? Zemlyanov Микроконтроллеры, АЦП, память и т.д 30 04.09.2007 11:54
Сброс и запуск МК CERGEI1982 Микроконтроллеры, АЦП, память и т.д 3 09.08.2007 13:43
AVRstudio 4.11 не симулирует прерывания таймеров tiny2313 graham Микроконтроллеры, АЦП, память и т.д 10 27.12.2005 14:59


Часовой пояс GMT +4, время: 13:43.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot