Котуинко

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить
Друг Кота
Аватара пользователя
Сообщения: 3794
Зарегистрирован: Ср дек 24, 2008 09:58:58

Сообщение Ser60 »

Собрал весь проект на монтажке - работает замечательно от штатной сенсорной площадки на плате. Ток покоя всей схемы снизился с 40 мкА то 5 мкА, а в активном режиме с 120 мА до 40 мА с автоматическим отключением после 1 мин. Оказалось, что светодиоды на плате стоят очень яркие и им достаточно 10мА для примерно той-же яркости, задаваемым драйвером IC2. В оригинальной конструкции они были запитаны параллельно и непосредственно от батареи 4.5В (3хААА) даже без ограничительных резисторов. Не понимаю, как-же надо ненавидеть своих покупателей для подобных решений. Драйвер IC2 под конструкцию подходит оптимально. В нём имеется бустер, компенсирующий разряд батарей. В следующий раз когда мне понадобятся сенсорные кнопки, я дальше этого МК (IC1) и смотреть ничего не буду. На него можно навесить до 13 сенсорных кнопок. Ниже пара кликабельных картинок монтажки
Изображение
... и схемы
Изображение
Можно начинать изготовление печатной платы и завершать проект.
Реклама
Это не хвост, это антенна
Аватара пользователя
Сообщения: 1394
Зарегистрирован: Чт авг 21, 2014 11:11:48
Откуда: краснодарский край

Сообщение главный колбасист »

Собрал весь проект на монтажке - работает замечательно от штатной сенсорной площадки на плате.
рады за вас.

А у нас ничего не получается.
Терморегулятор тайваньский ,стоит R5F2135. Попала капля воды,или чего еще.
в районе ножек 8-12 подъела чуть.Снято,очищено,отмыто,пропаяно.Но не работает.
На сбросе 8 ножка 5в. Генерации нет, Внешних резонаторов не замечено.Внутренний
генератор используется? Микросхеме хана ?
Контактная информация:
Реклама
Друг Кота
Аватара пользователя
Сообщения: 15790
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Если было включено питание (явные следы электролиза металла дорожек) то вероятнее всего БелоПушистый зверек подкрался...
Особо опасны ТАРАКАНЫ - после их "выделений жизнедеятельности" мало чего целым остаётся ( и омывается с великими сложностями).
Чего может бысть помимо явно видимого - ищем даташит на мелкосхему и делаем анализ возможных бяков (не обязательно явно заметных)
Моё Соболезнование по тому терморегулятору...
:cry:
Это не хвост, это антенна
Аватара пользователя
Сообщения: 1394
Зарегистрирован: Чт авг 21, 2014 11:11:48
Откуда: краснодарский край

Сообщение главный колбасист »

даташит есть.
Да,тоже так думаю,скорее всего животные лазят там внутри.Воду никак не набрызгать.
все закрыто и еще в шкафу стоит.Еще частотник валяется,пробило между силовыми проводами
даже реле сгорело плавной зарядки.

А вот это изделие должно температуру достаточно точно измерять.Почему кварцев нет,точность
ведь частотой определяется,больше как бы нечем,а внутренний rc точностью ведь не отличается ?
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Друг Кота
Аватара пользователя
Сообщения: 15790
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Точность определяется датчиком.
Для аналоговых более значимо напряжение питания или опорное в АЦП, для DSок - только качество сборки (все встроено внутри).
Термопары - там также аналоговый сигнал.
Так что кварцы на втором месте.
8)

Добавлено after 9 hours 21 minute 9 seconds:
Продолжу некоторый садомазохизмо с адуринкой...
теоретическая схемка
https://img.radiokot.ru/files/20529/2rkit18znc.GIF
натыкано много, вводиться в действие будет "по кусочкам".
Индикатор пока более простонародный - 8 позиционный 7-сегментник на основе MAX7219...
матричный двухстрочник ессно поинтереснее - но уж больно на сегодня кусючий.
Идейка - программное реле времени, сходное с функционалом старой доброй К145ИК1901 (радиоконструктор "старт7176").
Часики, секундомер, таймер, два разбудильника ну и чего-нибудь еще ...
:roll:
Менюшка на семисегментниках явно примитивная будет, но то ужшшш не так и страшно.
Исходник СКОТча содержит папочки с используемыми библиотеками кои (при их отсутствии в разделе подключаемых библиотек) надо будет добавить в раздел подключаемых библиотек. OneWire и Adafruit_NeoPixel скорее всего есть у большинства - в таком случае (при наличии "по умолчанию") их копировать не нужно.
Пока прожка содержит только базовую основу с транспортными протоколами заготовленными так, чтобы можно было в дополнительных "внешних файлах" их использовать и минимум для работы аппаратной части клавиатуры.
prvt.zip
(227.32 КБ) 126 скачиваний
Остаоьное дальше добавлять буду, по мере готовности.
:write:
Реклама
Друг Кота
Аватара пользователя
Сообщения: 6695
Зарегистрирован: Пт сен 10, 2021 15:19:36
Откуда: Протвино

Сообщение AlexS4 »

BOB51, а вродеж 1602 lcd некусаюцца?! ~250р штучно с доставкой.
https://aliexpress.ru/item/1005003089091429.html
это eps/hd44780, там 5-6 gpio надо чтоб управлять. i2c версии менее массовые и конечно дороже.
Реклама
Друг Кота
Аватара пользователя
Сообщения: 15790
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Я местными радиорынками пользуясь.
Там цена заметно более Вами указанной.
Не думаю, что на сегодня в других местах меньше будет.
Расчёт на наиболее доступное и дешевое.
Дополнительно мозготреп с "семисегментными кракозябрами" более сложен для исполнения (собственно в том мой частичный интерес - 7сегментных ЖКИ с крупными цифирями из вторички в достатке вылеживается плюс учебное тренировочный материал набирается).
Переход к матричному двустрочнику будет уже много проще.
8)
Друг Кота
Аватара пользователя
Сообщения: 6695
Зарегистрирован: Пт сен 10, 2021 15:19:36
Откуда: Протвино

Сообщение AlexS4 »

BOB51, упомянутые lcd с 44780 оч популярны они от стареньких принтеров/копиров/факсов до всякого пром оборудования, по идее их должно быть немало на разборах.
Друг Кота
Аватара пользователя
Сообщения: 15790
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Не всегда так - у меня кучка с разборок но без маркировок - с ними сложнее, чем с теми,что от кассовых аппаратов.
А там все же больше 7-сегментников или однострочные матричники...
:(
Это не хвост, это антенна
Аватара пользователя
Сообщения: 1394
Зарегистрирован: Чт авг 21, 2014 11:11:48
Откуда: краснодарский край

Сообщение главный колбасист »

Вот и я говорю,что все пренебрегают таким неисчерпаемым источником компонентов,как старьё.

з.ы.
А где вообще прячутся-хранятся встроенные функции,например _BV() ,что они сразу начинают работать?
В файлах IO.h ?
Вложения
belov3.c
(657 байт) 102 скачивания
Контактная информация:
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18788
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

главный колбасист писал(а):прячутся-хранятся встроенные функции,например _BV()
_BV() это макрос
главный колбасист писал(а):В файлах IO.h
io.h - это один файл. и таки да, где-то в его недрах, а так же в недрах включенных в него других файлов...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
OKF
Это не хвост, это антенна
Сообщения: 1454
Зарегистрирован: Вт июн 07, 2011 08:03:18

Сообщение OKF »

[uquote="главный колбасист",url="/forum/viewtopic.php?p=4219682#p4219682"]А где вообще прячутся-хранятся встроенные функции,например _BV() ,что они сразу начинают работать?
В файлах IO.h ?[/uquote]
Где то в sfr_defs.h #define _BV(bit) (1 << (bit)). Неужто тяжело поискать?
Это не хвост, это антенна
Аватара пользователя
Сообщения: 1394
Зарегистрирован: Чт авг 21, 2014 11:11:48
Откуда: краснодарский край

Сообщение главный колбасист »

Неужто тяжело поискать?
Искали.И поиском,и так в папках рылись. В ATMEL/AVRstudio не был найден даже IO.h
Может не там искали ?
Контактная информация:
OKF
Это не хвост, это антенна
Сообщения: 1454
Зарегистрирован: Вт июн 07, 2011 08:03:18

Сообщение OKF »

Ну, тогда у Гугля нужно спросить.) Это из avr libc.
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18788
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

в нормальной IDE зажимаешь Ctrl, наводишь на макрос/переменную/функцию мыша и кликаешь - открывается файл с этим самым определением/объявлением... как вы там ищите - не знаю...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
OKF
Это не хвост, это антенна
Сообщения: 1454
Зарегистрирован: Вт июн 07, 2011 08:03:18

Сообщение OKF »

Понятно, что нормальной IDE нет, но какой нибудь Total commander ALT+F7 с текстом _BV, не? Ну а файлы то и подавно ищутся.
Друг Кота
Аватара пользователя
Сообщения: 15790
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

ГЫММ...
Есть такая задачка...
имеем указатель на функцию, определенный как новый тип

Код: Выделить всё

#typedef void(*ptrf) ();
создаем переменную my_ptrf типа ptrf

Код: Выделить всё

ptrf my_ptrf;
и некую функцию

Код: Выделить всё

void test();
затем загружаем

Код: Выделить всё

my_ptrf = test;
в самом my_ptrf сидит адрес функции test (или какой-то функции такого же типа)...
Надо тот адрес вытянуть в виде 0xnnnn (предполагается что адрес двухбайтовый)
и заслать во внешнее ОЗУ побайтово...
Затем обратный вариант - считать два байта и запихнуть их в указатель на функцию...
:dont_know:

главный колбасист писал(а):
Неужто тяжело поискать?
Искали.И поиском,и так в папках рылись. В ATMEL/AVRstudio не был найден даже IO.h
Может не там искали ?
Каталог
C:\Program Files\Atmel\AVR Tools
Далее
C:\Program Files\Atmel\AVR Tools\AVR Toolchain
и там копаем.....
:facepalm:

Вроде конструкция с менюшками начала чуток продвигаться...
На сей момент из "устройств" реализованы часики с индикацией времени да просмотром и изменением данных в часиках/календаре DS1307. Заложено расширение функционала.
Конечно получилося монстро, да и заставки менюшек на 8-позиционном 7 сегментнике есть великое зверство - однако работает...
исходно рабочий экран
https://img.radiokot.ru/files/20529/2s6vo2bdm3.jpg
нажав красну кнопу получаем окно главного меню с курсором в позиции выбора устройств (0=главные часы)
https://img.radiokot.ru/files/20529/2s6vpvf8am.jpg
если в этом состоянии (независимо от позиции курсора - децимальной запятой нажать красну кнопу - вернется предыдущее состояние)
далее выбираем субменюшку - двигаем кнопами < и > курсор во второе знакоместо
и кнопами +/- выбираем одно из значений
0 соответствует переходу к рабочему состоянию установленного устройства
1 - показ и редактирование минут
https://img.radiokot.ru/files/20529/2s6xaqzbru.jpg
https://img.radiokot.ru/files/20529/2s6xbrhlmk.jpg
2 - показ и редактирование часов
https://img.radiokot.ru/files/20529/2s6xckr2g2.jpg
https://img.radiokot.ru/files/20529/2s6xdc0ysv.jpg
3 - показ и редактирование дня недели
.........
4 - показ и редактирование числа
.........
5 - показ и редактирование месяца
.........
6 - показ и редактирование года
https://img.radiokot.ru/files/20529/2s6xgbomsl.jpg
https://img.radiokot.ru/files/20529/2s6xh0mjm2.jpg
7 - режим обнуления счетчика секунд (запуск по сигналу точного времени)
но то лишь заставка...
Далее надо нажать ту же красну кнопу - появится текущее значение параметра.
Курсор можно гонять только в разрешенных позициях (автоограничение перемещения)
меняем значения при помощи +/-.
Курсор в позиции с "?" меняет назначение кноп - "+" равноценно закрытию окна с вводом значения,
"-" возврат без внесения изменений.
Выйти из субменю можно только установив в окошке субменюшек 0.
:roll:
Вобщем как-то так...
Потихоньку буду другие "устройства" добавлять...
:write:
Вложения
prvt2.zip
(133.33 КБ) 158 скачиваний
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18788
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

BOB51 писал(а):Надо тот адрес вытянуть в виде 0xnnnn (предполагается что адрес двухбайтовый)
и заслать во внешнее ОЗУ побайтово...
по стандарту Си указатель должен быть совместим по размеру с int, так что приведение типа к int позволяет делать с указателем, что угодно:

Код: Выделить всё

char str[10];
itoa((int)my_ptrf, str, 16); // в str будет hex-значение указателя, "0x" дорисовать можно потом

// функция создания указателя из двух байтов
ptrf combine(uint8_t hi, uint8_t lo){
   return (ptrf)(lo + hi*256);
}
Добавлено after 4 minutes 9 seconds:
кстати, если "внешнее ОЗУ" подключено "прозрачно" (т.е. не и2ц или SPI память), то намного проще объявить в этом самом ОЗУ сам указатель, и просто работать с ним - не нужно будет побайтно туда переносить и считывать, компилятор сам все сделает
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 15790
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

То "обычный" указатель...
А меня смушшаеть, что нужно измываться над "указателем на функцию", да еще и в виде нового типа данных...
:roll:
Хотя как вариант - в ОЗУ идет индекс (unsigned char или int), а уж сам МК по тому индексу выполняет чего угодно (пока так и сделано).
8)
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18788
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

указатель на функцию ничем не отличается от любого другого. все указатели до разыменовпния одинаковы.

Добавлено after 1 minute 10 seconds:
тип указателя начинает играть роль только при разыменовании.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Ответить

Вернуться в «Разные вопросы по МК»