реклама на сайте
подробности

 
 
> Генератор, меандры, точность, опрос...и т.д., непонятно с ходом программы...
MakFatum
сообщение Mar 24 2006, 16:19
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 54
Регистрация: 7-12-05
Пользователь №: 11 912



Здравствуйте!...

приведу кусочек и спрошу потом

Все инициализировал...
дальше сам кучочек программы:

Код
if (!PIND.1) {              //PD0  420Hz
  do {    
       OCR2=0x94;  
         }
  while ((PIND>>1)&0);

                     };


Ну так всё и повторяется дальше для различных частот.
Вопрос 1. Всю программу с вышеприведенным куском эмулировал в протеусе (принтскрин ниже)
Дословно код переводится ведь так???: если на PIND.1 НЛУ, то заносить в регистр сравнения OCR2 число соответствующее частоте до тех пор пока выполняется условие (есть НЛУ на PIND.1 ).
В протеусе почему-то еще не успев нажать кнопку уже выдается частота 420 (хотя следуя программе она должна появиться только при нажатии И удержании кнопки (т.е. НЛУ) на пине), а при отпускании пропасть (этого тоже кстати не происходит). Т.е. ситуация такая: вместо кнопок должны быть переключатели, и пока есть НЛУ - есть соответствующая частота, а когда нет НЛУ - ничего нет.
А у меня просто при кратковременном нажатии она появляется и так не пропадает при отпускании. Где собака...?
Вопрос 2. Дискретность установки частоты у 8-разрядного таймера оставляет желать лучшего даже при 1/8 кдел., т.е. получается допустим 420+-2Гц (иногда и больше) (многовато, нужно хотя бы +- 1Гц). Формула нахождения частоты : fOCn=fclk_/2*N(1+OCRn) почему-то не работает, нахожу не по ней...Как улучшить показатели? 16-разрядный для модулирующих у меня...
Вопрос 3. Самое интересное и самое непонятное пока для меня: Как мне вывести программно в какой-нибудь пин порта модуляцию 2-х частот (то бишь перемножить) логическое "И"???
В лоб не получается... Теории об этом не нашел...



Сообщение отредактировал MakFatum - Mar 24 2006, 16:24
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
WHALE
сообщение Apr 2 2006, 09:58
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 902
Регистрация: 2-01-06
Из: Краснодар
Пользователь №: 12 768



У тебя-же эти выходы натроены на выход,соответственно чтение пинов некорректно.Самый простой вы-
ход-если есть незадействованные порты,настрой их на чтение и заведи свои выходы в парралеь и на
них.


--------------------
"Hello, word!" - 17 errors 56 warnings
Go to the top of the page
 
+Quote Post
MakFatum
сообщение Apr 2 2006, 11:03
Сообщение #3


Участник
*

Группа: Новичок
Сообщений: 54
Регистрация: 7-12-05
Пользователь №: 11 912



Цитата(WHALE @ Apr 2 2006, 15:58) *
У тебя-же эти выходы натроены на выход,соответственно чтение пинов некорректно.Самый простой вы-
ход-если есть незадействованные порты,настрой их на чтение и заведи свои выходы в парралеь и на
них.

Подождите,...а что если в DDRx "1",т.е. на выход, и в PORTx динамически выводить то "0", то один "1", PINx на эти изменения не будет реагировать?,т.е. PINx читаем только тогда, когда DDRx установлен на чтение?...
вот это значит упущение мое..., про это не читал нигде...

Сообщение отредактировал MakFatum - Apr 2 2006, 11:05
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- MakFatum   Генератор, меандры, точность, опрос...и т.д.   Mar 24 2006, 16:19
- - vet   1) Будучи единожды настроен, таймер будет работать...   Mar 24 2006, 19:24
- - MakFatum   Насчет прерываний - спасибо, попробую... Вообщем ч...   Mar 26 2006, 12:27
- - WHALE   обьедини свои кнопки через диоды и заведи на вход ...   Mar 26 2006, 16:11
- - MakFatum   Насчет умножения частот-модуляции попробовал в про...   Mar 26 2006, 16:29
- - WHALE   не понял,чем тебя прерывание по нажатию не устроив...   Mar 26 2006, 16:48
- - MakFatum   Спасибо за помощь!... Опрос портов делаю по пе...   Mar 27 2006, 15:09
- - MakFatum   Может где в синтаксисе ошибка?... пробовал после р...   Mar 28 2006, 08:17
- - MakFatum   собрал значит, ключи зацепил, частоты генерит, но ...   Apr 1 2006, 16:51
|- - defunct   Цитата(MakFatum @ Apr 1 2006, 18:51) собр...   Apr 1 2006, 23:49
- - MakFatum   Нашел ошибку... по невнимательности порта А (на ко...   Apr 2 2006, 09:33
- - MakFatum   а протеусе почему все тогда путем?... или лучше ем...   Apr 2 2006, 10:08
- - WHALE   А 100% полагаться ни на какой симулятор нельзя Пр...   Apr 2 2006, 10:59


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 22:31
Рейтинг@Mail.ru


Страница сгенерированна за 0.01403 секунд с 7
ELECTRONIX ©2004-2016