Буратино
Apr 23 2009, 08:18
Mega168, 7,3728MHz кварц, IAR
Попробовал сделать так:
запрограммировал таймер1 и с определенной частотой, внутри обработчика прерывания переполнения таймера, инвертировал состояние пина порта ввода вывода. Но, так, как на ножке порта нужно получить около ~80kHz, то в прерывание нужно входить с частотой 160kHz. Остальной функционал контроллера не успевает выполнять свои функции. (или точнее не совсем верно многое делает)
Как правильно сконфигурировать ( и возможно ли это) проц, чтоб частоту получать чисто аппаратно, с минимальным участием проца?
Буратино
Apr 23 2009, 09:20
Цитата(SysRq @ Apr 23 2009, 12:55)

По ссылке, автор топика, как раз и делал как я. Он просто внутри прерывания инвертил ножку.
А Вы, только лишь намекнули на некий режим, в котором прерывания не нужны, шим не нужен, и типа таймер1 буит сам дергать ножкой OC1х
Я даже и не сомневаюсь что это возможно. Но нужно знать как это сдеать!

Давайте кусочек кода пожалуй. Будем разбирать
Теория: кусок даташита (на русском) по теме:
http://www.gaw.ru/html.cgi/txt/doc/micros/...arh128/16_1.htmПрактика: автор той темы исходник выложил в последнем сообщении. Прерывание не используется. Из него можно посмотреть что пишется в регистры управления таймером, чтобы получить искомое.
Разбирайтесь, самому интереснее :)
_Pasha
Apr 23 2009, 09:36
Цитата(Буратино @ Apr 23 2009, 11:18)

Как правильно сконфигурировать ( и возможно ли это) проц, чтоб частоту получать чисто аппаратно, с минимальным участием проца?
Почитать доку на проц особенно про CTC mode
Буратино
Apr 23 2009, 09:55
А что если я машину времени делаю!? Каждая секунда дорога..

Лан. если не знаете, разберусь сам. Потом здесь изложу.
Цитата(Буратино @ Apr 23 2009, 12:55)

Лан. если не знаете, разберусь сам. Потом здесь изложу.
Чего излогать то? Нужно настроить таймер в СТС mode с выходом на ногу ОС. Вам что, привести информацию в какой регистр таймера какие значения занести? Самому лень в доку заглянуть? Если бы у Вас не получалось завести таймер в нужном режиме и Вы бы привели свою функцию инициализации таймера, вот тогда бы Вам подсказали: где Вы положили не то значение в регистр и какое значение нужно...
Буратино
Apr 23 2009, 12:02
Цитата(Палыч @ Apr 23 2009, 15:23)

Чего излогать то? Нужно настроить таймер в СТС mode с выходом на ногу ОС. Вам что, привести информацию в какой регистр таймера какие значения занести? Самому лень в доку заглянуть? Если бы у Вас не получалось завести таймер в нужном режиме и Вы бы привели свою функцию инициализации таймера, вот тогда бы Вам подсказали: где Вы положили не то значение в регистр и какое значение нужно...
Все, уже разобрался сам. Более того, уже успел спалить два транзистора по баксу и ir2184. Спасибо вам огромное, помогли...
stells
Apr 23 2009, 12:10
Цитата(Буратино @ Apr 23 2009, 16:02)

Спасибо вам огромное, помогли...
что-то я пропустил то место, где Вам для получения меандра посоветовали подключить транзисторы
_Pasha
Apr 23 2009, 12:19
Цитата(Буратино @ Apr 23 2009, 15:02)

Спасибо вам огромное, помогли...
Так Вы б чартер организовали на Вашей машине времени - помогли б. Из будущего, в котором она работает, в настоящее...
По теме спаленных транзисторов - заглядывайте в силовую ветку. Имхо, разговор будет долгий.