{"id":1390,"date":"2020-07-10T20:07:00","date_gmt":"2020-07-10T18:07:00","guid":{"rendered":"http:\/\/www.daniel.slask.pl\/?p=1390"},"modified":"2021-02-08T22:13:37","modified_gmt":"2021-02-08T21:13:37","slug":"hello-world-pierwszy-program-na-rpi-podstawy-programowania-w-c-na-rpi","status":"publish","type":"post","link":"https:\/\/daniel.slask.pl\/m\/hello-world-pierwszy-program-na-rpi-podstawy-programowania-w-c-na-rpi\/","title":{"rendered":"Hello World &#8211; pierwszy program na RPI. Podstawy programowania w C na RPI."},"content":{"rendered":"\n<p>Jak zwykle bywa przy pocz\u0105tkach programowania, pierwszym programem jest hello world, b\u0105d\u017a migaj\u0105ca dioda, kt\u00f3ra zast\u0119puje przywitanie si\u0119 ze \u015bwiatem zewn\u0119trznym. Jaki\u015b czas temu przedstawi\u0142em konfiguracj\u0119 programu<a href=\"http:\/\/www.daniel.slask.pl\/?p=1225\"> netbeans do cross-compilation <\/a>dla naszej malinki, natomiast tym razem przedstawi\u0119 w jaki spos\u00f3b napisa\u0107 pierwszy program z poziomu komputera PC a uruchamianego na RPI. Zaczynamy&#8230;<\/p>\n\n\n\n<p>W pierwszej kolejno\u015bci musimy po\u0142\u0105czy\u0107 si\u0119 z naszym urz\u0105dzeniem &#8211; wybieramy z listy rozwijalnej adres naszego rpi, b\u0105d\u017a konfigurujemy nowe po\u0142\u0105czenie (poprzez wybranie z listy Manage Hosts). Po wybraniu odpowiedniego adresu \u0142\u0105czymy si\u0119 poprzez wybranie ikonki monitora &#8211; przed po\u0142\u0105czeniem jest koloru czerwonego, natomiast po po\u0142\u0105czeniu przybiera kolor zielony. Kolejnym krokiem jest utworzenie nowego projektu &#8211; utworzymy go na RPI. Wybieramy wi\u0119c Create Remote C\/C++ Project i w nowym oknie wybieramy typ tworzonego projektu. U nas b\u0119dzie to typ Aplikacji w j\u0119zyku C\/C++. Po wybrani przechodzimy dalej, do ustawie\u0144 takich jak, nazwa projektu, lokalizacja projektu (warto j\u0105 zapami\u0119ta\u0107\/zapisa\u0107 bo b\u0119dzie p\u00f3\u017aniej ona nam potrzebna w celu wywo\u0142ania programu). W wi\u0119kszo\u015bci zostawiamy wszystko domy\u015blnie.<\/p>\n\n\n\n<figure class=\"wp-block-gallery columns-4 is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\"><ul class=\"blocks-gallery-grid\"><li class=\"blocks-gallery-item\"><figure><a href=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"512\" height=\"388\" src=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_1.png\" alt=\"\" data-id=\"1392\" data-full-url=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_1.png\" data-link=\"http:\/\/www.daniel.slask.pl\/?attachment_id=1392\" class=\"wp-image-1392\" srcset=\"https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_1.png 512w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_1-300x227.png 300w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_1-400x303.png 400w\" sizes=\"(max-width: 512px) 100vw, 512px\" \/><\/a><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><a href=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_2.png\"><img loading=\"lazy\" decoding=\"async\" width=\"709\" height=\"548\" src=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_2.png\" alt=\"\" data-id=\"1393\" data-full-url=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_2.png\" data-link=\"http:\/\/www.daniel.slask.pl\/?attachment_id=1393\" class=\"wp-image-1393\" srcset=\"https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_2.png 709w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_2-300x232.png 300w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_2-400x309.png 400w\" sizes=\"(max-width: 709px) 100vw, 709px\" \/><\/a><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><a href=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_3.png\"><img loading=\"lazy\" decoding=\"async\" width=\"735\" height=\"507\" src=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_3.png\" alt=\"\" data-id=\"1394\" data-full-url=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_3.png\" data-link=\"http:\/\/www.daniel.slask.pl\/?attachment_id=1394\" class=\"wp-image-1394\" srcset=\"https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_3.png 735w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_3-300x207.png 300w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_3-400x276.png 400w\" sizes=\"(max-width: 735px) 100vw, 735px\" \/><\/a><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><a href=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_4.png\"><img loading=\"lazy\" decoding=\"async\" width=\"735\" height=\"516\" src=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_4.png\" alt=\"\" data-id=\"1395\" data-full-url=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_4.png\" data-link=\"http:\/\/www.daniel.slask.pl\/?attachment_id=1395\" class=\"wp-image-1395\" srcset=\"https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_4.png 735w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_4-300x211.png 300w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_4-400x281.png 400w\" sizes=\"(max-width: 735px) 100vw, 735px\" \/><\/a><\/figure><\/li><\/ul><\/figure>\n\n\n\n<p>Po zako\u0144czeniu konfiguracji mamy ju\u017c wst\u0119pnie&nbsp; utworzony projekt, wraz z programem <em><strong>main.c<\/strong><\/em>. Aby otworzy\u0107 g\u0142\u00f3wny plik programu w drzewie projekt\u00f3w wybieramy utworzony wcze\u015bniej projekt, nast\u0119pnie przechodzimy do <strong>Source Files<\/strong> i rozwijamy go. Tutaj znajdowa\u0107 si\u0119 b\u0119d\u0105 wszystko pliki \u017ar\u00f3d\u0142owego do\u0142\u0105czane do naszego projektu. Otwieramy plik <em><strong>main.c<\/strong><\/em>. Jest on ju\u017c wst\u0119pnie wype\u0142niony. Do\u0142\u0105czone s\u0105 podstawowe pliki nag\u0142\u00f3wkowe &#8211; standardowa biblioteka, oraz biblioteka obs\u0142ugi wej\u015b\u0107 i wyj\u015b\u0107. W pliku tym znajduje si\u0119 r\u00f3wnie\u017c pierwsza struktura programu &#8211; w niej si\u0119 wszystko dzieje ;). W funkcji <em><strong>main<\/strong><\/em>, przed <em><strong>return <\/strong><\/em>wpiszemy pierwszy program, kt\u00f3ry spowoduje wy\u015bwietlenie w konsoli hello world. Dopisujemy wi\u0119c:<\/p>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<pre class=\"wp-block-code\"><code lang=\"csharp\" class=\"language-csharp\">printf(\"Hello World\\n\");<\/code><\/pre>\n<\/div><\/div>\n<\/div><\/div>\n\n\n\n<p><em>printf <\/em>powoduje wy\u015bwietlenie tekstu kt\u00f3ry znajduje si\u0119 w nawiasach. Tak wi\u0119c nasz program b\u0119dzie wygl\u0105da\u0142 tak:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"csharp\" class=\"language-csharp line-numbers\">int main(int argc, char** argv){\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 printf(\"Hello World!\\n\");\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 return (EXIT_SUCCESS);\n}<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-gallery columns-3 is-cropped wp-block-gallery-2 is-layout-flex wp-block-gallery-is-layout-flex\"><ul class=\"blocks-gallery-grid\"><li class=\"blocks-gallery-item\"><figure><a href=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_5.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1339\" height=\"1040\" src=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_5.png\" alt=\"\" data-id=\"1396\" data-full-url=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_5.png\" data-link=\"http:\/\/www.daniel.slask.pl\/?attachment_id=1396\" class=\"wp-image-1396\" srcset=\"https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_5.png 1339w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_5-300x233.png 300w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_5-768x597.png 768w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_5-956x743.png 956w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_5-400x311.png 400w\" sizes=\"(max-width: 1339px) 100vw, 1339px\" \/><\/a><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><a href=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_6.png\"><img loading=\"lazy\" decoding=\"async\" width=\"863\" height=\"621\" src=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_6.png\" alt=\"\" data-id=\"1397\" data-full-url=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_6.png\" data-link=\"http:\/\/www.daniel.slask.pl\/?attachment_id=1397\" class=\"wp-image-1397\" srcset=\"https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_6.png 863w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_6-300x216.png 300w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_6-768x553.png 768w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_6-400x288.png 400w\" sizes=\"(max-width: 863px) 100vw, 863px\" \/><\/a><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><a href=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_7.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1401\" height=\"325\" src=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_7.png\" alt=\"\" data-id=\"1398\" data-full-url=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_7.png\" data-link=\"http:\/\/www.daniel.slask.pl\/?attachment_id=1398\" class=\"wp-image-1398\" srcset=\"https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_7.png 1401w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_7-300x70.png 300w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_7-768x178.png 768w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_7-956x222.png 956w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_7-400x93.png 400w\" sizes=\"(max-width: 1401px) 100vw, 1401px\" \/><\/a><\/figure><\/li><\/ul><\/figure>\n\n\n\n<p>Po wpisaniu kodu wybieramy typ kompilacji &#8211; na pocz\u0105tku proponuj\u0119 pracowa\u0107 na <strong><em>DEBUG<\/em><\/strong>. Nast\u0119pnie budujemy (kompilujemy) nasz program, poprzez wybranie <strong>Build Project <\/strong>(nazwa naszego projektu). W oknie na samym dole programu <em>netbeans<\/em>, widzimy przebieg kompilacja. Tutaj r\u00f3wnie\u017c znajduj\u0105 si\u0119 informacje o ewentualnych b\u0142\u0119dach &#8211; errory i warningi. Po prawid\u0142owo skompilowanym programie przysz\u0142a pora na uruchomienie naszego programu &#8211; przetestowanie go. Mo\u017cemy to zrobi\u0107 bez logowania si\u0119 do rpi, poprzez wybranie opcji Run Project. Po uruchomieniu programu, w dolnej cz\u0119\u015bci netbeans pojawi si\u0119 terminal po\u0142\u0105czony z RPI &#8211; w nim zobaczymy rezultat uruchomionego programu. HELLO WORLD!! <\/p>\n\n\n\n<p>Gratuluj\u0119 &#8211; mamy pierwszy program skompilowany i uruchomiony na naszej malince. Ale zaraz, zaraz &#8211; na razie uruchomili\u015bmy go z terminala naszego IDE. Przejd\u017amy wi\u0119c do putty i po\u0142\u0105czmy si\u0119 z nasz\u0105 malink\u0105. Nast\u0119pnie wpiszmy <strong><em>cd \/home\/pi&#8230;. <\/em><\/strong>(tutaj pe\u0142ny adres katalogu gdzie zapisa\u0142 si\u0119 nasz projekt)&#8230; Niestety musimy znale\u017a\u0107 gdzie nasz plik si\u0119 znajduje. Poni\u017cej adres gdzie znajdowa\u0142 si\u0119 m\u00f3j program, wg niego dopasujcie swoj\u0105 \u015bcie\u017ck\u0119:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"bash\" class=\"language-bash\">cd RPI\/T01_HelloWorld\/dist\/Debug\/GNU-Linux\/<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-gallery columns-3 is-cropped wp-block-gallery-3 is-layout-flex wp-block-gallery-is-layout-flex\"><ul class=\"blocks-gallery-grid\"><li class=\"blocks-gallery-item\"><figure><a href=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_10.png\"><img loading=\"lazy\" decoding=\"async\" width=\"675\" height=\"425\" src=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_10.png\" alt=\"\" data-id=\"1399\" data-full-url=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_10.png\" data-link=\"http:\/\/www.daniel.slask.pl\/?attachment_id=1399\" class=\"wp-image-1399\" srcset=\"https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_10.png 675w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_10-300x189.png 300w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_10-400x252.png 400w\" sizes=\"(max-width: 675px) 100vw, 675px\" \/><\/a><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><a href=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_8.png\"><img loading=\"lazy\" decoding=\"async\" width=\"699\" height=\"164\" src=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_8.png\" alt=\"\" data-id=\"1400\" data-full-url=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_8.png\" data-link=\"http:\/\/www.daniel.slask.pl\/?attachment_id=1400\" class=\"wp-image-1400\" srcset=\"https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_8.png 699w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_8-300x70.png 300w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_8-400x94.png 400w\" sizes=\"(max-width: 699px) 100vw, 699px\" \/><\/a><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><a href=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_9.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1404\" height=\"912\" src=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_9.png\" alt=\"\" data-id=\"1401\" data-full-url=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_9.png\" data-link=\"http:\/\/www.daniel.slask.pl\/?attachment_id=1401\" class=\"wp-image-1401\" srcset=\"https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_9.png 1404w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_9-300x195.png 300w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_9-768x499.png 768w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_9-956x621.png 956w, https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_9-400x260.png 400w\" sizes=\"(max-width: 1404px) 100vw, 1404px\" \/><\/a><\/figure><\/li><\/ul><\/figure>\n\n\n\n<p>Aby uruchomi\u0107 nasz program wpisujemy:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"bash\" class=\"language-bash\">.\/t01_helloworld<\/code><\/pre>\n\n\n\n<p>Jest to nazwa pliku zwi\u0105zana z nazw\u0105 naszego projektu. Tym\noznaczeniem .\/ powodujemy wykonanie naszego programu. Po wykonaniu tego\npolecenia zobaczymy kolejne przywitanie si\u0119 z \u015bwiatem.<\/p>\n\n\n\n<p>Teraz zwi\u0119kszmy nasz program o nast\u0119puj\u0105c\u0105 linijki:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"csharp\" class=\"language-csharp line-numbers\">char dane[] = \"danielo88.cba.pl\";\nprintf(\"\\n\\rOdwiedzajcie %s\\n\\r\", dane);<\/code><\/pre>\n\n\n\n<p>Spowoduj\u0105 one wy\u015bwietlenie dodatkowego ci\u0105gu znak\u00f3w, wykorzystuj\u0105c tablic\u0119 znak\u00f3w char, oraz przepisanie\/dodanie znak\u00f3w z tej tablicy do ci\u0105gu znak\u00f3w znajduj\u0105cych si\u0119 w <strong><em>printf<\/em><\/strong>. <\/p>\n\n\n\n<p>Poni\u017cej jak powinien wygl\u0105da\u0107 ca\u0142y kod. Doda\u0142em r\u00f3wnie\u017c w nim miganie diod\u0105 co 1s, przy wykorzystaniu biblioteki <strong><em>wiringpi <\/em><\/strong>(tutaj <a href=\"http:\/\/wiringpi.com\/\">link<\/a>). Niestety projekt ten zosta\u0142 zako\u0144czony poprzez malkonent\u00f3w, kt\u00f3rzy zniech\u0119cili autora tej biblioteki. Nie b\u0119d\u0119 na chwil\u0119 obecn\u0105 przedstawia\u0142 jak si\u0119 t\u0105 bibliotek\u0105 obs\u0142uguje wej\u015bcia i wyj\u015bcia &#8211; na to po\u015bwi\u0119c\u0119 osobny wpis. Chcia\u0142em jedynie pokaza\u0107 jak wygl\u0105da wysterowywanie wyj\u015b\u0107 w <strong><em>rpi<\/em><\/strong>. Je\u017celi chcecie mo\u017cecie sami spr\u00f3bowa\u0107 doda\u0107 ta bibliotek\u0119 do rpi, oraz do IDE &#8211; wszystkie niezb\u0119dne informacje znajduj\u0105 si\u0119 na stronie autora projektu.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"csharp\" class=\"language-csharp line-numbers\">#include &lt;stdio.h>\n#include &lt;stdlib.h>\n#include \"wiringPi.h\"\nint main(int argc, char** argv){\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \/\/konfigiracja\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 pinMode(24,OUTPUT);\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \/\/program\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 printf(\"Hello World!\\n\");\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 digitalWrite(24,1);\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \/\/wpisz do pinu 24 - 1 logiczne\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 delay(1000);\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \/\/op\u00f3\u017anienie 1000ms\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 digitalWrite(24,0);\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \/\/wpisz do pinu 24 - 0 logiczne\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 delay(1000);\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \/\/op\u00f3\u017anienie 1000ms\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 char dane[] = \"danielo88.cba.pl\";\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 printf(\"\\n\\rOdwiedzajcie %s\\n\\r\", dane);\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 return (EXIT_SUCCESS);\n}<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-thumbnail\"><a href=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_11.png\"><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"http:\/\/www.daniel.slask.pl\/m\/wp-content\/uploads\/2020\/04\/hello_world_11-150x150.png\" alt=\"\" class=\"wp-image-1402\"\/><\/a><\/figure>\n\n\n\n<p>Tak wi\u0119c po uruchomieniu programu mamy wy\u015bwietlon\u0105 drug\u0105\nlinijk\u0119, oraz w przypadku je\u017celi uda\u0142o Ci si\u0119 do\u0142\u0105czy\u0107 wiringPi do projektu, to\nr\u00f3wnie\u017c dioda b\u0119dzie Ci miga\u0107.<\/p>\n\n\n\n<p>Mam nadziej\u0119, \u017ce uda\u0142o mi si\u0119 w prosty spos\u00f3b pokaza\u0107\npierwsze kroki w pisaniu programu na rpi, oraz jego uruchamianie. Je\u017celi w\njakim\u015b miejscu pope\u0142ni\u0142em b\u0142\u0119dy prosz\u0119 o wyrozumia\u0142o\u015b\u0107 i napisanie w komentarzu\ngdzie znalaz\u0142e\u015b b\u0142\u0105d.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Jak zwykle bywa przy pocz\u0105tkach programowania, pierwszym programem jest hello world, b\u0105d\u017a migaj\u0105ca dioda, kt\u00f3ra zast\u0119puje przywitanie si\u0119 ze \u015bwiatem zewn\u0119trznym. Jaki\u015b czas temu przedstawi\u0142em konfiguracj\u0119 programu netbeans do cross-compilation dla naszej malinki, natomiast tym razem przedstawi\u0119 w jaki spos\u00f3b&#8230;<br \/><a class=\"read-more-button\" href=\"https:\/\/daniel.slask.pl\/m\/hello-world-pierwszy-program-na-rpi-podstawy-programowania-w-c-na-rpi\/\">Wi\u0119cej<\/a><\/p>\n","protected":false},"author":1,"featured_media":1348,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[125,208,49,178],"tags":[33,201,65,202,191,163,214],"views":274,"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"https:\/\/daniel.slask.pl\/m\/wp-content\/uploads\/2020\/05\/RPI_and_C.png","jetpack_shortlink":"https:\/\/wp.me\/pcPgV3-mq","_links":{"self":[{"href":"https:\/\/daniel.slask.pl\/m\/wp-json\/wp\/v2\/posts\/1390"}],"collection":[{"href":"https:\/\/daniel.slask.pl\/m\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/daniel.slask.pl\/m\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/daniel.slask.pl\/m\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/daniel.slask.pl\/m\/wp-json\/wp\/v2\/comments?post=1390"}],"version-history":[{"count":10,"href":"https:\/\/daniel.slask.pl\/m\/wp-json\/wp\/v2\/posts\/1390\/revisions"}],"predecessor-version":[{"id":1600,"href":"https:\/\/daniel.slask.pl\/m\/wp-json\/wp\/v2\/posts\/1390\/revisions\/1600"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/daniel.slask.pl\/m\/wp-json\/wp\/v2\/media\/1348"}],"wp:attachment":[{"href":"https:\/\/daniel.slask.pl\/m\/wp-json\/wp\/v2\/media?parent=1390"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/daniel.slask.pl\/m\/wp-json\/wp\/v2\/categories?post=1390"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/daniel.slask.pl\/m\/wp-json\/wp\/v2\/tags?post=1390"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}