Proteus 7.6 - не работает симуляция PWM на Mega16

помощь начинающим осваивать программирование МК (PIC, AVR) на Си.

Модератор: koolhatcker

Ответить
Аватара пользователя
vzgherea
Станкостроитель
Станкостроитель
Сообщения: 82
Зарегистрирован: 07 дек 2009, 01:00

Proteus 7.6 - не работает симуляция PWM на Mega16

Сообщение vzgherea »

Простая генерация 50% шим в Proteuse выводится как последовательность пиков. Что интересно - на mega8 всё работает как надо а на mega16 - нет. В VMLAB всё симулируется правильно для обоих МК. Помогите запустить в Proteus-е под mega16.

Архив с проектом и исходник : http://www.cncfiles.su/download.php?id=816
Последний раз редактировалось vzgherea 15 янв 2010, 14:20, всего редактировалось 1 раз.
koolhatcker
Смотрящий
Сообщения: 1504
Зарегистрирован: 30 авг 2009, 00:00
Откуда: Омск
Контактная информация:

Сообщение koolhatcker »

Минуточку.
1.Какое отношение имеет MPLAB к AtMega?
2.Проект протеуса и исходник - в студию.
Автономный контроллер станка с ЧПУ: http://it-en.ru/cnc
Аватара пользователя
vzgherea
Станкостроитель
Станкостроитель
Сообщения: 82
Зарегистрирован: 07 дек 2009, 01:00

Сообщение vzgherea »

koolhatcker писал(а):Минуточку.
1.Какое отношение имеет MPLAB к AtMega?
Виноват, VMLAB
koolhatcker писал(а): 2.Проект протеуса и исходник - в студию.
Так он с первого поста в студии!
koolhatcker
Смотрящий
Сообщения: 1504
Зарегистрирован: 30 авг 2009, 00:00
Откуда: Омск
Контактная информация:

Сообщение koolhatcker »

Так он с первого поста в студии!
Хм. Сразу не увидел.
Как я понял, проблема именно при значении 512, т.к. при 511 и при 513 всё нормально?;)
Автономный контроллер станка с ЧПУ: http://it-en.ru/cnc
Аватара пользователя
vzgherea
Станкостроитель
Станкостроитель
Сообщения: 82
Зарегистрирован: 07 дек 2009, 01:00

Сообщение vzgherea »

koolhatcker писал(а): Как я понял, проблема именно при значении 512, т.к. при 511 и при 513 всё нормально?;)
Не знаю, другие значения не пробовал. Сейчас нету возможности проверить. Только вечером, дома. Работает с 511 и 513? Чем это можно объяснить?
koolhatcker
Смотрящий
Сообщения: 1504
Зарегистрирован: 30 авг 2009, 00:00
Откуда: Омск
Контактная информация:

Сообщение koolhatcker »

Ну скорее всего тем, что при значении равном 512 в OCR1AL содержатся нули:). Тогда и с 256 работать не должно.
В качестве костыля можно попробовать такую конструкцию..
...
OCR1AL = (char)pwm_val;
if((OCR1AL == 0) && (OCR1AH !=0))OCR1AL = 1;
...
:)
Последний раз редактировалось koolhatcker 15 янв 2010, 16:04, всего редактировалось 1 раз.
Автономный контроллер станка с ЧПУ: http://it-en.ru/cnc
Аватара пользователя
vzgherea
Станкостроитель
Станкостроитель
Сообщения: 82
Зарегистрирован: 07 дек 2009, 01:00

Сообщение vzgherea »

Ну и?
OCR1AH ведь получает значение.

Считаете что это глюк симуляции?
koolhatcker
Смотрящий
Сообщения: 1504
Зарегистрирован: 30 авг 2009, 00:00
Откуда: Омск
Контактная информация:

Сообщение koolhatcker »

Чего гадать - в железе проверьте и всё прояснится:).
Автономный контроллер станка с ЧПУ: http://it-en.ru/cnc
Аватара пользователя
vzgherea
Станкостроитель
Станкостроитель
Сообщения: 82
Зарегистрирован: 07 дек 2009, 01:00

Сообщение vzgherea »

koolhatcker писал(а): В качестве костыля можно попробовать такую конструкцию..
...
if((OCR1AL == 0) && (OCR1AH !=0))OCR1AL = 1;
...
Тоже посетила такая мысль:). Вечером попробую.

Спасибо за помощь!
koolhatcker
Смотрящий
Сообщения: 1504
Зарегистрирован: 30 авг 2009, 00:00
Откуда: Омск
Контактная информация:

Сообщение koolhatcker »

Вечером попробую.
Спасибо за помощь!
Всегда пожалуйста! Как попробуете - отпишитесь что да как если не сложно...
Автономный контроллер станка с ЧПУ: http://it-en.ru/cnc
Аватара пользователя
vzgherea
Станкостроитель
Станкостроитель
Сообщения: 82
Зарегистрирован: 07 дек 2009, 01:00

Сообщение vzgherea »

"Костыль" ситуацию исправил :goodtime:
Ответить