Уважаемые посетители! Форум CQHAM.RU существует исключительно за счет показа рекламы. Мы будем благодарны, если Вы не будете блокировать рекламу на нашем Форуме. Просим внести cqham.ru в список исключений для Вашего блокировщика рекламы.
Страница 200 из 205 ПерваяПервая ... 100150190197198199200201202203 ... ПоследняяПоследняя
Показано с 1,991 по 2,000 из 2041

Тема: ARDUINO

  1. #1991
    IG_58, спасибо Вам большое!
    Компиляцию прошел, правда мало понял почему! Все упирается в библиотеки, какие они должны быть и где должны лежать, короче есть с чем разбираться....

    Добавлено через 25 минут(ы):

    Тогда еще один скетч. Он нормально компилировался, был загружен в ардуину, все работает. Но пришлось переставить винду и все...вот что пишет....Нажмите на изображение для увеличения. 

Название:	Безымянный.png 
Просмотров:	40 
Размер:	95.8 Кб 
ID:	367470
    Последний раз редактировалось UA9SJR; 05.12.2021 в 16:26.


  2. #1992

    Регистрация
    12.09.2006
    Адрес
    Болгария, Силистра, KN34PC
    Сообщений
    585
    Позывной
    LZ2WSG
    UA9SJR, все просто. Попытайтесь выяснить, каким образом как работает и начин станет использовать в будущем.

    Библиотеки есть два вида:

    1. глобальные, метод использования: #include <lib.h>
    а) оригиналные, записанный при установке Arduino IDE, и
    - путь: C:\Program Files (x86)\Arduino, записанный при установке Arduino IDE
    - никогда их не удаляем, не перемещаем и не перезаписываем (до тех пор, пока не будет сохранена следующая версия IDE)

    б) потребительские, для будущего использования во многих кодах, во много проектах
    - путь: C:\Users\xx\Document s\Arduino
    - помещаем их сюда, когда они были проверены (напр. ск. из github), libs с уникальными, разными именами

    2. локальные
    а) в папки проекта, метод использования: #include "lib.h"
    - путь: все записани в папки проекта, там есть .ino, .cpp, h файлы
    - помещаем их там только для этого проекта

    б) в другой папки, метод использования: #include "disk/papka/papka/...src/lib.h"
    - путь: находится везде на диске
    - помещаем их там только для этого проекта, при проект со многими драйверами устройств, можем разделить коды по папкам для облегчения управления, в соответствии с функцией: напр. /displays, /encoders, /eeproms, /sensors ...
    ---
    Проект: по вариант 2-б. Просто не должно било быть повторяющихся имен библиотек (у 1-б).
    (частично использовал БГ->РУ переводчика)
    Последний раз редактировалось veso74; 05.12.2021 в 16:51.

  3. Спасибо от IG_58

  4. #1993
    Аватар для IG_58
    Регистрация
    27.10.2012
    Адрес
    Германия
    Сообщений
    10,338
    Записей в дневнике
    12
    UA9SJR, вот это одна из причин, почему я не люблю держать библиотеки в папке со скетчем, а устанавливаю их штатными средствами, через IDE, и почему избегаю использовать модифицированные бибилотеки с недокументированными изменениями.

    В данном случае автор скетча ясно написал, что все необходимые библиотеки есть в папке src. Я бы скомпилировал скетч, а если бы оказалось, что не хватает какой-то не присутствующей в этой папке библиотеки - доставил бы ее штатными средствами через меню Sketch - Include Library - Manage Libraries. Такая стратегия свела бы к минимуму вероятность коллизий.
    Игорь

  5. #1994

    Регистрация
    12.09.2006
    Адрес
    Болгария, Силистра, KN34PC
    Сообщений
    585
    Позывной
    LZ2WSG
    Цитата Сообщение от UA9SJR Посмотреть сообщение
    Тогда еще один скетч ... вот что пишет....
    У Вас есть библиотеки с таким же именем. Вам снова нужна чистка библиотек.
    Выяснитесь какая библиотека правильная и использовайте ее в одном месте, не копируя ее всеми возможными путям.

    Будьте особенно осторожны с именам оригинальним библиотеками. Если они дублируются, что-то не так (как например Wire.h)
    ---
    Цитата Сообщение от IG_58 Посмотреть сообщение
    ... доставил бы ее штатными средствами через меню Sketch - Include Library - Manage Libraries. Такая стратегия свела бы к минимуму вероятность коллизий.
    Да, если библиотека публичная, напр. в github.
    A eсли библиотека авторская, то не найдете ee таким способам, многие атрибуты могут отсутствовать.

    И особенно время тратится на версии библиотек (которые по какой-то причине несовместимы друг с другом). Так что неплохо объявлять информации в программе в коментарях (.ino) (напр. автор, откуда скачивали, версия), немного, но со временем будет полезно если не другим, то мне (при много поректов через неделю напр. я уже не помню, что написал ).
    Последний раз редактировалось veso74; 05.12.2021 в 16:54.

  6. #1995
    veso74, спасибо за разъяснение! Вот теперь выстраивается какая то теория...Спасибо, буду разбираться с библиотеками...

  7. #1996
    Аватар для IG_58
    Регистрация
    27.10.2012
    Адрес
    Германия
    Сообщений
    10,338
    Записей в дневнике
    12
    Цитата Сообщение от veso74 Посмотреть сообщение
    особенно время тратится на версии библиотек (которые по какой-то причине несовместимы друг с другом). Так что неплохо объявлять информации в программе в коментарях (.ino) (напр. автор, откуда скачивали, версия), немного, но со временем будет полезно если не другим, то мне (при много проектов через неделю напр. я уже не помню, что написал ).
    Вы совершенно правы, код нужно тщательно комментировать, указывать отличия в версиях, где что изменилось. Это хороший тон в программировании. И людям понятно, и себе через некоторое время, когда уже забудешь, что, где и зачем писал и исправлял. А стандартные библиотеки вообще трогать не надо, если уж хочется что-то своё, то хотя бы имя нужно другое давать и документировать всё.

    Цитата Сообщение от ur3ilf Посмотреть сообщение
    Как это не знает если include в куче компилляторов указывает путь! А может самому сперва следует разобраться .... Если <так> то встроенные в ардуину.
    Вы из меня идиота не делайте. "В ардуину" никакие библиотеки не встроены, в ней ничего кроме загрузчика нет. И компиляторов в IDE не куча, а один. Разобраться и понять..... Вот и разберитесь, и поймите, что глобальные библиотеки, которые <так>, прописываются на стандартных путях C:\Program Files ... и/или C:\Users\ ... И когда там в разных местах понакопировано по несколько библиотек с одинаковым названием, но с разным содержимым, IDE не знает, какую именно юзер имел в виду и откуда это самое <так> брать. И может взять не то. И никакой include <вот так> в этом случае не поможет.
    Последний раз редактировалось IG_58; 05.12.2021 в 18:14.
    Игорь

  8. #1997
    Цитата Сообщение от IG_58 Посмотреть сообщение
    Вы из меня идиота не делайте. "В ардуину" никакие библиотеки не встроены, в ней ничего кроме загрузчика нет. И компиляторов в IDE не куча, а один. Разобраться и понять.....
    А каким образом выполняется например delay? По вашей логике загрузчиком.
    Да вы не знаете сколько регистров у AVR и зачем они.
    Ардуина мне не нравится так как просто жрёт память со своими финтами так что ни чего путёвого в 16К не вместить. И работает так же медленно с кучей не нужных тактов.
    Блинк 1536 байт занимает. Обычный ногодрыг который на ассемблере реализуется в пять строк...

    Нажмите на изображение для увеличения. 

Название:	скрин.jpg 
Просмотров:	33 
Размер:	83.5 Кб 
ID:	367484Нажмите на изображение для увеличения. 

Название:	скрин2.jpg 
Просмотров:	33 
Размер:	99.9 Кб 
ID:	367485


    И раз такой головняк с либами надо их все отдельно размещать в каждом проекте. Иначе будет у одного проходить компиляция а у другого нет. В принципе так в нормальных проектах и делают. Не на ардуине.

  9. #1998

    Регистрация
    12.09.2006
    Адрес
    Болгария, Силистра, KN34PC
    Сообщений
    585
    Позывной
    LZ2WSG
    Цитата Сообщение от ur3ilf Посмотреть сообщение
    Ардуина мне не нравится ... В принципе так в нормальных проектах и делают. Не на ардуине.
    Ети споры об Arduino излишни. Например, то, что собираю в Arduino (почти на 90% от свои самоделки), умещается в памяти в 2k..4k в PIC. И то же самое, что Вы написали, могу отправить к AVR в сравнение с PIC, и то на языке "высокого уровня". Но это тема для Arduino со всеми достоинствами и недостатками.

    blink: ROM used: 56, RAM used: 5
    Последний раз редактировалось veso74; 05.12.2021 в 22:07.

  10. Спасибо от IG_58

  11. #1999
    Аватар для IG_58
    Регистрация
    27.10.2012
    Адрес
    Германия
    Сообщений
    10,338
    Записей в дневнике
    12
    Цитата Сообщение от ur3ilf Посмотреть сообщение
    А каким образом выполняется например delay? По вашей логике загрузчиком.
    Не надо с дурацкими смайликами писать всякую чушь. У меня совершенно нет никакого желания читать вам тут крэш-курс по микропорцессорной технике. Я на макроассемблере программы под ОС РВ писал, когда Вы еще пешком под стол ходили.

    veso74, Ардуино - это прекрасная платформа для почти любых любительских конструкций. на маленькой плате ценой три доллара собрана полнофункциональная микропроцессорная система со вводом-выводом, коммуникационными портами, с системой питания и даже с USB для комфортной загрузки. И есть очень простая, доступная даже детям среда программирования IDE на базе диалекта Си, позволяющая получить работающую систему без всяких ненужных телодвижений с фьюзами, загрузчиками и т.п. без всяких ассемблерных вставок и регистров. Ее легко осваивают даже дети. В ней даже имеется встроенный монитор реального времени, позволяющий отладить программу на раз-два, легко и просто. Ее ресурсов хватает всегда. На ней даже можно реализовывать многозадачные системы реального времени с диспетчеризацией задач по таймерным меткам и реентерабельным кодом, если это вообще нужно. Я, правда. не представляю, кому это может понадобиться, но в ATMega328 такая возможность принципиально есть.

    Не надо ее недооценивать, это очень интересный и мощный инструмент. Я обычно рассматриваю Arduino Nano как полуфабрикат, как обычную гибридную микросборку (каковой она и является на самом деле) и просто впаиваю ее в плату. За 3 доллара я даже думать не буду о том, чтобы травить плату с мелкими дорожками и паять на ней мелкие SMD деталюшки, всё уже сделали и распаяли китайцы.
    Последний раз редактировалось IG_58; 05.12.2021 в 22:21.
    Игорь


  12. #2000

    Регистрация
    12.09.2006
    Адрес
    Болгария, Силистра, KN34PC
    Сообщений
    585
    Позывной
    LZ2WSG
    Да, все верно.

    И самое главное - со поделенном кодом: берете код для Вашу идею из мета, переделываете ее, добавите нови функции и снова делитесь код.

    Честно говоря, только с РУ-ресурсов я начал встречать Arduino-конструкции только с .hex (и "надоедливый" для меня xLoader).
    Я не знаю, что скрывается. Код часто нужен для обучения "новички", иногда для идеи устройства или алгоритмов за все (кнопки, светодиодов, дисплеи, DDS-и, PLL-и, expanders и др.). А так все равно нужно заново "открыть колесо", но с большим количеством поисков, исследований, чтения ... (и с множеством возможных ошибок).

    В последнее время, если я вижу конструкция с Arduino только с .hex, закрываю страницу .
    Всегда захочется что-то поменять, хоть надпись, хоть кнопку, а так я привязан к автору. А ето хобби, сегодня одно, завтра другое желание.
    Последний раз редактировалось veso74; 05.12.2021 в 22:37.

  13. Спасибо от IG_58

Страница 200 из 205 ПерваяПервая ... 100150190197198199200201202203 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 7 (пользователей: 0 , гостей: 7)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •