Страница 1 из 7

Падение частоты генератора

Добавлено: 20.02.2016{, 12:36}
dee-vize
Прошу помощи!При подключении LCD дисплея по шине i2c к ардуино про мини 328 сильно падает частота генератора.Генератор просто генерирует импульсы на выход d13.Частота генератора не превышает 15Гц,а должна быть гораздо выше.При удалении дисплея из скетча частота резко возрастает.

Падение частоты генератора

Добавлено: 20.02.2016{, 12:57}
Airis
Данная проблема уже обсуждалась - Arduino тратит много ресурсов для работы с дисплей по шине I2C. Там где критически важна точность и скорость работы генератора, надо использовать дисплей, который к Arduino подключается напрямую.

Падение частоты генератора

Добавлено: 20.02.2016{, 13:09}
dee-vize
Всё ясно,спасибо,попробую подключить дисплей напрямую

Падение частоты генератора

Добавлено: 17.06.2016{, 19:49}
VadKol
dee-vize,  Скажите помогло прямое подключение или нет .Таже проблема даже при прямом подключении

Падение частоты генератора

Добавлено: 18.06.2016{, 04:19}
DerAlex
Частота генератора зависит от объема программы.Более длинная программа выполняется медленнее и все временные параметры в таймерах , генераторах не могут быть меньше  цикла программы.

Добавлено (18.06.2016, 04:19)
---------------------------------------------
Выход - в применении генератора на прерываниях. Такой генератор работает независимо от цикла программы.

Падение частоты генератора

Добавлено: 18.06.2016{, 04:25}
DerAlex
Выкладываю блок пользователя с таким генератором

Падение частоты генератора

Добавлено: 18.06.2016{, 04:28}
DerAlex
Вот еще для МЕГИ.

Добавлено (18.06.2016, 04:27)
---------------------------------------------
Различаются только выходами.

Добавлено (18.06.2016, 04:28)
---------------------------------------------
Для МЕГИ -D11 , для НАНО - D9. Вроде так .

Падение частоты генератора

Добавлено: 18.06.2016{, 04:38}
DerAlex
Вот схема устройства .

Падение частоты генератора

Добавлено: 18.06.2016{, 04:39}
DerAlex
Вот используемый блок энкодера.

Падение частоты генератора

Добавлено: 18.06.2016{, 04:47}
DerAlex
Совсем забыл .Не выложил саму  программу .

Падение частоты генератора

Добавлено: 18.06.2016{, 16:25}
ВиД
DerAlex писал(а):Выкладываю блок пользователя с таким генератором
Какая максимальная частота?

Падение частоты генератора

Добавлено: 19.06.2016{, 05:17}
DerAlex
Мне выше 10 килогерц не требовалось, не проверял.

Добавлено (19.06.2016, 05:09)
---------------------------------------------
Так как используется в этом блоке делитель частоты на более высокой частоте точность установки падает.

Добавлено (19.06.2016, 05:17)
---------------------------------------------
Смотрите тему  (Генератор с использованием скоростного счетчика). Блок генератора выложил Костик.  Я использовал этот блок в своих разработках.

Падение частоты генератора

Добавлено: 19.06.2016{, 05:32}
DerAlex
Максимальную частоту можно просто проверить.Нужно изменять переменную ЧАСТОТА и контролировать выход с помощью частотомера.

Добавлено (19.06.2016, 05:32)
---------------------------------------------
Частота устанавливается в Герцах.

Падение частоты генератора

Добавлено: 19.06.2016{, 13:25}
ВиД
DerAlex писал(а):Нужно изменять переменную ЧАСТОТА и контролировать выход с помощью частотомера.
DerAlex, на какой пин подключать частотомер, вижу только интерфейс дисплея...
И блок =GEN=  не расписан.

Падение частоты генератора

Добавлено: 19.06.2016{, 14:11}
DerAlex
Вы не внимательны.Я сразу указал на выходы.Сообщение 7. 
D9 в Нано, D11 в Меге.

Добавлено (19.06.2016, 13:58)
---------------------------------------------
Кроме того на  электрической схеме явно указан D9

Добавлено (19.06.2016, 14:11)
---------------------------------------------
На самом дел программу можно упростить максимально.Оставить только блок генератора.На входе указываем нужную частоту. С выхода D9 снимаем частоту.Все.

Падение частоты генератора

Добавлено: 20.06.2016{, 11:00}
ВиД
DerAlex писал(а):Вы не внимательны.Я сразу указал на выходы.Сообщение 7. D9 в Нано, D11 в Меге.
В сообщениях 6 и 7 только блоки пользователя. В общем проекте (сообщение 13) они вообще не указаны, а стоит блок =GEN=...

Падение частоты генератора

Добавлено: 20.06.2016{, 12:44}
DerAlex
Ну и что не понятного, для Меги используйте блок для МЕГИ, выход D11.
Для Нано - блок для Нано , выход D9.
Вы меня удивляете.Замените блоки пользователей на нужные вам .

Добавлено (20.06.2016, 12:44)
---------------------------------------------
Можно просто взять создать новый проект.Вставить необходимый блок генератора.На входе указать частоту в Герцах и с D9 если Нано снимать прямоугольные колебания с частотой указанной на входе блока.Если используется МЕГА , то тоже самое только с блоком от МЕГИ .Выход D11.

Падение частоты генератора

Добавлено: 20.06.2016{, 15:42}
VadKol
DerAlex, Большое спасибо за участие Но изначально проект задумывался как генератор с изменяемой частотой и скважностю.
Выводом на результатов на дисплей. В прикрепленном файле схема на дискретных элементах.Может что подскажите.

Падение частоты генератора

Добавлено: 21.06.2016{, 09:57}
DerAlex
Понял.К сожалению этот блок позволяет менять только частоту.Скважность постоянная  и равна двум, то есть импульс и пауза одинаковы.

Добавлено (20.06.2016, 15:56)
---------------------------------------------
Не я автор этого блока.

Добавлено (20.06.2016, 16:00)
---------------------------------------------
Я пытался создать генератор с использованием скоростного счетчика.Открыл одноименную тему и товарищи помогли .Прислали готовый блок.

Добавлено (20.06.2016, 16:07)
---------------------------------------------
Вот в теме =НАСТРОЙКА ЧАСТОТЫ ШИМ= нашел :

Для UNO и уноподобных с кварцом 16МГц.
имеются три "железных" таймера, завязанных на определенные выводы ШИМ, некоторые коррекции могут повлиять на функции - допустим ИК передатчик перестанет работать если изменить стандартную частоту на портах
 11 и 3....

Частота ШИМ'а на ногах 5 и 6:
Константа Делитель Частота(Гц)
0x01              1            62500
0x02              8            7812.5
0x03              64          976.5625
0x04              256        244.140625
0x05             1024       61.03515625

В Setup пишем строчку:
TCCR0B = TCCR0B & 0b11111000 | <Константа>;

Частота ШИМ'а на ногах 9 и 10:
Константа Делитель Частота(Гц)
0x01              1            31250
0x02              8            3906.25
0x03              64          488.28125
0x04             256         122.0703125
0x05            1024        30.517578125

В Setup пишем строчку:
TCCR1B = TCCR1B & 0b11111000 | <Константа>;

Частота ШИМ'а на ногах 11 и 3:
Константа Делитель Частота(Гц)
0x01              1            31250
0x02              8            3906.25
0x03              32          976.5625
0x04              64          488.28125
0x05             128         244.140625
0x06             256         122.0703125
0x07            1024        30.517578125

В Setup пишем строчку:
TCCR2B = TCCR2B & 0b11111000 | <Константа>;

ПРИМЕР:
получим частоту ШИМ'а на 9, 10, 11 и 3 ногах около 4кГц путем добавления в секцию инциализации двух строк:

void setup()
{
TCCR1B = TCCR1B & 0b11111000 | 0x02;
TCCR2B = TCCR2B & 0b11111000 | 0x02;
...  - следующие строки скетча секции инициализации
...  - следующие строки скетча секции инициализации

P. S.: у МЕГИ таймеров больше...смотри мануал...

Добавлено (20.06.2016, 16:16)
---------------------------------------------
Как я понимаю возможно или  менять частоту при неизменной скважности или менять скважность и выбирать какую то рабочую частоту.Не очень разбираюсь
каким образом возможно обращаться напрямую к регистрам Arduino.
Возможно есть более подготовленные товарищи и они смогут помочь разобраться.

Добавлено (21.06.2016, 09:57)
---------------------------------------------
Можно попробовать сделать генератор с использованием внешних элементов.Внешний будет RS триггер.Внутри будут использованы: 1) блок генератора , 2 блок скоростного счетчика в режиме линии задержки.Для блока генератора будет задействован выход D9, для блока скоростного счетчика - вход D2 , выход D3.Выход D9 соединяем с D2 . На выходе D3 получаем импульс . задержанный относительно D9.Далее импульс с D9 подаем на вход  S внешнего триггера. А с выхода D3 подаем на вход R внешнего триггера.Для управления нужно будет два переменных резистора.Один регулирует частоту, другой задержку импульса и в итоге скважность .

Падение частоты генератора

Добавлено: 21.06.2016{, 10:23}
DerAlex
Вот схема соединений.