Частота синхронизации МК
Примем частоту задающего кварцевого генератора FOSC = 12 МГц. Длительность машинного цикла при этом равна TМЦ = 1 мкс.
Настройка таймера-счётчика Т/С0
Режим работы. По сформулированному выше определению Т/С0 должен работать в непрерывном режиме таймера (без блокирования сигналом ) для формирования импульсов с частотой дискретизации FД. Выбираем поэтому режим 2 с перезагрузкой после каждого цикла счёта. Управляющие биты GATE0 = 0, C/ 0 = 0 и код режима 10 записываются в состав управляющего слова (константа #02) для регистра TMOD при инициализации фильтра – командой MOV 89, #02.
Задание частоты дискретизации FД = 10000 Гц. Длительность интервала дискретизации равна ТД = 100 мкс. Количество машинных циклов TМЦ, укладывающихся на интервале дискретизации: N = TД / TМЦ = 100, т.е. T/С0 должен иметь в режиме с перезагрузкой коэффициент счёта kСЧ = N = 100. Максимальный коэффициент пересчёта 8-разрядного счётчика (без перезагрузки) равен kМАКС = 28 = 256. Чтобы в режиме суммирования 8-разрядный Т/С0 имел требуемый коэффициент пересчёта kСЧ = N, при перезагрузке в него должно записываться число NИСХ = kМАКС – N, для рассматриваемого примера NИСХ = 156 = 9С. Константа #9С, обеспечивающая требуемую частоту дискретизации, при инициализации фильтра должна быть записана для хранения в регистр TH0 (прямой адрес 8C) – командой MOV 8C, #9C. Пуск Т/С0 осуществляется путём установки в регистре TCON управляющего бита TR0 =1 при инициализации фильтра - командой SETB 8C. Вывод импульса переполнения Т/С0 для запуска АЦП выполняется по прерыванию от флага TF0, устанавливающегося при переполнении Т/С0. Подпрограмма обработки прерывания от флага TF0 имеет стартовый адрес 000B и содержит команды: CLR 90, SETB 90 – сброс и установка линии P1.0 (порт P1), так как исходное состояние линии – 1 (во все защёлки портов при сбросе МК записаны 1 – порты настроены на ввод).
Настройка прерываний В результате сброса МК при включении питания всем источникам прерываний назначается одинаковый, нулевой приоритет. Поскольку обработки прерываний от таймера Т/С0 и по входу не могут совпадать по времени, переопределять приоритеты прерываний не требуется. После сброса МК все прерывания запрещены. Поэтому при инициализации требуется разрешить прерывания вообще (установить бит EA = 1) и, в частности, разрешить прерывания от Т/С0 (ET0 = 1) и по входу (EX0 = 1). Команда записи управляющего слова (константы #83) в регистр IE: MOV A8, #83.
Популярное: Как построить свою речь (словесное оформление):
При подготовке публичного выступления перед оратором возникает вопрос, как лучше словесно оформить свою... Модели организации как закрытой, открытой, частично открытой системы: Закрытая система имеет жесткие фиксированные границы, ее действия относительно независимы... Почему двоичная система счисления так распространена?: Каждая цифра должна быть как-то представлена на физическом носителе... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (601)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |