ШИМ не меняет свою скважность (ATtiny13A)

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Аватара пользователя
Zwanzig
Нашел транзистор. Понюхал.
Сообщения: 190
Зарегистрирован: Вт янв 26, 2010 21:49:41
Откуда: モスクワ

ШИМ не меняет свою скважность (ATtiny13A)

Сообщение Zwanzig »

Необходимо регулировать яркость светодиодов, подключены к МК через транзисторный ключ. Вот мой тестовый "код" :))) :

Код: Выделить всё

RESET:
   ldi temp, 1;
   out DDRB, temp;
   ldi temp, 200;
   out OCR0A, temp;
   ldi temp, 0b10000011;
   out TCCR0A, temp;
   ldi temp, 0b00001101;
   out TCCR0B, temp;

Wait:
   rjmp Wait;
На ножке OC0A я, естественно ожидал ШИМ со скважностью, зависящей от значения регистра OCR0A. А получилось, что от этого регистра зависит частота - чем больше значение, тем больше период мигания. А скважность одна и та же - 50%.
Чё за хрень? Весь даташит про таймер прошёл от и до, всё правильно написано.
Реклама
Аватара пользователя
coredumped
Опытный кот
Сообщения: 838
Зарегистрирован: Вт апр 12, 2011 18:38:19
Откуда: с Земли

Re: ШИМ не меняет свою скважность (ATtiny13A)

Сообщение coredumped »

Невнимательно даташит прочитали, неверно режим выбрали.
Занесите 0b00000101 в TCCR0B (WGM02=0) и будет Вам счастье :)
Все будет только лучше, в крайнем случае - хуже.
Реклама
Аватара пользователя
Zwanzig
Нашел транзистор. Понюхал.
Сообщения: 190
Зарегистрирован: Вт янв 26, 2010 21:49:41
Откуда: モスクワ

Re: ШИМ не меняет свою скважность (ATtiny13A)

Сообщение Zwanzig »

Опа, спасибо большое!
Мне почему-то въелось в мозг, что TOP - это то, что таймер использует для сравнения со счётчиком, а не верхняя граница, как на самом деле :lol:
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15581
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: ШИМ не меняет свою скважность (ATtiny13A)

Сообщение BOB51 »

а программный шим сообразить вломушки?
тем более, для светодиодов на AVR(до 24 каналов)?
:)
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
Zwanzig
Нашел транзистор. Понюхал.
Сообщения: 190
Зарегистрирован: Вт янв 26, 2010 21:49:41
Откуда: モスクワ

Re: ШИМ не меняет свою скважность (ATtiny13A)

Сообщение Zwanzig »

А зачем? Это почти всё, что она делает. Принимает команды по I2C и задаёт соответствующую яркость.
Реклама
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15581
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: ШИМ не меняет свою скважность (ATtiny13A)

Сообщение BOB51 »

тогда те же функции можно и на чем по-проще слепить...
например attiny12, pic12f509, pic12f202 (жаль, что atmel из простых и дешевых малолапых только tiny13aоставила) :cry:
Реклама
Аватара пользователя
coredumped
Опытный кот
Сообщения: 838
Зарегистрирован: Вт апр 12, 2011 18:38:19
Откуда: с Земли

Re: ШИМ не меняет свою скважность (ATtiny13A)

Сообщение coredumped »

Человек задал конкретный вопрос. И понеслось г@вно по трубам. Возьмите контроллер попроще. Куда уже проще? И как можно 24 канала шим сделать на 8-ногом МК? Просто слов нет :kill:
Все будет только лучше, в крайнем случае - хуже.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15581
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: ШИМ не меняет свою скважность (ATtiny13A)

Сообщение BOB51 »

:))) :))) :)))
Аватара пользователя
coredumped
Опытный кот
Сообщения: 838
Зарегистрирован: Вт апр 12, 2011 18:38:19
Откуда: с Земли

Re: ШИМ не меняет свою скважность (ATtiny13A)

Сообщение coredumped »

BOB51 писал(а)::))) :))) :)))
Я за мир :beer:
Все будет только лучше, в крайнем случае - хуже.
Аватара пользователя
Zwanzig
Нашел транзистор. Понюхал.
Сообщения: 190
Зарегистрирован: Вт янв 26, 2010 21:49:41
Откуда: モスクワ

Re: ШИМ не меняет свою скважность (ATtiny13A)

Сообщение Zwanzig »

attiny12
Тини12, тини13... сейчас вот боюсь, как бы мне уместить программный I2C в 512 слов :?
Аватара пользователя
coredumped
Опытный кот
Сообщения: 838
Зарегистрирован: Вт апр 12, 2011 18:38:19
Откуда: с Земли

Re: ШИМ не меняет свою скважность (ATtiny13A)

Сообщение coredumped »

Zwanzig писал(а): Тини12, тини13... сейчас вот боюсь, как бы мне уместить программный I2C в 512 слов :?
Ну, можна на тини25 перепрыгнуть, если что :) По лапам подходит и USI на борту. Если мсье захочет еще извращений, то тини45, ...85 :)))
Все будет только лучше, в крайнем случае - хуже.
Аватара пользователя
GP1
Поставщик валерьянки для Кота
Сообщения: 2401
Зарегистрирован: Пт май 23, 2008 19:32:22
Откуда: Россия, Волгоград
Контактная информация:

Re: ШИМ не меняет свою скважность (ATtiny13A)

Сообщение GP1 »

coredumped писал(а): И как можно 24 канала шим сделать на 8-ногом МК? Просто слов нет :kill:
24 не знаю, а вот 20 + кнопки это запросто.
http://radiokot.ru/forum/viewtopic.php?p=284566#p284566
Чем дальше, тем больше становлюсь занудой...
Изображение
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15581
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: ШИМ не меняет свою скважность (ATtiny13A)

Сообщение BOB51 »

речь шла всего лишь о проверенной возможности управления до 24 автономных ШИМ каналов (каждый меняет значение по своему алгоритму, 256 градаций яркости) при быстродействии микроконтроллера 0,000001s/команда как альтернативе аппаратному ШИМу... :)
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15581
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: ШИМ не меняет свою скважность (ATtiny13A)

Сообщение BOB51 »

да, и зачем полный протокол I2C использовать?
можно ведь только байт, соответствующий заданному значению перегнать по простейшему аналогу SPI :shock:
просто посмотреть, как это делается у специализированных драйверов в тех же мобилках к примеру...
Аватара пользователя
Zwanzig
Нашел транзистор. Понюхал.
Сообщения: 190
Зарегистрирован: Вт янв 26, 2010 21:49:41
Откуда: モスクワ

Re: ШИМ не меняет свою скважность (ATtiny13A)

Сообщение Zwanzig »

BOB51 писал(а):речь шла всего лишь о проверенной возможности управления до 24 автономных ШИМ каналов (каждый меняет значение по своему алгоритму, 256 градаций яркости) при быстродействии микроконтроллера 0,000001s/команда как альтернативе аппаратному ШИМу... :)
Ограничено кол-вом регистров?
BOB51 писал(а):зачем полный протокол I2C использовать?
Ну, я не только ему яркость буду передавать. Он мне, в свою очередь, на основной контроллер должен присылать значения АЦП (показания датчиков). +собирался загружать в тини13 "настройки" (ну, типа там выбор опорного напряжения) через I2C. :)
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15581
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: ШИМ не меняет свою скважность (ATtiny13A)

Сообщение BOB51 »

ограничение по быстродействию 0,000001s/команда at89c51/2051 при кварце 12мГц
программа обслуживания "дисплея" работает в "фоновом режиме"...
по второй позиции сложнее - если I2C - программа сложнее, зато вроде 2 лапки, SPI - программа проще, но 3 вывода сожрет, а у тиньки их всего-то 5 (если нет высоковольтного программатора reset лучше не трогать!)
Аватара пользователя
coredumped
Опытный кот
Сообщения: 838
Зарегистрирован: Вт апр 12, 2011 18:38:19
Откуда: с Земли

Re: ШИМ не меняет свою скважность (ATtiny13A)

Сообщение coredumped »

Обсуждение плавно утекает от темы...
BOB51 писал(а):ограничение по быстродействию 0,000001s/команда at89c51/2051 при кварце 12мГц
Мастер старой школы - сразу видно :) (я в хорошем смысле :beer: ) Я долго под 51 платформу девайсы разрабатывал, потом, лет 5-6 назад, "пересел" на AVR, сейчас, из 8-разрядников - тока AVR. Какой компайлер используете? Я в свое время компили Франклином.
Все будет только лучше, в крайнем случае - хуже.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15581
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: ШИМ не меняет свою скважность (ATtiny13A)

Сообщение BOB51 »

ну во-первых я свободно работаю со всеми тремя семействами MCS51-AVR-PIC(12/16серии) на уровне ассемблера и собственной схемотехники
ассемблер-компилятор для MCS51 рекомендую от АТМЕЛ - самый лояльный и бесплатный
а если по теме - советую обратить внимание на PIC16F688 если есть необходимость в аппаратных ШИМ , usart, АЦП и прочем удовольстви при всего 14 лапках
(к сожалению этот "зверь" у меня пока в стадии изучения на проработке)
Аватара пользователя
coredumped
Опытный кот
Сообщения: 838
Зарегистрирован: Вт апр 12, 2011 18:38:19
Откуда: с Земли

Re: ШИМ не меняет свою скважность (ATtiny13A)

Сообщение coredumped »

BOB51 писал(а): а если по теме - советую обратить внимание на PIC16F688 если есть необходимость в аппаратных ШИМ ,
Спасиба, но откажусь. У меня "зверинец" и без того не маленький (ARM, FMC-16, AVR + еще CPLD/FPGA Altera), на PIC нет ни времени, ни сил :)
Все будет только лучше, в крайнем случае - хуже.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15581
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: ШИМ не меняет свою скважность (ATtiny13A)

Сообщение BOB51 »

:cry: ... не дочитал... у pic16f688 аппаратного ШИМа нету... досада...
они его в 16f684 воткнули, а тут (16f688) только usart вместо него, да еще аналогия LPM от avrок :beer:
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»