Kootut ohjeet¶
Näiden ohjeiden avulla pääset kiinni ohjelmointiharjoituksiin työasemaluokissa ja kotona.
Sinulta odotetaan ohjelmoinnin alkeiden esitehtävissä ja ohjeissa opastettujen taitojen osaaminen. Jos esimerkiksi tekstieditorin tai komentokehotteen käytön osaamisessa on puutteita, kertaa nämä ohjeet kyseiseltä sivulta.
Työasemaluokat¶
Tällä kurssilla on käytössä PC-luokkien (TS135 ja TS137) työasemilta löytyvät virtuaalikone, johon on asennettu tarvittavat ohjelmat kurssin tehtävien suorittamiseen, sekä selainpohjainen CCS Cloud-ohjelmointiympäristö SensorTag:n ohjelmointiin.
Virtuaalikone on nimeltään TKJ_harjoitukset, ja se sisältää:
- C-kääntäjän gcc ja tekstieditorin kate (Johdatus Tietokonejärjestelmiin)
- Myös CCS Cloud-kehitysympäristön (Johdatus Tietokonejärjestelmiin). Mutta tämä asennus on hitaampi kuin natiiviasennus.
- y86-simulaattorin Assembly-tehtävien suorittamiseen (Tietokonejärjestelmät)
Virtuaalikoneen löytää nimen perusteella PC-koneen Windowsin käynnistä-valikosta, ja sen saa helposti esiin painamalla ⊞ Win-näppäintä ja kirjoittamalla aukeavaan kenttään virtuaalikoneen nimen tai alkuosan nimestä.
Virtuaalikoneille tallennetut tiedostot häviävät koneiden käytön välissä, joten muista kopioida koodisi talteen harjoitusten jälkeen!
CCS Cloud-ympäristön ohjelmointia opettelemme kurssilla pakollisessa laboratorioharjoituksessa.
C-kielen harjoitustehtävät¶
Tämän virtuaalikoneen pohjana on Ubuntu 16.04.3 – pääset siis käyttämään Linuxia. C-ohjelmoinnin opiskelu ja siihen liittyvien työkalujen käyttö Windowsista käsin on kyseenalaista touhua, joten tästä saat taatusti eväitä myös työelämään. Eikä se Linux lopulta niin pelottava olekaan.
Virtuaalikoneelta löydät näytön vasemmasta laidasta palkin, josta voit käynnistää selaimen (Firefox), tekstieditorin (Kate) ja terminaalin.
Koneelta löytyy myös valmiiksi asennettuna tarvittavat työkalut C-koodin kääntämiseen ja konekieleksi käännettyjen binäärien ihmettelyyn, kuten gcc ja clang.
Huom! Jos virtuaalikoneen Internet-yhteys lakkaa mystisesti toimimasta, klikkaa oikean yläkulman palkin näppäintä, jossa on nuolet ylös- ja alaspäin, valitse aukeavasta valikosta Disconnect ja sen jälkeen Wired connection.
C-kääntäjän asentaminen ja käyttäminen¶
Näillä ohjeilla saat kääntäjän kotikoneelle.
Windows¶
Asennus:
- Lataa mingw-w64.
- Käynnistä asennusohjelma ja valitse arkkitehtuuriksi x86_64.
- Klikkaile Nextiä ja anna ohjelman asentua.
Käyttö:
- Avaa hakemisto, johon asensit mingw-w64:n, oletushakemisto on jotain
C:\Program Files\mingw-w64\x86_64-6.2.0-posix-seh-rt_v5-rev0
suuntaista. - Käynnistä hakemistosta löytyvä
mingw-w64.bat
, joka käynnistää komentokehotteen, jonka PATH-ympäristömuuttujaan on lisätty mingw-w64:n bin-alihakemisto, mikä mahdollistaa gcc-käskyn helpon käyttämisen. (Voit myös halutessasi itse lisätä kyseisen bin-hakemiston Windowsin yleiseen PATH-ympäristömuuttujaan, jolloin voit käynnistää cmd-komentokehotteen tai esimerkiksi ConsoleZ:n ja käyttää gcc:tä niiden kautta.) - Kirjoita komentokehotteeseen
gcc
ja paina Enter – jos kaikki meni oikein, ruudulle pitäisi ilmestyä seuraavanlainen virheilmoitus:
gcc: fatal error: no input files compilation terminated.
Windowsille on olemassa useita kehitysympäristöjä C-koodin kirjoittamiseen ja kääntämiseen. Lähes kaikki ilmaiset versiot käyttävät tässä esiteltyä GCC-kääntäjää (MinGW). Nämä toimivat vaihtelevasti eri Windows-versioilla.
Dev-C++
CodeLite
Code::Blocks
Eclipse CDT
CodeLite
Code::Blocks
Eclipse CDT
Linux¶
Asenna jakelusi paketinhallintaa käyttämällä gcc.
- Debianissa ja Ubuntussa tämä onnistuu helposti (terminaalista) komennolla
sudo apt-get install gcc
. - RHEL-pohjaisissa jakeluissa (Fedora, CentOS jne.) apt-getin sijaan voit käyttää
yum
-käskyä. - Gentoossa vastaava asennusohjelma on (ainakin ollut?)
emerge
, ja Arch Linuxissapacman
.
Käyttö:
- Avaa käyttämäsi terminaaliohjelma (esimerkiksi konsole, gnome-terminal, urxvt, xterm, …)
- Kirjoita terminaaliin
gcc
ja paina Enter – jos gcc löytyy koneelta, ruudulle pitäisi ilmestyä seuraavanlainen virheilmoitus:
gcc: fatal error: no input files compilation terminated.
macOS¶
Asennus:
- Asenna XCode Applen virallisesta lähteestä. Saatat joutua luomaan käyttäjätunnuksen.
Vaihtoehtoinen asennus:
- Asenna Homebrew seuraamalla Homebrew’n omia ohjeita.
- Avaa terminaali-ikkuna (Pääte).
- Syötä komento
brew install gcc
ja paina Enter.
Käyttö:
- Avaa terminaali-ikkuna (Pääte).
- Kirjoita terminaaliin
gcc
ja paina Enter – jos kaikki sujui oikein, ruudulle pitäisi ilmestyä seuraavanlainen virheilmoitus:
gcc: fatal error: no input files compilation terminated.
Online-kääntäjiä netissä¶
Edellämainittujen lisäksi internetistä löytyy online-kääntäjiä esim. hakusanoilla: c online compiler.
Näillä voi kokeilla C-ohjelmia asentamatta mitään omalle koneelleen. Esimerkiksi useita eri kieliä kääntävä ja suorittava Codepad tuntuu toimivan.
Tiedostojen siirtäminen koneiden välllä¶
Huomioitavaa:
- Seuraavissa ohjeissa käyttäjätunnus on käyttäjätunnuksesi osaston verkon koneille (eli se sama, jolla kirjaudut työasemalle).
- Jos scp-käsky kyselee avaimesta, kirjoita
yes
ja paina Enter. - Salasana ei näy kirjoitettaessa, mutta kyllä se sinne silti menee. Ole huolellinen ja varmista, että Caps Lock ei ole päällä.
Perinteisesti¶
Kuljeta mukana USB-muistitikkua, jolle kopioit koodisi.
Työasemassa¶
Käyttäjällä pitäisi näkyä K:-levy mistä löytyy kotihakemisto yliopiston palvelimilta.
Koodit pitää tietysti kopioida virtuaalikoneelta työasemalle, ennenkuin K:-asemaa voi käyttää.
Virtuaalikoneelta osaston palvelimelle talteen¶
Avaa terminaali, ja näppäile sinne seuraava käsky:
missä tiedostojen 1–3 tilalle voit kirjottaa niiden tiedostojen nimet, jotka haluat kopioida talteen. Huomaa, että kaksoispiste on osa käskyä.
scp tiedosto1 tiedosto2 tiedosto3 käyttäjätunnus@st-cn0001.oulu.fi:
,missä tiedostojen 1–3 tilalle voit kirjottaa niiden tiedostojen nimet, jotka haluat kopioida talteen. Huomaa, että kaksoispiste on osa käskyä.
Osaston palvelimelta virtuaalikoneelle¶
Avaa terminaali, ja näppäile sinne seuraava käsky:
missä tiedostojen 1–3 tilalle voit kirjottaa niiden tiedostojen nimet, jotka haluat kopioida virtuaalikoneelle. Huomaa, että kaksoispiste ja kenoviivat ovat osa käskyä, ja tiedostojen ja pilkkujen väleissä ei ole välilyöntejä. Huomaa myös lopussa välilyönnillä erotettu piste – se tarkoittaa, että kohdehakemisto on nykyinen hakemisto.
scp käyttäjätunnus@st-cn0001.oulu.fi:\{tiedosto1,tiedosto2,tiedosto3\} .
,missä tiedostojen 1–3 tilalle voit kirjottaa niiden tiedostojen nimet, jotka haluat kopioida virtuaalikoneelle. Huomaa, että kaksoispiste ja kenoviivat ovat osa käskyä, ja tiedostojen ja pilkkujen väleissä ei ole välilyöntejä. Huomaa myös lopussa välilyönnillä erotettu piste – se tarkoittaa, että kohdehakemisto on nykyinen hakemisto.
Kotoa osaston palvelimelle ja osaston palvelimelta kotiin¶
Kertaa ohjelmoinnin alkeiden esitehtävät ja ohjeet!
Sulautetun laitteen ohjelmointi¶
Kurssilla käytettävän ohjelmointiympäristön CCS Cloudin saa päälle Chrome-selaimella osoitteesta dev.ti.com työasemaluokissa. Kun kirjaudutte sisään palveluun, saatte käyttöön pilvipalveluun tallennetut omat koodit.
- Työasema automaattisesti tunnistaa siihen liitetyn SensorTag-laitteen. Liittäkää laite ehdottomasti USB 3.0-porttiin (sininen portti) työasemassa, muuten sen ohjelmointi on hiiiiiiidaaaaastaaaaa (Ohjelmoinnin Alkeiden kurssilaiset saa teidät kiinni odotellessa..).
- Jos käytätte työaseman CCS Cloud-asennusta, menkää Chrome-selaimella www-osoitteeseen
dev.ti.com/ide
. (Tämä asennus ei toimi työasemassa muilla selaimilla.) - Jos käytätte virtuaalikonetta..
- Kun laitteen kytkee USB:hen virtuaalikoneessa, tulee ruudulle ilmoitus "The following devices... Texas Instruments XDS110.." Tähän vastataan OK.
- Tämän lisäksi voi joutua kytkemään laitteen virtuaalikoneeseen oikeasta ylänurkasta (sininen pieni ikoni
<<
), josta näkee kaikki kytketyt USB-laitteet. Hiiren napilla näkee mitä laitetta jokainen ikoni vastaa ja jos "Texas Instruments XDS110"-ikoni on harmaana, oikeasta napista aukeaa menu josta valitaan kohta "Connect". Nyt laite on CCS Cloudin käytössä. - Valmistaja tarjoaa myös Code Composer Studio-kehitysympäristön (joka kelpaa myös ammattikäyttöön), jonka voi asentaa itse kotiin / läppärille. Tämä ohjelmisto vaatii lisenssin, joka kurssilla kulkee SensorTag-laitteen mukana.
Kurssilla opettelemme laitteen ohjelmoinnin laboratorioharjoituksissa, joten näihin ohjeisiin ei tarvitse vielä itse perehtyä.