Как в Bascom-е включить ШИМы в противофазе?

Программирование микроконтроллеров AVR, PIC, ARM.
Разработка и изготовление печатных плат для модулей.

Как в Bascom-е включить ШИМы в противофазе?

Сообщение EdGull » 09 ноя 2008, 10:28

Хочу попробывать подключить УЗ-излучатель MA40S4S или MA40B8S прямо на ноги ШИМов меги88 в противофазе.
1. как сконфигурировать ШИМы OC1A и ОС1В в противофазе на 40кГц?
2. ноги меги понянут такую нагрузку?
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Re: Как в Bascom-е включить ШИМы в противофазе?

Сообщение avr123.nm.ru » 09 ноя 2008, 11:25

EdGull писал(а):Хочу попробывать подключить УЗ-излучатель MA40S4S или MA40B8S


даташит
http://www.alldatasheet.co.kr/datasheet ... 40S4S.html

Емкость большая у них - я бы через резистор 130 Ом включил.

EdGull писал(а): прямо на ноги ШИМов меги88 в противофазе.
1. как сконфигурировать ШИМы OC1A и ОС1В в противофазе на 40кГц?



вот так примерно - но частоту надо выставить в зависимости от кварца.


Изображение

// Port B initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=Out Func1=Out Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=0 State1=0 State0=T
PORTB=0x00;
DDRB=0x06;

// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: 3686,400 kHz

Это кварц по умолчанию был в мастере кода, для частоты 40 КГц при данных настройках нужен кварц 10240 КГц, так как тебе меандр нужен то можно ШИМ делать и менее 8 бит.

// Mode: Fast PWM top=00FFh (ШИМ 8 бит)
// OC1A output: Non-Inv.
// OC1B output: Inverted
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer 1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0xB1;
TCCR1B=0x09;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x10; (величина ШИМ 100% * OCR1AL / 255)
OCR1BH=0x00;
OCR1BL=0x10; (величина ШИМ 100% * OCR1BL / 255)

EdGull писал(а):2. ноги меги понянут такую нагрузку?

20 мА норма, 40 макс. думаю до 30 мА норамльно будут работать.

Программирование ШИМ в AVR - http://avr123.nm.ru/z8.htm
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва

Re: Как в Bascom-е включить ШИМы в противофазе?

Сообщение steel_monkey » 09 ноя 2008, 11:57

Дык, там же есть настройка выходов ОС1В и ОС1А на переключение при каждом сравнении (toggle output at...). Тогда выставляете в начале одному из выходов просто другое состояние, и он будет переключаться в противофазе. Я использовал вообще режим сравнения, а не ШИМ- проще.
Кстати, таком способе на излучателе постоянное напряжение все время между импульсами. В даташитах у мураты ниписано, что не подключать к постоянке. Я у своего ухудшений не заметил, но и не присматривался особо.

К ногам меги и без резисторов подключал (B8S) и скопом смотрел - меандр нормальный, колебания на вершинах импульсов ( как в ФВЧ) не особо большие.
Аватара пользователя
steel_monkey
 
Сообщения: 346
Зарегистрирован: 14 июл 2007, 23:38
Откуда: SPb
прог. языки: немного албанский


Вернуться в Микроконтроллеры

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

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