Народ выручайте! Никак не могу победить компилятор, уже все перепробовал.. голова кругом. В общем нужна последняя прошивка для m32. Аудио процессор TDA7448, дисплей KS0108B, тюнер не будет использоваться. Единственно подкорректировал в tda7448.h порядок под свою разводку, файл прикладываю. Кому не сложно, скомпилируйте пожалуйста прошивку.
Спасибо WiseLord! Ошибку компилятор выдает, причем пробовал собирать вашу последнюю прошивку без каких либо изменений. Делал все по инструкциям этой темы, ничего не помогает.. Скажите пожалуйста, чтобы проверить работоспособность экрана, достаточно только его припаять или еще что-то надо?
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
друзья всех приветствую. такой вопрос - можно ли разнести на примерно 2м друг от друга либо кнопки с энкодером, либо дисплей по i2c/ суть, есть старое авто. хочется сохранить внешний вид магнитолы, но у нее очень маленький дисплей. точнее место под 16х2, но есть место на потолке под вполне себе 128 дисплей. точные измерения приведу позже, равно как и фото. Можно ли в магнитолу установить аналоговую часть с унч и источниками звука, а в потолок образно говоря - плату с процессором и дисплеем, соответствено вниз надо будет тянуть энкодер и кнопки управления, либо всё остается в магнитоле, а вверх в потолок тянем только дисплей? возможно ли это технически, не будет ли проблем из-за длин проводников?
Спойлер[/url]
Последний раз редактировалось siwix8888 Вт июл 06, 2021 15:29:47, всего редактировалось 1 раз.
i2c не советовал бы так далеко тащить, до кучи в авто очень много помех.
хорошо, какое тогда решение? экранирование и витая пара спасёт?
i2c не только капризна к помехам, но и к ёмкости проводов, можно конечно попробовать, но по питанию придется ставить внушительные фильтры. можно попробовать использовать токовую петлю на шине i2c, но оптопары надо подбирать соответствующие, а они будут стоить денег. http://easyelectronics.ru/tokovaya-petlya.html то есть нужны быстрые оптопары с минимальным временем срабатывания
_________________ Электроника -очень точная наука, бубен необходимо держать в левой руке!!!
Вчера час почти бился с дисплеем ssd1306. Оказалось в описании неверно указано куда к атмега328р подключать линии sda и куда scl. Перепутаны они местами в описании на гитхаб.ио Кстати по версии на атмега328 вообще невнятное описание, схема всего одна для всех дисплеев. Непонятно почему линия i2c в версии для атмега328 раздельная для часов и для дисплея. Можно наверное использовать одну шину i2c? Ну и ещё по-мелочи вопросы: термодатчик и вентиляторы нельзя в этой версии использовать? И где бы посмотреть параметры компиляции для одного pt2313 без тюнера, а то в маке файле там целая строка тюнеров и строка аудиопроцессоров И ещё вопрос— почему в версии для упомянутого контроллера нет PGA2310? Он же даже для атмеги8 есть.
Да, здесь было неверно. Хотя я в последнее вообще стараюсь уйти от этого общего для всех проектов github.io и размещать всю инфу прямо в readme.md проекта - так проще держать информацию актуальной.
ksa69 писал(а):
по версии на атмега328 вообще невнятное описание, схема всего одна для всех дисплеев.
Потому что этот вариант неофициальный. Оно вроде как и работает, но никаких гарантий, потому что живого проекта я на нём не делал, только в виде по сути макетки.
ksa69 писал(а):
почему линия i2c в версии для атмега328 раздельная для часов и для дисплея
Потому что DS1307 и аудиопроцессоры только на 100кГц умеют работать, а дисплей хочется не тормозной видеть. Почему-бы тогда и не повесить на отдельную линию, тем паче что всего 2 пина нужно, а не 12, как у других.
ksa69 писал(а):
термодатчик и вентиляторы нельзя в этой версии использовать?
нет, не хватает ножек МК.
ksa69 писал(а):
почему в версии для упомянутого контроллера нет PGA2310?
по той же причине - он использует те же ножки, что и термодатчик/вентиляторы (EXT)
Понял. Либо тормозной дисплей ssd1306, либо вентиляторы и термодатчики с pga2310. Хотя не понятно что будет там критически сильно тормозить, кроме отображения спектроанализатора и уровня сигнала. Остальные параметры вроде не быстроменяющиеся величины.
Либо ATmega32 (с бОльшим числом ножек) и тогда есть куда подключить 3 линии термодатчиков/вентиляторов или PGA2310. Либо ATmega328 - тогда только I²C для внешних устройств на 100кГц (аудиопроцессоры, тюнеры, часы и т.д.). От дисплея это не зависит.
Да, если переходить на SSD1306 - освобождается куча (8 линий данных и ещё управляющие) линий дисплея, и к ним можно было бы подключить и PGA-шку, и термоконтроль, и что-то ещё даже. Правда, тогда теряется универсальность проекта - получается как бы разная схемотехника.
Но вообще, поскольку всё в исходниках по-прежнему есть - Вам никто не мешает вывести всё нужное на любые из осободившихся линий дисплея ("перевесить" EXT в pins.h) и убрать в Makefile исключение для ATmega32, чтобы он для ATmega328p также собирал нужные модули.
Но опять же, это будет выбор между: или термоконтроль, или PGA2310, или какой-нибудь SPI тюнер.
Это я и пробую сделать. Только что-то не пойму— в pins.h написано одно, а на схеме для меги328 другая распиновка кнопок и энкодера. Энкодер не хочет что-то работать ни по схеме если подключаю ни по pins.h. Плюс на схеме 6 кнопок, а в файле 5 кнопок. В итоге работают на меге328 сейчас 5 кнопок, но параметры не регулируются. Работает вкл/выкл, установка часов, переключение входов, а регулировка громкости и прочего не работает. Или она не будет работать пока рт2313 не подключу? Компилировал уже и так и так, но толку ноль
Добавлено after 29 minutes 7 seconds: Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12864 Состояние энкодера в меню настроек отображается всегда как 0b00 и не меняется какой бы порт атмеги не замыкал на землю
Так, на счёт совсем свободных линий data дисплея я был не прав (уже забыл как оно там) - эти линии используются для кнопок и энкодера. PD1/PD2 в pins.h - это только для ATmega32. Для ATmega328p используются 6 и 7 линии параллельного дисплея, как на схеме.
Если кнопки (PD6, PD7, PB0, PB1, PB2, PB3) работают, то и энкодер (PB6, PB7) должен работать, т.к. считывается состояние всего порта, на который вешался бы обычный дисплей.
А по поводу "на схеме одно, в pins.h другое" советую заглянуть в input.c и посмотреть на getPins()
Понял. Я имел ввиду с существующими пятью кнопками громкость не порегулируешь. Одна вкл/выкл, вторая выбор входов, третья выбор регулируемого параметра. А четвёртая и пятая вообще не понял пока зачем нужны. В атмеге328 вообще 6 кнопок, шестую как ни нажимал— ничего не происходит. Коды кнопок в настройках показывает нормально. В исходниках нашёл место где коды этих кнопок присваиваются, а для чего они непонятно. Хотя у меня только темброблок используется на pt2313. Ни тюнера ни ещё чего-то нет.
Добавлено after 6 minutes 32 seconds: Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12864 Где можно посмотреть описание функций кнопок?
Подскажите какая версия avr gcc нужна. Дома на std c99 ругалось, добавил опцию в строку компиляции и стало норм. На работе теперь вот установил и ругается на опцию -flto теперь вообще не компилируется на рабочем компе. ни стд99 не помогает ни удаление -flto опции. вот что пишет: СпойлерC:\Users\Admin\Downloads\ampcontrol-m32\src>make avr-gcc -Wall -Werror -std=c99 -lm -Os -mcall-prologues -fshort-enums -ffunction -sections -fdata-sections -ffreestanding -mmcu=atmega328p -DF_CPU=16000000L -MM D -MP -MT build/main.o -MF build/./main.d -D_atmega328p -D_ssd1306 -D_TDA7439 -D _TDA731X -D_TDA7448 -D_PT232X -D_TEA63X0 -D_TUNER_AUDIO -D_TEA5767 -D_RDA580X -D _TUX032 -D_SI470X -D_ALARM -D_UARTCONTROL -D_RDS -D_RDA5807_DF -c -o build/main. o main.c cc1.exe: warnings being treated as errors In file included from main.c:8: remote.h:88: error: declaration does not declare anything make: *** [build/main.o] Error 1
а вот это пишет когда вообще не меняю опции сборки: СпойлерC:\Users\Admin\Downloads\ampcontrol-m32\src>make avr-gcc -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-sections -fdata-sections -ffreestanding -flto -mmcu=atmega32 -DF_CPU=16000000L -MMD -MP -MT build/display.o -MF build/./display.d -D_atmega32 -D_ST7920 -D_TDA7439 -D_TD A731X -D_TDA7448 -D_PT232X -D_TEA63X0 -D_TUNER_AUDIO -D_PGA2310 -D_TEA5767 -D_RD A580X -D_TUX032 -D_SI470X -D_LM7001 -D_LC72131 -D_ALARM -D_UARTCONTROL -D_RDS -D _RDA5807_DF -D_TEMPCONTROL -D_SPISW -c -o build/display.o display.c cc1.exe: error: unrecognized command line option "-flto" make: *** [build/display.o] Error 1
Сейчас этот форум просматривают: korob и гости: 51
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения