Форум за любителите на Стара електроника
Персонални компютри, игрови приставки и друга стара електроника за забавление => Ремонт, схеми, документация, литература => Темата е започната от: 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
-
За Arduino Nano се компилира без грешка. Стара е програмата, вероятно za Ардуино с Атмега8, но това няма значение, на ATMEGA328 е ОК. В най-сложния случай ще си преконфигурираш изводите наново.
За Nano дава:
Скицата използва 6 302 байта (20%) от пространството за програми.
Глобалните променливи ползват 740 байта (36%) от динамичната памет, оставяйки 1 308 байта за локални променливи
-
Е това са инструкциите преведени от италиански, пише че трябва да се няправят и някакви замествания на файлове освен скеча, това не го разбирам?!?
инструкции:
Замяна (преименуване на стария .bak) файл в SoftwareSerial.cpp ... Arduino \ библиотеки \ SoftwareSerial
Замяна (преименуване на стария .bak) подаде в wiring_pulse.c ... Arduino \ хардуер \ Ардуино \ ядра \ Ардуино
Отворете cdc.pde скицата и качване на борда Arduino
Инсталиране на емулатор на Connect( това е радиото за което ще се закачи Ардуино-то).
Включете Connect, след няколко мига светодиод "L" Ардуино светва, ако той е признат от Connect.
-
За Arduino Nano се компилира без грешка. Стара е програмата, вероятно za Ардуино с Атмега8, но това няма значение, на ATMEGA328 е ОК. В най-сложния случай ще си преконфигурираш изводите наново.
За Nano дава:
Скицата използва 6 302 байта (20%) от пространството за програми.
Глобалните променливи ползват 740 байта (36%) от динамичната памет, оставяйки 1 308 байта за локални променливи
Да разбирам ли че горния Ардуино клонинг ще ми свърши работа и да го поръчвам?
ПП: това ще ми е първия Проект в областта на микро контролерите изобщо, драйвери и инсталация ще трябва да боря и тн..
-
Горните библиотеки вече са добавени в пакета, няма нужда да се качват отделно, поне не ми даде грешки при мен. Освен да са модифицирани, но и заместването е лесно.
Трябва работно да се провери какво прави и потока с данни. Ако трябва, ще се бутне отнякъде и ще тръгне (дано е ясен протокола на това устройство, за което е всичко).
"емулатор на Connect" най-вероятно е серийния монитор, в Arduino UDE го има за следене на комуникацията през серийния канал и др. (serials).
Клонингът по нищо не се различава от оригинала (за мен): качеството си е отлично. Ако искаш си намери само процесор и си налепи сам платка. Програмирането като Ардуино е с 3 клика. Варианти всякакви, но поне поле за действие има докато дойде китайсккото поне. Всичко е лесно, вкл. започването от нула. Добре е документирано като примери всичко.
Ако ли не тръгне като устройство, мисля си, че все ще му намериш приложение, а и цената е .. за няколко кафета :)
-
connect е името на радиото, за което ще се закачва ардуинуто, което самото е (емулатор) на една външна функция на радиото.
Ардуиното подава протоколоа по ТХ RX към радиото и го лъже че има закачено външно устройство.
Точно протокола е проблем, щото Италианеца, който го е писал скеча е свалил протокола от самото радио и си е играл да го напише понеже не е споделен от производителя.
-
Чакам доставка на същата платка,поне при мен китайското "пълно"копие на ардуино уно засега работи безпроблемно от към софтуер.Надявам се и при тази да няма подводни камъни.
-
Поръчах го мини-то, също и едно про а за него усб ттл с ресет. Че съм замислил още към 4-5 проекта. Даже и скеч си намерих написан за следващия, ще иска малко редакции , но пък най-накрая ще се накарам да почна да кодя.
Поръчах си ги от Варна вече внесени, ако имам късмет утре/други ден трябва да пристигнат. И ако пък все да става направо ще пусна поръчка от алиекспрес на 15тина броя..
С буутлоудерите на тия клони как стои въпроса?
-
С буутлоудерите на тия клони как стои въпроса?
Записани са си предварително. Ако си правиш сам с ново, голо процесорче - да, трябва да си запишеш сам.
Не съм имал нужда да подменям или презаписвам буутлоудер на готово модулче при условие, че зареждам през USB или с Rx-TX през USB към TTL преходник.
На Nano веднъж "се повреди" някак си с програма за директен запис на hex през USB (XLoader). Друг път "се повреди" със запис през ISP изводите с ATMEGA програматор.
Възстановяването е лесно: за минути и с няколко клика. Вариант е с друго, работещо Ардуино или с ATMEGA програматор през ISP изводи в оригиналната среда Arduino IDE.
Добре е на си набавиш нужния инструментариум, при възможна "авария" да няма чакане, а и да не се намалява удоволствието / и удължава времето / при писането :). Иначе ако няма големи, безсмислени грешки (примерно изход с 1 - на "земя", високи захранващи напрежения, различни от 5 волта, високи напрежения по входовете, статика и др.) практически Ардуино е неубиваемо.
Въобще правилото "три пъти мери ... един път пускай" и тука е в сила.
-
То и изход с 1 на маса също трябва да не е проблем, защото те си имат токоограничение и уж търпят късо неограничено време ама все пак не е желателно.
-
Това съобщение ми излиза след като качих скицата, нормално ли е?
[attach=1]
-
Не виждам какво пише ,но не трябва да излиза нищо с червени букви .
-
ей го с по-голямо качество
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]
-
Според мен е само предупреждение за неточно използване на променлива, би трябвало да тръгне всичко и така.
-
В червено са предупреждения за неправилно или некоректно поведение на променливите.
Системата взема някакво решение за изход за компилация, но не гарантира, че е правилно и предупреждава за объркване на данните и случващте се действия с тях.
Затова:
за ред 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":) )
-
@veso74
Е в началото каза, че се компилира ок?
-
Компилира се ОК: надписите в края. Синтаксисът е правилен.
Предупреждения са надписите, преценяваш дали са определящи занапред. Вероятно логически несъответствия ще има. Може и да греша. Трябва проверка.
Превеждам: Пишем изречение: "Аз съм в БЕлгария." Системата дава синтактическа грешка: Не познавам такава дума "БЕлгария". Оправи грешката. Оправяме: "БЕлгария" става "България".
Тя казва ок, няма повече грешки. А че сме в Румъния в този момент, близо до България, системата не може да знае. Ще има вече логическа грешка (за теб).
-
Ей го проекта, Италиански е
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
Регвам се в момента там, за да задам въпроса за проблемите при компилирането.
За съжаление Разработващия го не се занимава вече с него.
-
Да, гледам колективен труд е.
Направих още един опит: смених Arduino IDE с v1.60. Червени надписи няма изобщо.
За мен вариантите за реакцията му са:
1. IDE все още не е "поумняло" във времето, за да дава и логическите несъответствия.
2. IDE "поправя" по друг начин (от версия 1.6.13), за да елининира несъответствията.
Не пречи да опиташ реализацията: избери си старо Arduino IDE:
https://www.arduino.cc/en/Main/OldSoftwareReleases#previous
За всеки случай си пусни в настройките "всички надписи" и тествай оригиналния файл към ардуино, закачено за устройството.
Успех.
-
В 1.60 няма "всички надписи"
Иначе го качих без грешки и червени надписи -да
Във форума там пишат, че се качвал успешно само до версия 0.18 , та ще видим дали ще изпълнява...
-
Това имах предвид.
-
Дам, сложих го, нямаше грешки.
-
До няколко дена ще видим дали работи.
Междувременно ще го закача на ТХ RХ модул, и да видя какво изкарва като изход.