Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
19.11.2007, 10:16
|
|
Вид на жительство
Регистрация: 27.07.2006
Сообщений: 308
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Глюки AVR123
Вот недавно, как раньше не замечал, не понимаю, обнаружил глюк в моЁм самом любимом курсе по IT теме (без шуток).
Задача - упражнение 8
тема: PWM ШИМ
Цитата:
|
Вот простой пример на Си как вывести 10 битный ШИМ на ножку PD5 микроконтроллера ATmega16 для компилятора CodeVisionAVR:
DDRD=0x20; // 00100000 PD5(OC1A)-PWM Timer1 OUT
// ножку PD5 назначить выходом
// Настройка TIMER1 для генерации ШИМ
//TIMER1 initialize
//prescale:1 clock 7.37 MHz
// WGM: 7) PWM 10bit fast, TOP=0x03FF
// actual value: 7200,000Hz (100,0%)
// последнее - это частота ШИМ сигнала
TCCR1B = 0x00; //stop Timer
TCNT1H = 0xFC; // 11111100
TCNT1L = 0x01; // 00000001
/* значение в 16 битном регистре OCR1A определяет величину генерируемого ШИМ сигнала на ножке PD5 - если поделить ее на 10.23 то получим PWM в процентах*/
OCR1AH = 0x03; // PWM(PD5) = OCR1A / 10.23
OCR1AL = 0xFF; // 0x03FF это число 1023
/* регистр OCR1A состоит из двух 8-ми битных регистров OCR1AH и OCR1AL запись в них нужно проводить в указанной последовательности! */
OCR1BH = 0x03;
OCR1BL = 0xFF;
ICR1H = 0x03;
ICR1L = 0xFF;
TCCR1A = 0x83; // 10000011
TCCR1B = 0x09; // 00001001 - start Timer
// Теперь ШИМ 100% - т.е. на ножке PD1 лог. "1"
|
Вроде вывоили шим на 5 - ую ногу. А получилось как всегда, на 1 - ую
|
|
|
|
19.11.2007, 13:17
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
|
Люблю внимательных читателей !
Но версия у вас старая. Какого возраста архив?
А в начале курса написано - читайте он-лайн - так свежее !
http://www.avr123.nm.ru/z8.htm
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
|
|
|
|
19.11.2007, 14:27
|
|
Вид на жительство
Регистрация: 27.07.2006
Сообщений: 308
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Извиняюсь, если дважды осудил за одно и то же преступление.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 07:44.
|
|