Форум за любителите на Стара електроника

Персонални компютри, игрови приставки и друга стара електроника за забавление => Ремонт, схеми, документация, литература => Темата е започната от: Pichaga933 в 22 Ноември, 2016, 00:43:05

Титла: Arduino Въпрос
Публикувано от: Pichaga933 в 22 Ноември, 2016, 00:43:05
това уж Arduino
https://www.aliexpress.com/item/1PCS-Nano-3-0-controller-compatible-with-nano-CH340-USB-driver-for-Arduino-NANO-V3-0/32347096044.html?spm=2114.01010208.3.60.PQucqf&ws_ab_test=searchweb0_0,searchweb201602_5_10065_10068_10084_10083_10080_10082_10081_10060_10061_10062_10056_10055_10054_10059_10099_10078_10079_10073_10100_10096_10070_10052_423_10050_10051_424,searchweb201603_1&btsid=e1e99817-7d64-4310-a11a-cd316972357c

може ли да подкара и изпълнява тоя код?
https://github.com/Andrea81/CDCemu
Титла: Re: Arduino Въпрос
Публикувано от: veso74 в 22 Ноември, 2016, 01:12:07
За Arduino Nano се компилира без грешка. Стара е програмата, вероятно za Ардуино с Атмега8, но това няма значение, на ATMEGA328 е ОК. В най-сложния случай ще си преконфигурираш изводите наново.

За Nano дава:
Скицата използва 6 302 байта (20%) от пространството за програми.
Глобалните променливи ползват 740 байта (36%) от динамичната памет, оставяйки 1 308 байта за локални променливи
Титла: Re: Arduino Въпрос
Публикувано от: Pichaga933 в 22 Ноември, 2016, 01:33:25
Е това са инструкциите преведени  от италиански, пише че трябва да се няправят и някакви замествания на файлове освен скеча, това не го разбирам?!?

Цитат
инструкции:

Замяна (преименуване на стария .bak) файл в SoftwareSerial.cpp ... Arduino \ библиотеки \ SoftwareSerial

Замяна (преименуване на стария .bak) подаде в wiring_pulse.c ... Arduino \ хардуер \ Ардуино \ ядра \ Ардуино

Отворете cdc.pde скицата и качване на борда Arduino


Инсталиране на емулатор на Connect( това е радиото  за което ще се закачи  Ардуино-то).
Включете Connect, след няколко мига светодиод "L" Ардуино светва, ако той е признат от Connect.
Титла: Re: Arduino Въпрос
Публикувано от: Pichaga933 в 22 Ноември, 2016, 01:36:19
За Arduino Nano се компилира без грешка. Стара е програмата, вероятно za Ардуино с Атмега8, но това няма значение, на ATMEGA328 е ОК. В най-сложния случай ще си преконфигурираш изводите наново.

За Nano дава:
Скицата използва 6 302 байта (20%) от пространството за програми.
Глобалните променливи ползват 740 байта (36%) от динамичната памет, оставяйки 1 308 байта за локални променливи

Да разбирам ли че горния Ардуино клонинг ще ми свърши работа и да го поръчвам?
ПП: това ще ми е първия Проект в областта на микро контролерите изобщо, драйвери и инсталация ще трябва да боря и тн..
Титла: Re: Arduino Въпрос
Публикувано от: veso74 в 22 Ноември, 2016, 01:50:10
Горните библиотеки вече са добавени в пакета, няма нужда да се качват отделно, поне не ми даде грешки при мен. Освен да са модифицирани, но и заместването е лесно.

Трябва работно да се провери какво прави и потока с данни. Ако трябва, ще се бутне отнякъде и ще тръгне (дано е ясен протокола на това устройство, за което е всичко).

"емулатор на Connect" най-вероятно е серийния монитор, в Arduino UDE го има за следене на комуникацията през серийния канал и др. (serials).

Клонингът по нищо не се различава от оригинала (за мен): качеството си е отлично. Ако искаш си намери само процесор и си налепи сам платка. Програмирането като Ардуино е с 3 клика. Варианти всякакви, но поне поле за действие има докато дойде китайсккото поне. Всичко е лесно, вкл. започването от нула. Добре е документирано като примери всичко.

Ако ли не тръгне като устройство, мисля си, че все ще му намериш приложение, а и цената е .. за няколко кафета :)
Титла: Re: Arduino Въпрос
Публикувано от: Pichaga933 в 22 Ноември, 2016, 02:33:42
connect   е името на радиото, за което ще се закачва ардуинуто, което самото е (емулатор) на една външна функция на радиото.

Ардуиното подава протоколоа по ТХ RX към радиото и го лъже че има закачено външно устройство.

Точно протокола е проблем, щото Италианеца, който го е писал скеча е свалил протокола от самото радио и си е играл да го напише понеже не е споделен от производителя.



Титла: Re: Arduino Въпрос
Публикувано от: lz1tka в 23 Ноември, 2016, 19:24:55
Чакам доставка на същата платка,поне при мен китайското "пълно"копие на ардуино уно засега работи безпроблемно от към софтуер.Надявам се и при тази да няма подводни камъни.
Титла: Re: Arduino Въпрос
Публикувано от: Pichaga933 в 24 Ноември, 2016, 01:56:46
Поръчах го мини-то, също и едно про  а за него усб ттл с ресет. Че съм замислил още към 4-5 проекта. Даже и скеч си намерих написан за следващия, ще иска малко редакции , но пък най-накрая ще се накарам да почна да кодя.

Поръчах си ги от Варна вече внесени, ако имам късмет утре/други ден трябва да пристигнат. И ако пък все да става направо ще пусна поръчка от алиекспрес на 15тина броя..

С буутлоудерите на тия клони как стои въпроса?
Титла: Re: Arduino Въпрос
Публикувано от: veso74 в 24 Ноември, 2016, 15:24:22
С буутлоудерите на тия клони как стои въпроса?
Записани са си предварително.  Ако си правиш сам с ново, голо процесорче - да, трябва да си запишеш сам.

Не съм имал нужда да подменям или презаписвам буутлоудер на готово модулче при условие, че зареждам през USB или с Rx-TX през USB към TTL преходник.

На Nano веднъж "се повреди" някак си с програма за директен запис на hex през USB (XLoader). Друг път "се повреди" със запис през ISP изводите с ATMEGA програматор.

Възстановяването е лесно: за минути и с няколко клика. Вариант е с друго, работещо Ардуино или с ATMEGA програматор през ISP изводи в оригиналната среда Arduino IDE.

Добре е на си набавиш нужния инструментариум, при възможна "авария" да няма чакане, а и да не се намалява удоволствието / и удължава времето / при писането :). Иначе ако няма големи, безсмислени грешки (примерно изход с 1 - на "земя", високи захранващи напрежения, различни от 5 волта, високи напрежения по входовете, статика и др.) практически Ардуино е неубиваемо.

Въобще правилото "три пъти мери ... един път пускай" и тука е в сила.
Титла: Re: Arduino Въпрос
Публикувано от: origo в 24 Ноември, 2016, 17:18:18
То и изход с 1 на маса също трябва да не е проблем, защото те си имат токоограничение и уж търпят късо неограничено време ама все пак не е желателно.
Титла: Re: Arduino Въпрос
Публикувано от: Pichaga933 в 04 Декември, 2016, 18:37:51
Това съобщение ми излиза след като качих скицата, нормално ли е?

[attach=1]
Титла: Re: Arduino Въпрос
Публикувано от: radio-hobi в 04 Декември, 2016, 18:45:43
Не виждам какво пише ,но не трябва да излиза нищо с червени букви .
Титла: Re: Arduino Въпрос
Публикувано от: Pichaga933 в 04 Декември, 2016, 18:59:44
ей го с по-голямо качество

Цитат
C:\CDCemu-master\cdc\cdc.pde: In function 'void loop()':

C:\CDCemu-master\cdc\cdc.pde:45:10: warning: case label value exceeds maximum value for type

     case 0xEF:    {

          ^

C:\CDCemu-master\cdc\cdc.pde: In function 'void RX()':

C:\CDCemu-master\cdc\cdc.pde:136:34: warning: converting to non-pointer type 'char' from NULL [-Wconversion-null]

                         someChar = NULL;

                                  ^


Скицата използва 4 834 байта (15%) от пространството за програми. Максимумът е 30 720 байта.
Глобалните променливи ползват 320 байта (15%) от динамичната памет, оставяйки 1 728 байта за локални променливи. Максимумът е 2 048 байта.

[attach=1]
Титла: Re: Arduino Въпрос
Публикувано от: Gabo в 04 Декември, 2016, 20:20:13
Според мен е само предупреждение за неточно използване на променлива, би трябвало да тръгне всичко и така.
Титла: Re: Arduino Въпрос
Публикувано от: veso74 в 04 Декември, 2016, 20:43:42
В червено са предупреждения за неправилно или некоректно поведение на променливите.
Системата взема някакво решение за изход за компилация, но не гарантира, че е правилно и предупреждава за объркване на данните и случващте се действия с тях.

Затова:

за ред 136:
това наисаното: someChar = NULL;
става: someChar = 0;

за ред 45:
someChar се сравнява с 0xEF (239), а на ред 10: char someChar; someChar е тип char (от -127 до 127).
Кое е вярното?
1. стойността за сравняване 0xEF е объркана и е число, по-малко от 127(DEC)?
2. стойността за сравняване 0xEF е вярна, следва ред 10 да стане (от 0 до 255):
unsigned char someChar;
[1] или [2] знае автора вероятно, според действието и логиката на устройството.

За да продължа с компилацията, приемам по-лесното за мен: променям по [2] ред 10 на:
unsigned char someChar;

Появяват се още два червени реда (виж приложения файл).
for (i = 13; i < 153; i = i + 1) {
i се върти цикъл от 13 до 152, като няма данни в края на масива на durations.
Не съм броил данните  на ред 13, но според това, за което Arduino IDE "роптае" са 104 бр + още 13 бр в началото = 117 бр., а редът му казва, че са 152 + 0 = 153. Какво да прави? 153 не е 153, а друго число? 153 е 153, тогава какви да останалите данни в масива?

Преброй числата в durations[] и в someChars[] (и delays[]). Според мен трябва да са еднакъв брой, а не са (не съм ги броил).

Не знам как работи устройството, нито какви данни се разменят, следва или да се "изследва" наново кой какво си праща, да се коригират тези данни, или друг алгоритъм или ... най-лошото - отказ от идеята.

P.S. С 3-те масива, с еднакъв брой данни в тях компилацията е без предупреждения (с двете първи поправки)
("скъсъх" данните пробно само с по 5 бр. и намалих циклите до "5":) )
Титла: Re: Arduino Въпрос
Публикувано от: Pichaga933 в 05 Декември, 2016, 08:02:44
@veso74

Е в началото каза, че се компилира ок?
Титла: Re: Arduino Въпрос
Публикувано от: veso74 в 05 Декември, 2016, 08:48:33
Компилира се ОК: надписите в края. Синтаксисът е правилен.

Предупреждения са надписите, преценяваш дали са определящи занапред. Вероятно логически несъответствия ще има. Може и да греша. Трябва проверка.

Превеждам: Пишем изречение: "Аз съм в БЕлгария."  Системата дава синтактическа грешка: Не познавам такава дума "БЕлгария". Оправи грешката. Оправяме: "БЕлгария" става "България".

Тя казва ок, няма повече грешки. А че сме в Румъния в този момент, близо до България, системата не може да знае. Ще има вече логическа грешка (за теб).
Титла: Re: Arduino Въпрос
Публикувано от: Pichaga933 в 05 Декември, 2016, 10:20:57
Ей го проекта, Италиански е

https://translate.google.bg/translate?hl=bg&sl=it&tl=en&u=http%3A%2F%2Fforum.stiloclub.it%2Fviewtopic.php%3Ff%3D15%26t%3D25667&sandbox=1

Регвам се в момента там, за да задам въпроса за проблемите при компилирането.

За съжаление Разработващия го не се занимава вече с него.
Титла: Re: Arduino Въпрос
Публикувано от: veso74 в 05 Декември, 2016, 11:45:09
Да, гледам колективен труд е.

Направих още един опит: смених Arduino IDE с v1.60. Червени надписи няма изобщо.

За мен вариантите за реакцията му са:
1. IDE все още не е "поумняло" във времето, за да дава и логическите несъответствия.
2. IDE "поправя" по друг начин (от версия 1.6.13), за да елининира  несъответствията.

Не пречи да опиташ реализацията: избери си старо Arduino IDE:
https://www.arduino.cc/en/Main/OldSoftwareReleases#previous

За всеки случай си пусни в настройките "всички надписи" и тествай оригиналния файл към ардуино, закачено за устройството.

Успех.
Титла: Re: Arduino Въпрос
Публикувано от: Pichaga933 в 05 Декември, 2016, 15:10:16
В 1.60 няма "всички надписи"


Иначе го качих без грешки и червени надписи -да

Във форума там пишат,  че се качвал успешно само до версия 0.18 , та ще видим дали ще изпълнява...


Титла: Re: Arduino Въпрос
Публикувано от: veso74 в 05 Декември, 2016, 15:14:16
Това имах предвид.
Титла: Re: Arduino Въпрос
Публикувано от: Pichaga933 в 05 Декември, 2016, 15:27:57
Дам, сложих го, нямаше грешки.
Титла: Re: Arduino Въпрос
Публикувано от: Pichaga933 в 05 Декември, 2016, 15:31:00
До няколко дена ще видим дали работи.

Междувременно ще го закача на ТХ RХ  модул, и да видя какво изкарва като изход.