Vtydi
1

Проблемы с таймером

17.09.2011, 16:01. Показов 2323. Ответов 3
Метки нет (Все метки)

Нужна помощь новичку)
МК ATtiny13, режим таймера СТС, предделитель 8, количество счетов 9
Не понимаю, почему при достижении таймером значения OCR0A не работает переключение сигнала на ноге PB0.
Вместо этого переключается значения PINB0. DDRB0 выставлен в 1.
Вроде в регистрах настройки таймера все правильно.
При этом, если не выставлять значение OCR0B > OCR0A, то при первом сбросе таймера загорается флаг OCF0B и не сбрасывается.
Код
   .CSEG
.ORG 0x00
RJMP Start
.ORG OC0Aaddr
RJMP DATAOUT
Start:   NOP
SEI ;
NOP

NOP
SBI DDRB,0
NOP

LDI R20,(1<<OCIE0A)
OUT TIMSK0,R20

LDI R17,(1<<WGM01)|(1<<COM0A0)
OUT TCCR0A, R17

LDI R18,(1<<CS01)
OUT TCCR0B,R18

LDI R19,9
OUT OCR0A,R19

LDI R27,250
OUT OCR0B,R27

M:      NOP
NOP
RJMP M
DATAOUT:
NOP
RETI
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.09.2011, 16:01
Ответы с готовыми решениями:

Проблемы с таймером ATTiny13A
PCI0_ISR: PUSH TMP SBIC DevisePin,DevisePinN //I?iionoeou anee aeo a ii?oo i?euai...

Проблемы с таймером
Доброго дня есть програмка которая дожна запускать батник каждые 900 сек i:=i-1; ...

Проблемы с таймером
Проблема заключается в следующем. Имеется такая вот подпрограмма: ;Подпрограмма временной...

Проблемы с таймером 2 в stm8l151k4
В регистре TIM2_SMCR самый младший бит из битов TS упорно не хочет выставляться. Пишем например:...

3
MCSD: APP BUILDER
8793 / 1072 / 104
Регистрация: 17.06.2006
Сообщений: 12,603
18.09.2011, 19:24 2
Не совсем понял
.ORG OC0Aaddr

Может, что-нибудь наподобие:
Start:
SEI ;
SBI DDRB,0

LDI R20,(1<<OCIE0A)
OUT TIMSK0,R20

LDI R17,(1<<WGM01)|(1<<COM0A0)
OUT TCCR0A, R17

LDI R18,(1<<CS01)
OUT TCCR0B,R18

LDI R19,9
OUT OCR0A,R19

LDI R27,250
OUT OCR0B,R27

DATAOUT:
RJMP DATAOUT

Регистры проверять неохота...
0
MCSD: APP BUILDER
8793 / 1072 / 104
Регистрация: 17.06.2006
Сообщений: 12,603
18.09.2011, 19:35 3
Или в прерывании делается что-то?
0
Vtydi
18.09.2011, 21:33 4
В прерывании еще целая программа выполняется)
Разобрался почему переключается PINB0, оказывается при изменении PORTB0 пин меняется вслед за ним через 1 такт на тоже значение.
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.09.2011, 21:33

Проблемы с таймером 4 у stm8s103f2
День добрый. Наступил на грабли на ровном месте. Начинаю разбираться с STM8. Использую &quot;ST Visual...

Проблемы с таймером или с логикой?
Господа, помогите начинающему: Есть объект DynamicGameObject, его тип содержит статический...

(Решено)STM32f100 Проблемы с таймером 2.
Здравствуйте уважаемые форумчане. Начал изучение и один проект на STM32, добрался до таймеров, и...

Оконное приложение WINAPI. Проблемы с гиперссылкой, диалоговыми окнами, таймером, и границы окна
1. Не отображается гиперссылка, она нигде не выскакивает (строки в коде 156 и 220); 2. Не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru