Модераторы: PILOT, ManiaK, Mazzi
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Програмирование таймера. Делаем часы 
:(
    Опции темы
Mura-vey
Дата 5.3.2005, 18:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 45
Регистрация: 22.4.2003

Репутация: нет
Всего: нет



Скачал апликейшен ноутс AVR130 про програмирование таймера. Там приводится программа


.include "m8535def.inc"
.cseg
.org 0 ;
rjmp init ;
rjmp no_vec
rjmp PRER
rjmp no_vec

init:


LDI R16,0X02
OUT TCCR0,R16
LDI R16,0X02
OUT TIMSK,R16

ldi r16,(1<<CS02)|(1<<CS00)
out TCCR0,r16
ldi r16,1<<TOV0
out TIFR,R16
ldi R16,1<<TOIE0
out TIMSK,r16


LDI R16,0XFF
out DDRA,r16
out DDRB,r16
out DDRC,r16


sei
; ldi r16,0xFE
; out tcnt0,r16
main:
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
rjmp main
PRER:


PUSH R16
IN R16,SREG
PUSH R16
IN R16,PORTB
COM R16
OUT PORTB,R16
OUT PORTA,R16
POP R16
out SREG,r16
POP R16
RETI
no_vec:
RETI


.EXIT

Прогаю под ATmega8535. При пересчёте на частоту 1 МГц светики должны моргать с частотой 1,5-2 Гц. Но ничего не работает вообще. Может кто объяснит в чём дело?
PM MAIL   Вверх
bzx
Дата 5.3.2005, 18:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 5.3.2005
Где: СПб

Репутация: 2
Всего: 2



У Вас не включены глобальные прерывания. Бит I регистра SREG должен быть =1.
PM MAIL   Вверх
Mura-vey
Дата 5.3.2005, 18:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 45
Регистрация: 22.4.2003

Репутация: нет
Всего: нет



bzx Спасибо! А поточнее нельзя, где и какую команду вставить. Заранее благодарен!
PM MAIL   Вверх
bzx
Дата 5.3.2005, 18:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 5.3.2005
Где: СПб

Репутация: 2
Всего: 2



Для Вас Выставить бит I в регистре SREG проблемотично?

Например, можно сделать так
LDI R16,0X80
OUT SREG,R16
и поставить до main

PM MAIL   Вверх
Mura-vey
Дата 5.3.2005, 19:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 45
Регистрация: 22.4.2003

Репутация: нет
Всего: нет



Всёравно не работает. smile Толька что всё написал, зашил. Нефига - контролер молчит. Думал с портами проблемы. Поставил начальное значение порта В - FF. Светики нагло горят и не мограют. smile
Добавлено @ 19:10
smile
PM MAIL   Вверх
PILOT
Дата 5.3.2005, 23:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: 20
Всего: 54



А откуда клоки зафьюзил?

СУВ.


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
Mura-vey
Дата 6.3.2005, 14:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 45
Регистрация: 22.4.2003

Репутация: нет
Всего: нет



PILOT По русски нельзя? Я русский человек.
Добавлено @ 14:38
bzx Вообще я включил глобальные прерывания (чё-то я стрормозил) командой sei. Зачем так геморно их включать?
PM MAIL   Вверх
PILOT
Дата 7.3.2005, 21:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: 20
Всего: 54



Что есть источник тактовых импульсов?

СУВ.


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
bzx
Дата 9.3.2005, 14:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 5.3.2005
Где: СПб

Репутация: 2
Всего: 2



1. Убедитесь в симуляторе, что Ваша программа работает, т.е. прерывания происходят и, самое главное, изменяются состояния портов. Если с этим всё ok, далее
2. проверьте конфигурацию (биты конфигурации) mcu
3. питание.
4. сигнал сброса
5. генерация кварца (проверить с помощью осциллографа)

PM MAIL   Вверх
PILOT
Дата 10.3.2005, 00:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: 20
Всего: 54



Кста, ты уверен что ты пральна частоты рассчитал? smile
А если серьезно, то проверь таблицу прерываний... это раз.
Во-вторых, так бездумно копировать код не стОит! Зачем ты повторяешь код (инициализация таймеров), зачем столько нопов?
Разберись с архитектурой, а? (без обид) Готов ответить на любые вопросы.

СУВ.


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
jimmi
Дата 29.3.2005, 10:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 122
Регистрация: 20.9.2004

Репутация: 5
Всего: 5



smile

Это сообщение отредактировал(а) jimmi - 7.9.2005, 17:01
PM MAIL   Вверх
PILOT
Дата 29.3.2005, 19:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: 20
Всего: 54



Если серьезно, то я бы руки оторвал тому кто пишет AN для AVR.
Жуть...

СУВ.


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Микроконтроллеры (MCU) и микропроцессоры (MPU)"
PILOT ManiaK
UniBomb Mazzi

На данный раздел помимо Правил форума распространяются текже следующие правила:


  • Прежде чем создать тему воспользуйтесь поиском или посмотрите в faq. Возможно на форуме уже есть ответ на ваш или близкий к вашему вопрос.
  • В заголовке темы в квадратных скобках обозначьте используемое семейство микроконтроллера: [avr],[pic],[arm].
  • При создании темы с вопросом указывайте участок кода с ошибкой, версию компилятора, схемы подключения, fuse биты и прочие данные, которые помогут найти правильный ответ. Для форматирования текста программ используйте кнопку код.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Для флуда, просьб выполнить задание, поиска партнёров или исполнителей существуют свои разделы.
  • Если вы заметили несовместимое с правилами сообщение, то можете уведомить об этом модератора раздела нажав кнопку Репорт у соответствующего сообщения.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, PILOT, ManiaK, UniBomb, Mazzi.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Микроконтроллеры (MCU) и микропроцессоры (MPU) | Следующая тема »


 




[ Время генерации скрипта: 0.0784 ]   [ Использовано запросов: 20 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.