Easyelectronics.ru

Электроника для всех
Текущее время: 28 май 2018, 00:51

Часовой пояс: UTC + 5 часов



    • JLCPCB - Платы прототипов всего за 2$ c бесплатной доставкой (при первом заказе)
    • 10 PCBs за $2 для 2 слоев, $15 для 4 слойной, $74 для 6 слойной платы.
    • Крупнейший китайский производитель прототипных плат. 290000+ клиентов & 8000+ заказов в день!
    • LCSC - Крупнейший китайский онлайн магазин радиодеталей.

Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: AtMega32u4, Proteus и PWM.
СообщениеДобавлено: 31 янв 2018, 19:59 
Только пришел

Зарегистрирован: 09 ноя 2015, 01:22
Сообщения: 26
Добрый день.
Случилась такая закавыка. Прототипирую девайс в протеусе 8.6 SP2. Нужно сделать два канала с fast PWM. Пишу следующий код:
Код:
cli ();
DDRB = 0xFF;
PORTB = 0x00;
TCCR1A = 1 << COM1A1 | 1 << COM1B1 | 1 << COM1C1 | 1 << WGM10;
TCCR1B = 1 << WGM12 | 1 << CS12;
OCR1AL = 0xFF;
OCR1BL = 0xFF;
sei();

Дизасм в протеусе даёт следующий код:
Код:
cli ();
     cli
DDRB = 0xFF;
     ldi R25,$FF
     out $04,R25
PORTB = 0x00;
     out $05,R1
TCCR1A = 1 << COM1A1 | 1 << COM1B1 | 1 << COM1C1 | 1 << WGM10;
     ldi R24,$A9
     sts 0080,R24
TCCR1B = 1 << WGM12 | 1 << CS12;
     ldi R24,$0C
     sts 0081,R24
OCR1AL = 0xFF;
     sts 0088,R25
OCR1BL = 0xFF;
     sts 008A,R25
sei();
     sei

А по факту в 0CR1AL пишется 0хFF, а в OCR1BL 0x7F

ЧО ЗА ДЕЛА???!!!!!11111одинодин
С какого перепугу в седьмой бит OCR1BL не пишется значение?
Кстати, проверил и OCR1CL - та же фигня.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AtMega32u4, Proteus и PWM.
СообщениеДобавлено: 31 янв 2018, 20:19 
Старожил
Аватара пользователя

Зарегистрирован: 28 дек 2011, 11:24
Сообщения: 3611
Откуда: г. Липецк
Все что ненужно указал, кроме среды программирования и ее версии...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AtMega32u4, Proteus и PWM.
СообщениеДобавлено: 31 янв 2018, 20:31 
Только пришел

Зарегистрирован: 09 ноя 2015, 01:22
Сообщения: 26
Считаете разные компиляторы разные значения констант генерят?
Код писал в Code Blocks, компилятор WinAvr


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AtMega32u4, Proteus и PWM.
СообщениеДобавлено: 01 фев 2018, 07:07 
Заглядывает иногда

Зарегистрирован: 14 ноя 2014, 15:16
Сообщения: 45
На что-то похожее попадал в ATTiny2313.
В AVR студии при инициализации одного из таймеров битики из одного регистра попадали в другой.
Исправилось порядком записи данных в регистры.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AtMega32u4, Proteus и PWM.
СообщениеДобавлено: 01 фев 2018, 11:07 
Только пришел

Зарегистрирован: 09 ноя 2015, 01:22
Сообщения: 26
Проверил в железе, на том что под руку попалось - ардуина леонардо, там тот же чип стоит. Всё работает как надо.
Вот и я наконец словил глюк протеуса. :(


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AtMega32u4, Proteus и PWM.
СообщениеДобавлено: 01 фев 2018, 14:11 
Старожил
Аватара пользователя

Зарегистрирован: 17 апр 2010, 08:38
Сообщения: 4801
Откуда: Усинск, республика Коми
RollerBob писал(а):
Вот и я наконец словил глюк протеуса. :(

Лучшая отладка - в железе с реальными деталями, а не по идеальным моделям компонентов в программах. Конечно, иногда полезно при составлении схемы, посмотреть как это работает и чтобы можно было безболезненно заменять компоненты. Но только для понимания общего принципа и примерных расчетов.

_________________
хаос это непознанный порядок


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AtMega32u4, Proteus и PWM.
СообщениеДобавлено: 02 фев 2018, 10:50 
Только пришел

Зарегистрирован: 09 ноя 2015, 01:22
Сообщения: 26
Тут еще даже не отладка, а просто прототипирование. Накидать по быстрому схему и забить в контроллер инициализацию. То что симуляция схемы и реальная работа не всегда (вернее всегда) не одно и то же - это я давно усвоил. :)


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB