Отговори на тема  [ 37 мнения ]  Отиди на страница Предишна  1, 2, 3  Следваща
Ардуино Arduino 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Окт 10, 2004 9:55 am
Мнения: 1718
Мнение Re: Ардуино Arduino
ToHu написа:
Струва ми се някой не е мислил, тия конектори що не са отдолу за да може това да се забучва в-у нещо, ами са отгоре ...

Може само тея вътре ако се изведат пак може да си се набучва без да имаш ядове :)

_________________
Избийте баламите и тарикатите сами ще умрат!
Няма невъзможни работи - има много трудни работи!
----------------------------------------------------------------------------------
"Я в Москве с киркой уран найду, при такой повышенной зарплате" !


Пет Сеп 23, 2011 11:05 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Вто Яну 10, 2006 2:40 pm
Мнения: 2258
Мнение Re:
ike написа:
Поредния ардуино клон/платформа -> http://www.firebird32.com/
Трябва да внимават, че ако клоновете станат 256 туко виж превърти брояча.


отново заблудени душици които не са наясно какво е ардуино и защо тяхното никой няма да погледне :D


Пет Сеп 23, 2011 8:42 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пет Мар 23, 2012 1:38 pm
Мнения: 13
Мнение Re: Ардуино Arduino
Доста начинаещ съм в тази област. Реших да направя нещо и стигнах до някъде където зацикли и неще и неще и не мога да разбера каква ми е грешката, а уж е елементарен код.

Прилагам файла с кода.


Прикачени файлове:
reg_s_ograni4itel_4.txt [824 Байта]
379 пъти
Нед Апр 28, 2013 4:57 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пет Фев 04, 2005 9:59 pm
Мнения: 6019
Местоположение: София
Мнение Re: Ардуино Arduino
Не съм гледал много подробно кода ти. Но ето на кое трябва да обърнеш внимание.
1. Слагай си програмите в
Цитат:
[code][/code]
тагове.
2. Преди да свържеш двигатели, поиграй си с примерите на Ардуино. Карай ги един по един и не минавай на следващия докато не го разбереш.
3. Отговори тази функция "digitalRead(inkbutton);" , какво връща и резултата който връща къде се използва?
4. В началото на програмата задаваш, че inkbutton = 2, някъде променяш ли стойността на inkbutton, че после правиш тази проверка if (inkbutton = HIGH .... ?
5. Виж внимателно функцията analogWrite(). С кои пинове може да работи(подсказка - не с всички)?
6. Знаеш ли какъв е максималния ток, който може да отдаде пин на микроконтролер, знаеш ли с какъв ток ти работи двигателчето и знаеш ли как да свържеш диод към двигател, така че на не си изгориш микроконтролера от flyback-а на двигателчето?

_________________
Warriors of the Night, ASSEMBLER!!!


Нед Апр 28, 2013 6:03 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 25, 2005 11:41 am
Мнения: 1680
Мнение Re: Ардуино Arduino
radiko написа:
Доста начинаещ съм в тази област. Реших да направя нещо и стигнах до някъде където зацикли и неще и неще и не мога да разбера каква ми е грешката, а уж е елементарен код.

Прилагам файла с кода.


Трябва да е така:

Код:
.
.
int val = 0;

.
.
.

val = digitalRead(inkbutton);
  if (val = HIGH &&
value < 254)
  {
.
.
.
.


Пон Апр 29, 2013 10:13 am
Профил ICQ WWW
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пет Фев 04, 2005 9:59 pm
Мнения: 6019
Местоположение: София
Мнение Re: Ардуино Arduino
relsys така няма да стане, защото при всяко натискане на бутона, val ще си губи стойността и няма да може да получи променлив PWM.

_________________
Warriors of the Night, ASSEMBLER!!!


Пон Апр 29, 2013 10:19 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 25, 2005 11:41 am
Мнения: 1680
Мнение Re: Ардуино Arduino
ike написа:
relsys така няма да стане, защото при всяко натискане на бутона, val ще си губи стойността и няма да може да получи променлив PWM.


Абе аз това за първи път го виждам, ама нали val и value са различни променливи?!?
Имах предвид, че трябва да прочете какво връща функцията и с нея стойност да прави сравнението.
Ето от тук гледах:

http://arduino.cc/en/Reference/DigitalRead


Пон Апр 29, 2013 10:39 am
Профил ICQ WWW
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пет Фев 04, 2005 9:59 pm
Мнения: 6019
Местоположение: София
Мнение Re: Ардуино Arduino
Прав си. Аз се обърках, че val и value са една променлива, а те са различни.
Иначе може да стане и така
Код:
if ((digitalRead(inkbutton) == HIGH) && (value < 254)) {
}

a това val = HIGH е присвояване, а не сравнение.

_________________
Warriors of the Night, ASSEMBLER!!!


Пон Апр 29, 2013 11:10 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 25, 2005 11:41 am
Мнения: 1680
Мнение Re: Ардуино Arduino
А, да, стават грешки в бързината :) :) :)

А това цялото нещо с интерпретатор ли е или се компилира?


Пон Апр 29, 2013 11:37 am
Профил ICQ WWW
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пет Фев 04, 2005 9:59 pm
Мнения: 6019
Местоположение: София
Мнение Re: Ардуино Arduino
Това се подава на WinAVR, като се инклудва ардуино.h или нещо подобно, в което има main(); което вика първо setup(), а после в while(1) вика loop();
Неизвесно защо, но хората по се кефят да пишат digitalWrite(PIN5, HIGH) и digitalWrite(PIN5, LOW), вместо PORT |= PIN5 и PORT &= ~PIN5.

_________________
Warriors of the Night, ASSEMBLER!!!


Пон Апр 29, 2013 2:22 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Яну 25, 2012 9:14 am
Мнения: 5298
Мнение Re: Ардуино Arduino
ike написа:
Неизвесно защо, но хората по се кефят да пишат digitalWrite(PIN5, HIGH) и digitalWrite(PIN5, LOW), вместо PORT |= PIN5 и PORT &= ~PIN5.


По същата причина, поради която 3/4 от портовете на езици от високо ниво са Бейсик :)

_________________
'просто' е технически синоним на 'красиво'


Пон Апр 29, 2013 2:38 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Фев 26, 2006 6:52 pm
Мнения: 11266
Местоположение: Добрич
Мнение Re: Ардуино Arduino
ike написа:
Неизвесно защо, но хората по се кефят да пишат digitalWrite(PIN5, HIGH) и digitalWrite(PIN5, LOW), вместо PORT |= PIN5 и PORT &= ~PIN5.


напротив, съвсем известно е... просто ти не си се сблъсквал с проблема ;-)

Не винаги перифериите са свързани директно на пинове. Примерно дисплеи, клавиатури и т.н. много често заради монтажа са изнесени на кабели и за да са по-малко кабелите се ползват GPIO експандери или тем подобни техники... В случая добрата практика на Ц е библиотечките (примерно GUI) да ползват макроси, шаблони (Ц++) или в краен случай weak функции. Така ако на твоята платка са директно свързани ще се компилира до твоето "|=" или "&=~"... Ако са през експандер ще се компилира до каквото трябва, но няма да ти се налага да мажеш из кода на библиотечката...


Пон Апр 29, 2013 3:08 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 25, 2005 11:41 am
Мнения: 1680
Мнение Re: Ардуино Arduino
И според мен 'правилният' начин е да има Hardware Abstract Layer.
Сега, ако на някой някъде не му достига производителност.....е друга тема....


Пон Апр 29, 2013 3:57 pm
Профил ICQ WWW
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Сеп 26, 2004 4:11 pm
Мнения: 3750
Местоположение: София
Мнение Re: Ардуино Arduino
relsys написа:
И според мен 'правилният' начин е да има Hardware Abstract Layer.
Сега, ако на някой някъде не му достига производителност.....е друга тема....


Читаво направен HAL не трепе производителността. Ако трябва да се прави някаква по-сложна последователност от действия и с него, и без него все ще е куцо. А за по-елементарните просто се изнася от файловете с апликацията това, което има отношение към хардуера. Пример:

в някой .h файл:
#define LampON() { P1OUT |= BIT2; }

По-късно, ако смениш платката, даже и процесорната фамилия, ти ще променяш само този .h и евентуално съответния .c файл.
Ако всички тези глупости си ги сложиш директно в main(), няма да стане по-бързо.


Пон Апр 29, 2013 4:03 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 25, 2005 11:41 am
Мнения: 1680
Мнение Re: Ардуино Arduino
Варианти много...

Аз лично като пиша по дисплеи, си имам винаги отделен видео буфер, после когато и където му дойде времето,... било на порции или както съм преценил се опреснява дисплея. След него през HAL-a, и понякое време взело, че се показало да го види някой ... :lol: :lol: :lol:


Пон Апр 29, 2013 4:17 pm
Профил ICQ WWW
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 37 мнения ]  Отиди на страница Предишна  1, 2, 3  Следваща

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 2 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни