Падение частоты генератора
-
- Рядовой
- Сообщения: 34
- Зарегистрирован: 10 сен 2015, 12:13
- Откуда: Москва
- Контактная информация:
Падение частоты генератора
Прошу помощи!При подключении LCD дисплея по шине i2c к ардуино про мини 328 сильно падает частота генератора.Генератор просто генерирует импульсы на выход d13.Частота генератора не превышает 15Гц,а должна быть гораздо выше.При удалении дисплея из скетча частота резко возрастает.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Падение частоты генератора
Данная проблема уже обсуждалась - Arduino тратит много ресурсов для работы с дисплей по шине I2C. Там где критически важна точность и скорость работы генератора, надо использовать дисплей, который к Arduino подключается напрямую.
Последний раз редактировалось Airis 20 фев 2016, 12:58, всего редактировалось 1 раз.
Падение частоты генератора
dee-vize, Скажите помогло прямое подключение или нет .Таже проблема даже при прямом подключении
У вас нет необходимых прав для просмотра вложений в этом сообщении.
VadKol
Падение частоты генератора
Частота генератора зависит от объема программы.Более длинная программа выполняется медленнее и все временные параметры в таймерах , генераторах не могут быть меньше цикла программы.
Добавлено (18.06.2016, 04:19)
---------------------------------------------
Выход - в применении генератора на прерываниях. Такой генератор работает независимо от цикла программы.
Добавлено (18.06.2016, 04:19)
---------------------------------------------
Выход - в применении генератора на прерываниях. Такой генератор работает независимо от цикла программы.
аврора
Падение частоты генератора
Выкладываю блок пользователя с таким генератором
У вас нет необходимых прав для просмотра вложений в этом сообщении.
аврора
Падение частоты генератора
Вот еще для МЕГИ.
Добавлено (18.06.2016, 04:27)
---------------------------------------------
Различаются только выходами.
Добавлено (18.06.2016, 04:28)
---------------------------------------------
Для МЕГИ -D11 , для НАНО - D9. Вроде так .
Добавлено (18.06.2016, 04:27)
---------------------------------------------
Различаются только выходами.
Добавлено (18.06.2016, 04:28)
---------------------------------------------
Для МЕГИ -D11 , для НАНО - D9. Вроде так .
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось DerAlex 18 июн 2016, 04:49, всего редактировалось 1 раз.
аврора
Падение частоты генератора
Вот схема устройства .
У вас нет необходимых прав для просмотра вложений в этом сообщении.
аврора
Падение частоты генератора
Вот используемый блок энкодера.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
аврора
Падение частоты генератора
Совсем забыл .Не выложил саму программу .
У вас нет необходимых прав для просмотра вложений в этом сообщении.
аврора
Падение частоты генератора
Какая максимальная частота?DerAlex писал(а):Выкладываю блок пользователя с таким генератором
Падение частоты генератора
Мне выше 10 килогерц не требовалось, не проверял.
Добавлено (19.06.2016, 05:09)
---------------------------------------------
Так как используется в этом блоке делитель частоты на более высокой частоте точность установки падает.
Добавлено (19.06.2016, 05:17)
---------------------------------------------
Смотрите тему (Генератор с использованием скоростного счетчика). Блок генератора выложил Костик. Я использовал этот блок в своих разработках.
Добавлено (19.06.2016, 05:09)
---------------------------------------------
Так как используется в этом блоке делитель частоты на более высокой частоте точность установки падает.
Добавлено (19.06.2016, 05:17)
---------------------------------------------
Смотрите тему (Генератор с использованием скоростного счетчика). Блок генератора выложил Костик. Я использовал этот блок в своих разработках.
аврора
Падение частоты генератора
Максимальную частоту можно просто проверить.Нужно изменять переменную ЧАСТОТА и контролировать выход с помощью частотомера.
Добавлено (19.06.2016, 05:32)
---------------------------------------------
Частота устанавливается в Герцах.
Добавлено (19.06.2016, 05:32)
---------------------------------------------
Частота устанавливается в Герцах.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
аврора
Падение частоты генератора
DerAlex, на какой пин подключать частотомер, вижу только интерфейс дисплея...DerAlex писал(а):Нужно изменять переменную ЧАСТОТА и контролировать выход с помощью частотомера.
И блок =GEN= не расписан.
Падение частоты генератора
Вы не внимательны.Я сразу указал на выходы.Сообщение 7.
D9 в Нано, D11 в Меге.
Добавлено (19.06.2016, 13:58)
---------------------------------------------
Кроме того на электрической схеме явно указан D9
Добавлено (19.06.2016, 14:11)
---------------------------------------------
На самом дел программу можно упростить максимально.Оставить только блок генератора.На входе указываем нужную частоту. С выхода D9 снимаем частоту.Все.
D9 в Нано, D11 в Меге.
Добавлено (19.06.2016, 13:58)
---------------------------------------------
Кроме того на электрической схеме явно указан D9
Добавлено (19.06.2016, 14:11)
---------------------------------------------
На самом дел программу можно упростить максимально.Оставить только блок генератора.На входе указываем нужную частоту. С выхода D9 снимаем частоту.Все.
аврора
Падение частоты генератора
В сообщениях 6 и 7 только блоки пользователя. В общем проекте (сообщение 13) они вообще не указаны, а стоит блок =GEN=...DerAlex писал(а):Вы не внимательны.Я сразу указал на выходы.Сообщение 7. D9 в Нано, D11 в Меге.
Падение частоты генератора
Ну и что не понятного, для Меги используйте блок для МЕГИ, выход D11.
Для Нано - блок для Нано , выход D9.
Вы меня удивляете.Замените блоки пользователей на нужные вам .
Добавлено (20.06.2016, 12:44)
---------------------------------------------
Можно просто взять создать новый проект.Вставить необходимый блок генератора.На входе указать частоту в Герцах и с D9 если Нано снимать прямоугольные колебания с частотой указанной на входе блока.Если используется МЕГА , то тоже самое только с блоком от МЕГИ .Выход D11.
Для Нано - блок для Нано , выход D9.
Вы меня удивляете.Замените блоки пользователей на нужные вам .
Добавлено (20.06.2016, 12:44)
---------------------------------------------
Можно просто взять создать новый проект.Вставить необходимый блок генератора.На входе указать частоту в Герцах и с D9 если Нано снимать прямоугольные колебания с частотой указанной на входе блока.Если используется МЕГА , то тоже самое только с блоком от МЕГИ .Выход D11.
аврора
Падение частоты генератора
DerAlex, Большое спасибо за участие Но изначально проект задумывался как генератор с изменяемой частотой и скважностю.
Выводом на результатов на дисплей. В прикрепленном файле схема на дискретных элементах.Может что подскажите.
Выводом на результатов на дисплей. В прикрепленном файле схема на дискретных элементах.Может что подскажите.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
VadKol
Падение частоты генератора
Понял.К сожалению этот блок позволяет менять только частоту.Скважность постоянная и равна двум, то есть импульс и пауза одинаковы.
Добавлено (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 внешнего триггера.Для управления нужно будет два переменных резистора.Один регулирует частоту, другой задержку импульса и в итоге скважность .
Добавлено (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 внешнего триггера.Для управления нужно будет два переменных резистора.Один регулирует частоту, другой задержку импульса и в итоге скважность .
Последний раз редактировалось DerAlex 22 июн 2016, 03:32, всего редактировалось 1 раз.
аврора
Падение частоты генератора
Вот схема соединений.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
аврора
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя