Arduino "Hello, World!"

Sākumlapa Forumi Notepad.lv IT ziņas Raksti Arduino "Hello, World!"

Tiek skatīts 1 ieraksts (no 25 kopumā)
  • Autors
    Ieraksti
  • #147602
    deivs001
    Participant

    Jau neilgu laiku esmu Arduino īpašnieks, kas pie manis atceļoja no UK, bet salodēts ir Itālijā. Kā jau visas, kas saistīts ar programmēšanu ir – Hello, world! programma, kas sevī ietver pašu elementārāko, ko var izdarīt. Piemēram, PHP tas būs ar echo funkcijas palīdzību izvadīts teksts, tāpat tas notiek C++, lai gan struktūra atšķirās no PHP, bet par to šoreiz nav stāsts.

    Stāsts šoreiz būs par Arduino programmu Hello World!, tā ir elementāra LED iedegšana un izslēgšana uz noteiktu laiku, ko nosaka programmētājs. Lai šādu programmu izpildītu, mums ir vajadzīga tikai LED diode, jo viss pārējais (arī balasta rezistors) jau ir iebūvēts shēmā. Īstenībā, ja mums ir Arduino Diecimila, tad mums pat nevajag LED’u, jo tā jau ir iebūvēta, apzīmēta uz PCB ar L un atrodas šeit:

    [img]https://notepad.lv/userpix/55_arduino_l_2.jpg[/img]

    Bet lai izdarītais būtu vieglāk redzams, iesaku izmantot atsevišķu LED’u. Kad tas ir atrasts, to vajag savienot ar kontroles iekārtu – Arduino. Tas tiek panākts ievietojot LED katodu (-) GND ligzdā un anodu (+) 13 ligzdā, kas ir jau aprīkota ar rezistoru. Tiem, kas nezina kā noteikt, kurš ir anods un katods, atliek ieskatīties šajā zīmējumā:

    [img]https://notepad.lv/userpix/55_arduino_electronics_led_diagram1_1.png[/img]

    Ja esam tik tālu tikuši un ievietojuši LED’u tur, kur pienākas varam turpināt savu darbu. Lai varētu saprasties ar mūsu datoru un ielādēt vajadzīgās programmas kodu mums būs nepieciešams USB kabelis ar USB A un USB B spraudņiem galā.

    [img]https://notepad.lv/userpix/55_arduino_n_belkin_belkin_cable_pro_series_usb_20_ab_30m_1.jpg[/img]

    Kad tas atrasts, laiks iemācīt savam datoram sarunāties ar Arduino. Lai to izdarītu Microsoft Windows vidē mums jārīkojas pēc šādiem soļiem:

    Lejupielādēt Arduino programmēšanas vidi šeit, atarhivējam,

    Uzinstalēt USB draiverus,

    Pievienot Arduino pie datora,

    Ielādēt programmas kodu un skatīties, kas ir sanācis.

    Kad viss ir lejupielādēts un uzinstalēts kā pienākas, varam sākt rakstīt programmas priekš Arduino, lai to darītu mums jāatver arduino.exe fails, kas atrodas atarhivētajā mapē. Mums jāparādas šādam logam:

    [img]https://notepad.lv/userpix/55_arduino_winworkspacestart_1.jpg[/img]

    Š eit notiks visa programmēšana un kompilēšana. Tā kā esam galīgi iesācēji un paši neprotam pagaidām uzrakstīt kodu, kas midžinātu LED’u, tad mūsu glābiņš ir atrodams zem – File > Sketchbook > Examples > Digital > Blink

    [img]https://notepad.lv/userpix/55_arduino_blink_1.jpg[/img]

    Programmas logā mums parādās sekojošs kods, kas ir bagātināts ar paskaidrojumiem, lai katrs varētu saprast to:

    Code:

    /*
    * Blink
    *
    * The basic Arduino example. Turns on an LED on for one second,
    * then off for one second, and so on… We use pin 13 because,
    * depending on your Arduino board, it has either a built-in LED
    * or a built-in resistor so that you need only an LED.
    *
    * http://www.arduino.cc/en/Tutorial/Blink
    */

    int ledPin = 13; // LED connected to digital pin 13

    void setup() // run once, when the sketch starts
    {
    pinMode(ledPin, OUTPUT); // sets the digital pin as output
    }

    void loop() // run over and over again
    {
    digitalWrite(ledPin, HIGH); // sets the LED on
    delay(1000); // waits for a second
    digitalWrite(ledPin, LOW); // sets the LED off
    delay(1000); // waits for a second
    }

    Kad esam izlasījuši visu vai arī gribam ātrāk redzēt rezultātu, mums kods ir jānokompilē nemāku pateikt smukāk, tas nozīmē, ka mūsu ielādētais kods ir jāpārveido Arduino dēlim saprotamā valodā. To mūsu vietā jau izdara programmēšanas vide. Vienīgais, kas tiek prasīts no mums ir ar peles kreiso podziņu nospiest uz pogu, kas atgādina Play pogu. Zem pogas slēpjas komanda apstiprināt.

    [img]https://notepad.lv/userpix/55_arduino_compile_1.jpg[/img]

    Kad proces ir pabeigts, lejā parādīsies paziņojums: “Done compiling”.

    [img]https://notepad.lv/userpix/55_arduino_pabeigts_1.jpg[/img]

    Sagaidījuši šo paziņojumu beidzot varam mācīt Arduino midžināt LED’u. Lai uzsāktu šo procesu atkal ar veiklu pirkstu darbību un peles palīdzību spiežam uz pogu – Upload to I/O board.

    [img]https://notepad.lv/userpix/55_arduino_augupielade_1.jpg[/img]

    Tas arī viss, atliek sagaidīt, kad kods ielādēsies un varam būt iepriecināti par savu darbu 🙂

    Nākamajā reizē apskatīsim, kas tad īsti ir rakstīts programmas kodā un kā varam ietekmēt cik ilgi ir ieslēgta un izslēgta LED.

    Izmantotie resursi: Par LED, darbība Windows vidē.

    #186065
    QueenZ
    Participant

    Taa iisti nesapratu kas tas Arduino iisti ir..

    Nokompileejot tavs kods tiek paarveersts binaarajaa kodaa lai tas vells saprastu 😉

    #186066
    deivs001
    Participant

    Arduino ir dēlis, kas aprīkots ar Atmega mikročipu, digitālām, analogām I/O ligzdām.

    Var teikt, ka tas ir mazs datoriņš, kas paredzēts iesācējiem, lai iemācītos pamatprincipus kā ietekmēt un iegūt datus no apkārtējās vides.

    #186067
    samurajs
    Participant

    Laba mantiņa katram, kas grib iemācīties ar programmas palīdzību vadīt reālus procesus.

    Piemēram, varam šo programmēt karu dienu 7 un 21 laistīt puķudobi, pie tam rītos 30 min., vakaros 45 min. Ja līst lietus (vienam no portiem pieslēgts mitruma sensors) – process tiek atcelts.

    Viss atkarīgs tikai no portu skaita un atmiņas lieluma.

    #186068
    akels14
    Participant

    cik aizņēma tav nokompilētais kods?

    #186069
    QueenZ
    Participant

    Shito mantinu gan gribeetos 🙂 Kur es vinju vareetu dabuut?

    #186070
    devill
    Participant

    un cik maksa tads prieks?

    #186071
    QueenZ
    Participant

    Nedomaaju ka vairaak par Ls 10 galvenais kur dabuut to joku?

    #186072
    waplet
    Participant

    Paga tas bija maksas tas arduino?

    #186073
    tox3
    Participant
    #186074
    Aldis
    Participant

    mazbiiki laiks neatliktu tadai lieta.. 😀 reaali kko var kontrolet arii caur com portu.. 😀 😀 ir ari programmas prieksh taa.. un pamacibas kaut vai ieksh delphi ja nemaldos.. 🙂 [iespejams maldos, jo neesmu tam pieversis lielu uzmanibu]

    #186075
    deivs001
    Participant

    Notepad.lv lasītājiem, kas atrodas Rīgā un ir interese par šādām ierīcēm un saprot angļu valodu būtu grēks neizmēģināt veiksmi, lai tiktu uz Arduino radošo darbnīcu. Varbūt, ka tieši tu būsi kāds no 20 laimīgajiem, kas varēs paplašināt zināšanas.

    akels14 wrote:

    cik aizņēma tav nokompilētais kods?


    Binary sketch size: 1124 bytes (of a 14336 byte maximum).

    #186076
    Mr.Death
    Participant

    vispār ja tā kaste darbojas autonomi, es viņu nekavējoties pasūtu 😀

    #186077
    samurajs
    Participant

    Kastei laikam ar plakano bateriju jādarbojas (5 V). Vismaz tā vairums PIC-kontrolleru dara.

    #186078
    deivs001
    Participant

    Š is darbojas ar kroneni – 9V.

    Saite

    #186079
    waplet
    Participant

    Kā rīkoties gadījumā ja programmas kods pārsniedz tos 14k byte?

    #186080
    KristoZ
    Participant

    Š eit jau mazliet novecojusi informācija, bet lielākoties viss tāpat. Lai vai kā praktiski visi jaunie Duemilanove/Nano ir ar 32KB atmiņu, no kā lietojami ir 30720 baiti (maksimums).

    #186081
    waplet
    Participant

    tas tā kā būtu skaidrs, bet ja piemēram, ar arduino taisu , kaadu puzzle solveri, tur tach vajag entos algoritmus pierakstiit.. Un ko dariit, ja aptruukstaas atminja? Vai arii tas ir pietiekami? 😕

    #186082
    KristoZ
    Participant

    Ja kods nav līks (t.i. izmanto efektīvus algoritmus, rekursīvas funkcijas u.tml.), tad, manuprāt, ar tiem 30 KB pietiek atliektiem galiem.

    Lielākiem projektiem ir domāts Arduino Mega:

    https://arduino.cc/en/Main/ArduinoBoardMega2560

    ar 256 KB atmiņas.

    #186083
    Nelabojams
    Participant

    Rekā, nemaz nezināju par tādu lietu – bet nu baigi interesanti! Nav jau nekad laika, bet traki gribas pamēģināt paknibināties. Ir doma uztaisīt “personālo” meteostaciju. Ar visvisāda veida devējiem esmu ņēmies gadu gadiem un tur man neko priekšā nav jāsaka, bet datu savākšana bija visam vājais punkts. Te redzu risinājumu.

    p.s. bildes gan varēja būt bišķi labākas…

Tiek skatīts 1 ieraksts (no 25 kopumā)
  • Jums ir jāpieslēdzas sistēmai, lai varētu komentēt šo tēmu.
Jaunākais portālā