Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
29.11.2007, 17:31
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Сообщение от retcom
|
Мой адрес: ...
|
На днях напишу...
Программы твоей я не понял, причем, сразу по нескольким пунктам:
1. как ты планировал увеличивать длительность вижу, а вот, как уменьшать? (Кстати, в Сях вместо "impulse=impulse+10;" принято писать "impulse+=10;")
2. как ты думаешь, сколько раз программа успеет выполнить основной цикл (while(1)), со всеми его "+=10", за то время, пока ты успеешь отпустить кнопку?
3. что означает такая конструкция - "if(impulse==0xFA) impulse=0xFA;"? Может, ты собирался так сбрасывать длительность в ноль? Ну, тогда так - "if(impulse›=0xFA) impulse=0;", или вообще никак - оно само через 255 в ноль сбросится...
Судя по константам инициализации, у тебя частота должна быть где-то раз в шесть ниже - ты пробовал в железе-то?
|
|
|
|
29.11.2007, 17:42
|
|
Вид на жительство
Регистрация: 27.07.2006
Сообщений: 308
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
0
|
|
|
|
29.11.2007, 18:43
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Сообщение от retcom
|
Значение меняется только если я нажал и отпустил кнопку.
|
Да, это я поторопился, мне казалось, что там две кнопки имеются ввиду (по одной q работает, по другой - w), а там одна, но в разные стороны.
|
|
|
|
30.11.2007, 12:03
|
|
Вид на жительство
Регистрация: 27.07.2006
Сообщений: 308
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Цитата:
|
Судя по константам инициализации, у тебя частота должна быть где-то раз в шесть ниже - ты пробовал в железе-то?
|
Частота держится 32 Гц. и хоть тресни, в TCNT0 не получается выставить нужную частоту.
Я не понимаю, чтоб нужную частоту ШИМ выставить, что нужно сделать? Это как то по другому делается?
Не с помощью TCCR0B и TCNT0?
Нужная частота только кварцем устанавливается, это так?
Допустим выставил я фьюзами подключение кварца, дольше что нужно сделать?
|
|
|
|
30.11.2007, 14:23
|
|
Вид на жительство
Регистрация: 27.07.2006
Сообщений: 308
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Мне посоветовали использовать ШИМ с СТС.
Делаю:
Код:
|
//Clock frequency : 1,000000 MHz
DDRD=0x40;
TCCR0A=0x42;
TCCR0B=0x05;
TCNT0=0xB8;
OCR0A=0x50;
OCR0B=0x00; |
Получилось! )) 50 Гц! )) Только как теперь скважность регулировать?
|
|
|
|
30.11.2007, 15:57
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Сообщение от retcom
|
Мне посоветовали использовать ШИМ с СТС.
Только как теперь скважность регулировать?
|
А никак - тот, кто тебе посоветовал "ШИМ с СТС" видимо не знал, что тебе нужно её регулировать. Насколько я помню, в этом режиме скважность всегда fifty-fifty.
|
|
|
|
30.11.2007, 16:16
|
|
Вид на жительство
Регистрация: 27.07.2006
Сообщений: 308
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Цитата:
|
А никак - тот, кто тебе посоветовал "ШИМ с СТС" видимо не знал, что тебе нужно её регулировать. Насколько я помню, в этом режиме скважность всегда fifty-fifty.
|
Я уже проверил. Ага. Только 50/50.
Может это вообще невозможно?
Или мне надо ставить кварц такой, чтоб поделив его на 1024, 256, 64, 8, получилось 50? Потому что как я понял экспериментально, в ШИМ работает только пределитель. Больше никаким другим способом поделить частоту невозможно.
Я УДИВЛЯЮСЬ, ГОСПОДА, ЧТО ВЫ С ВАШИМ ОПЫТОМ, ЭТОГО НЕ ЗНАЕТЕ!
|
|
|
|
30.11.2007, 16:17
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
|
Сообщение от retcom
|
Я УДИВЛЯЮСЬ, ГОСПОДА, ЧТО ВЫ С ВАШИМ ОПЫТОМ, ЭТОГО НЕ ЗНАЕТЕ!
|
И еще не верят тому что в курсе написано !
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
|
|
|
|
30.11.2007, 16:38
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Сообщение от retcom
|
Ага. Только 50/50.
Может это вообще невозможно?
|
Вообще это возможно, и, как я тебе сказал уже, на днях вышлю результат (сейчас некогда). Ты, главное, не суетись. Фузов там шить не придется, что бы ни говорили иные советчики, кварц тоже не понадобится, так что лишней суеты для тебя не будет. Ограничением твоей задачки являются два обстоятельства - необходимость получать симметричный выход и минимально-необходимое разрешение ШИМа, о котором, кстати, ты еще ни разу не говорил (а мы не спрашивали). Так или иначе эти ограничения можно обойти, как именно, будет ясно, когда у меня будет время прикинуть. А ты лучше пока скажи - если полный размах изменения скважности будет делиться не на 256, а скажем на 160 шагов, это тебя устроит?
Сообщение от retcom
|
...как я понял ..., в ШИМ работает только пределитель. ... никаким другим способом поделить частоту невозможно.
|
Это не так - в разных режимах работы ШИМа разные возможности. В общем случае, они аналогичны возможностям счетчика/таймера, хотя, в некоторых режимах - возможности уже.
|
|
|
|
30.11.2007, 16:45
|
|
Вид на жительство
Регистрация: 27.07.2006
Сообщений: 308
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Похоже одни профессора собрались! Попе_деть.
Ни одного практика!
До всего приходится самому допетривать
P.S. И другие непечатные слова
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
CVAVR while и таймер
|
kr11507 |
Микроконтроллеры, АЦП, память и т.д |
10 |
13.12.2008 21:29 |
Таймер на 5 часов
|
alecsandr27 |
Автоматика и аппаратура связи |
6 |
11.10.2008 20:25 |
Часы - таймер
|
s5s5 |
Микроконтроллеры, АЦП, память и т.д |
5 |
16.05.2008 11:36 |
Таймер
|
Serq |
Автоматика и аппаратура связи |
18 |
27.11.2007 18:32 |
Таймер
|
dem9968 |
Делимся опытом |
1 |
03.02.2005 09:03 |
Часовой пояс GMT +4, время: 01:46.
|
|