NOKEVAL SCL. Käyttöohje

Koko: px
Aloita esitys sivulta:

Download "1.12.2006 NOKEVAL SCL. Käyttöohje"

Transkriptio

1 NOKEVAL SCL Käyttöohje

2 PROTOKOLLA Sarjaliikenneasetelut Nokevalin laitteet käyttävät poikkeuksetta 8N1-bittiprotokollaa, eli 8 databittiä, ei pariteettibittiä ja yksi stopbitti. Baudinopeuksia on laitteesta riippuen valittavissa useita. Useimmat laitteet on tehdasaseteltu 9600 bittiin sekunnissa. Alla esiteltävät alku- ja loppumerkit ja tarkistustavut ovat yhden tavun mittaisia. Itse komennon kukin kirjain vie samaten yhden tavun. Komentopaketti Komento muodostuu kirjaimista ja numeroista. Kunkin laitteen tuntemat komennot on esitelty sen käyttöohjeessa, mutta yleisimpiä komentoja on esitelty myös tässä ohjeessa. Komento paketoidaan SCL-komentopaketiksi lisäämällä sen eteen alkumerkki ja perään loppumerkki sekä tarkistustavu. ID komento ETX BCC Alkumerkki ID Alkumerkki on SCL-protokollassa ainoa tavu, jonka ylin bitti on asettunut. Siitä laitteet tietävät, että uusi komentopaketti alkaa. Se muodostetaan kohdelaitteen osoitteesta (0 123) asettamalla ylin bitti päälle, minkä voi ajatella myös luvun 128 (heksadesimaalina 80) lisäämisenä osoitteeseen. Osoite 126 on varattu yleiskutsulle, jotta tuntemattomassa osoitteessa olevalle laitteelle saadaan yhteys. Väylällä ei tällöin saa luonnollisesti olla kuin yksi laite. Vain tietyt Nokeval-laitteet ymmärtävät yleiskutsun. Huom: Alkumerkki on siis yksi tavu, eikä sarja erillisiä numeroita (esim 1, 2 ja 8) ascii-koodattuna. Komento Itse komento, kuten mainittu, lähetetään sellaisenaan. Komento voi olla esimerkiksi MEA CH 1? (ilman lainausmerkkejä). Loppumerkki ETX Komennon loppumerkki ETX on tavu, jonka arvo on 3. Ei siis ascii-merkki 3. Tarkistustavu BCC Tarkistustavulla kohdelaite varmistaa, että komento on tullut muuttumattomana perille. Se on yksi tavu, joka saadaan laskemalla XOR-operaatio eli ehdoton tai itse komennon tavuista ja ETX:stä. Joissakin laitteissa (kenttänäytöissä) on mahdollista valita, vaatiiko laite ollenkaan tarkistustavua. Tarkistustavun laskenta saattaa joissakin sovelluksissa olla mahdotonta. Esimerkki paketista Lähetetään komento MEA CH 1? laitteelle, jonka osoite on 1. Alla komentopaketti, vastaavat tavujen arvot heksadesimaalilukuina:

3 <ID> M E A C H 1? <ETX> <BCC> 81 4D F 03 6F Tarkistustavu 6F on saatu laskemalla XOR kaikista tavuista paitsi ID:stä ( tarkoittaa XORoperaatiota): 4D F 03 = 6F Vastauspaketti Kun laite saa komennon, se vastaa vastauspaketilla. Niitä on kahta lajia, normaalia vastausta (ACK) ja virhevastausta (NAK). Normaali vastaus Vastaus alkaa vastauksen alkumerkillä ACK (tavun arvo 6), sitten tulee itse vastaus asciimerkkeinä, loppumerkki ETX (3) ja vastauksen tarkistustavu BCC. ACK vastaus ETX BCC BCC lasketaan samoin kuin komennossa XOR-operaatiolla. Vastauksessa myös alkumerkki otetaan mukaan laskentaan. Laite laskee tarkistustavun, ja käyttäjä voi joko tarkistaa sen tai jättää huomiotta. Mittaustuloksen ollessa esimerkiksi 21.3 saadaan paneelimittarilta/lähettimeltä vastaus seuraavassa muodossa (tavut esitetty heksadesimaalilukuina): <ACK> <ETX> <BCC> E B Eräät komennot palauttavat tyhjän vastauksen, eli pelkät ACK, ETX ja BCC. Näitä ovat mm DISP-, OUT- ja DO-komennot. Virhevastaus Jos tiedonsiirrossa tulee virhe, laite saattaa palauttaa siitä ilmoituksen virhevastauspakettina. Se alkaa ACK:n sijasta NAK-tavulla (arvo 21 eli heksadesimaalina 15), ja itse vastaus on kokonaisluku, virhenumero, joka koostuu ascii-merkeistä 0-9. NAK virhenumero ETX BCC Virhenumeron tarkka merkitys selviää varmimmin laitteen käyttöohjeesta, mutta yleisimpiä ovat: 0 Laite ei valmis vastaamaan yritä hetken päästä uudelleen 1 Sarjaliikennepuskurin ylivuoto liian pitkä komento 2 Timeout vastaanotossa komento jäänyt kesken 3 Tarkistussummavirhe komennossa häiriö tiedonsiirrossa 4 Komento tuntematon tai virheellinen 5 Ensimmäinen parametri virheellinen 6 Toinen parametri virheellinen 7 jne

4 YLEISIMPIÄ KOMENTOJA Laitekyselyt TYPE? Laite palauttaa tyyppinimensä ja ohjelmaversionsa, esimerkiksi 7100 V1.0 (ei lainausmerkkejä). SN? Laite palauttaa sarjanumeronsa, esimerkiksi A DR? --ei käytetä-- Laite palauttaa tiedon kanaviensa määrästä. Vastaus koostuu useasta kokonaisluvusta, jotka on erotettu välilyönnein. Lukuja voi olla mikä määrä tahansa, mutta niiden merkitykset ovat: 1. Mittauskanavien lukumäärä (MEA-komento) 2. Analogisten lähtöjen määrä (OUT-komento) 3. Digitaalisten tulojen määrä (DI-komento) 4. Digitaalisten lähtöjen määrä (DO-komento) 5. Näppäinten määrä (KEYB-komento) 6. Näytön merkkimäärä (DISP-komento) 7. Tulevaisuuden lisäyksiä Mittaustuloksen haku MEA MEA CH 1? Laite palauttaa viimeisimmän mittaustuloksen kanavalta 1 ascii-merkkeinä. Käytössä ovat välilyönti, miinusmerkki, numerot 0-9 sekä piste. Mittaustuloksen edessä saattaa olla välilyöntejä. Kanavanumerointi alkaa yleensä ykkösestä. Esimerkki vastauksesta: 21.3 (ilman lainausmerkkejä). MEA SCAN 1 4 Palauttaa kanavien 1-4 mittaustulokset. Tulokset tulevat yhdessä vastauspaketissa ja ne on erotettu toisistaan yhdellä tai useammalla välilyönnillä. Esimerkki vastauksesta: MEA LIST Palauttaa kolmen kanavan - kanavien 1, 2 ja 7 - mittaustulokset samassa muodossa kuin MEA SCAN. Lähtöviestien ohjaus OUT OUT CH Määrää laitetta asettamaa lähtöviestinsä kanavalla 1 arvoon Laitteessa on yleensä skaalaus, jolla valitaan, mitä fyysistä lähtöviestin arvoa kukin ohjausarvo vastaa. Laite palauttaa tyhjän vastauksen.

5 OUT SCAN Asettaa kerralla lähtöviestit kanaville 1-4. Digitaalilinjojen ohjaus DI ja DO DI CH 1? Palauttaa sisääntulon 1 tilan. Vastaus on ascii-merkki 0 tai 1. DI SCAN 1 4 Palauttaa sisääntulojen 1-4 arvot yhdessä vastauksessa välilyönnein erotettuna, esim DO CH 1 0 Asettaa digitaalilähdön 1 tilaan 0. Laite palauttaa tyhjän vastauksen. DO SCAN Nollaa neljä ensimmäistä digitaalilähtöä. Näytön ohjaus DISP DISP MORO Lähettää laitteen näytölle tekstin MORO. Laite palauttaa tyhjän vastauksen.

6 VIANETSINTÄÄ Usein käy niin, että on hankittu laitteet, kytketty ne ja kirjoitettu vielä itse ohjelma, eikä tietoa saadakaan kulkemaan. Ja vika voi olla missä vain. Jotta ohjelmaa ei tarvitse epäillä, kannattaa ensin käyttää tunnetuksi todettua ohjelmaa. Nokevalilta saa ilmaiseksi SCL-testiohjelman nimeltään Sicala. Siihen valitaan sarjaportti, baudinopeus ja laitteen osoite, sekä kirjoitetaan komento. Jos laite ei tähän vastaa, lähdetään vikaa etsimään kytkennöistä. Ensiksi tietysti varmistetaan laitteiden asettelut (baudinopeus, osoite). Ja varmistetaan että laitteet saavat sähköä. Lähettimien ollessa kyseessä käytä yleismittaria ja varmista myös napaisuus. RS-232-väylässä on huomioitava, että laitteiden TX ja RX pitää kytkeä ristiin. Mittaa kummankin linjan jännite yleismittarilla RS-232:n Commonia vastaan. Molemmissa linjoissa pitää olla vähintään 3 V negatiivista jännitettä, tyypillisesti 10 V. RS-485:ssä kytketään D1 D1:een ja D0 D0:aan. Aiemmin Nokeval nimesi linjat A:ksi ja B:ksi, mutta koska jotkut valmistajat käyttävät nimiä päinvastaisessa merkityksessä kuin toiset, siirryttiin Modbus-suosituksen mukaiseen nimeämiseen. D1 on tyhjäkäynnillä positiivisempi, entinen Nokevalin A. Tunnetaan myös nimellä +.. Tyhjäkäyvässä RS-485-väylässä mittaa jännite D1:n (A, +) ja D0:n (B, -) väliltä joka laitteella. Yli 0.1 V Normaali tyhjäkäynti. 0.0 V Fail-safet antavalla laitteella (yleensä RS-485-muunnin) ei ole sähköä. Yhdessäkään laitteessa ei ole fail-safet kytketty. Suositellaan kytkettäväksi RS-485- muuntimessa. Negatiivinen jännite D1- ja D0-linjat ristissä. Korjaa. Mittaa napaisuus joka laitteelta erikseen!

7 OHJEITA OHJELMOIJALLE Komennon muodostus Komentopaketti on helppo muodostaa, kunhan saa XOR-operaation onnistumaan. C-kielessä sen voisi laskea esim näin: int bcc( char *s ) { int b = 0; while( *s ) b = b ^ (*s++); return b; } Ennen lähetystä kannattaa tyhjentää vastaanottopuskuri. Vastaanotto Vastaanotto on hankalampi kuin komento: on osattava päätellä, milloin paketti on kokonaan tullut, ja on osattava luovuttaa jos vastausta ei kuulu. Vastaanotosta saa parhaan, kun tekee sen tilamuuttujan avulla. Tilamuuttuja pitää kirjaa, missä kohtaa vastaanottopakettia edetään. Alla esitetty vastaanottoalgoritmi sietää hyvin virheitä, esimerkiksi ennen vastausta tulevia häiriötavuja sekä oman komennon kuulemista kaikuna. Otetaan siis käyttöön tilamuuttuja T, joka saa arvoja: 0. Odotetaan alkumerkkiä 1. Luetaan itse vastausta, odotetaan loppumerkkiä 2. Odotetaan tarkistussummaa 3. Paketti valmis Lisäksi varataan muuttuja B tarkistustavun laskentaan ja E virheitä muistamaan. E:=0 //ei vielä virheitä T:=0 //odotetaan alkumerkkiä Toista Onko tullut tavu A sarjaportista, ON: Onko (T=0 tai T=1) ja (A=6 tai A=21), ON: //alkumerkki tuli T:=1 //siirrytään vastauksen vastaanottoon B:=A //tyhjennetään tarkistustavu Tyhjennä vastausmerkkijono Onko A=21, ON: //NAK-vastaus E:=1 //virhevastauksen merkiksi EI: E:=0 //unohdetaan menneet, uusi paketti alkaa Entä onko T=1, ON: //vastaanotetaan itse vastausta B:=B XOR A //lasketaan tarkistustavua Onko A=3, ON: //loppumerkki ETX tuli T:=2 //siirrytään tarkistussummaa odottamaan EI: Talleta tavu A vastausmerkkijonoon Entä onko T=2, ON: //vastaanotetaan tarkistussumma Onko B=A, EI:

8 E:=2 //tarkistussummavirheen merkiksi T:=3 //paketti tullut kokonaan Onko komennosta kulunut yli 2 sekuntia, ON: E:=3 //timeout Kunnes T=3 tai E=3 Jos E=0, on saatu kunnollinen vastaus. Algoritmi esitetty Visual Basicille (versio 6, mutta toimii myös vanhemmissa kun tarkistaa sarjaliikenneobjektin nimen) liitteessä A.

9 LIITE A: VB6-ESIMERKKI Tässä esitellään kolme kätevää funktiota, joita voi käyttää sellaisenaan Nokevalin laitteiden ohjaukseen SCL-protokollalla. Vedä ohjelmaasi sarjaliikenneobjekti MSComm1, esimerkissämme se on Form1-ikkunassa. Alusta sarjaportti kutsulla InitCom-funktioon, ja jos sarjaliikenneasettelut muuttuvat, kutsu uudelleen. Funktio palauttaa nollan jos operaatio onnistui. Ellei onnistunut, on sarjaportti luultavimmin jonkun muun ohjelman varaama. Kun haluat komentaa laitetta, kutsu yksinkertaisesti: Dim r As String r = SCL_command( MEA CH 1?, 0 ) 'SCL-sarjaliikenteeseen tarvittavia funktioita. 'Käyttää liikenteeseen Form1!MSComm1-objektia. 'Nokeval Oy / Juha Hämäläinen Option Explicit 'Enum-tyyppi jossa vastaanoton tilat Enum tesclstate SCL_IDLE SCL_RECEIVE SCL_CHECKSUM SCL_COMPLETE End Enum Private Sub Command1_Click() 'Esimerkki yksinkertaisesta kyselystä. Dim r As String 'Alusta ensin portti esim: If InitCom(3, "9600") Then MsgBox "Sarjaportti ei käytettävissä" 'Lähetä sitten komento ja hae vastaus: r = SCL_command("MEA CH 1?", 0) 'Jos ei saatu vastausta, r on tyhjä. If r <> "" Then Me.Caption = "Vastasi: " & r Else Me.Caption = "Ei vastausta" End If 'Sulje sarjaportti: CloseCom End Sub Function InitCom(port As Integer, baud As String) As Integer 'Alustaa sarjaportin. 'Palauttaa 0 jos onnistui. 'Estetään ohjelman kaatuminen jos alustuksessa tulee virhe On Error GoTo ComError 'Suljetaan portti jotta asetteluja voi muuttaa If Form1!MSComm1.PortOpen Then Form1!MSComm1.PortOpen = False 'Tehdään asettelut ja avataan sitten portti Form1!MSComm1.CommPort = port Form1!MSComm1.Settings = baud & ",N,8,1" Form1!MSComm1.InputLen = 1 'Luetaan tavu kerrallaan Form1!MSComm1.PortOpen = True

10 InitCom = 0 'Onnistui Exit Function ComError: InitCom = 1 'Epäonnistui Exit Function End Function Sub CloseCom() 'Sulkee (vapauttaa) sarjaportin. Saa kutsua vaikkei portti olisi auki. If Form1!MSComm1.PortOpen Then Form1!MSComm1.PortOpen = False End Sub Function SCL_command(szCommand As String, iaddress As Integer) As String 'Lähettää SCL-komennon szcommand osoitteeseen iaddress ja odottelee 'vastausta. Jos tulee timeout tms virhe, palauttaa tyhjän. 'Esim s = SCL_command( "MEA CH 1?", 0 ) 'Timer-funktiota käytetään timeoutin toteuttamiseen, mutta 'koska Timer menee keskiyöllä ympäri nollaan, tarvitaan MOD Dim ibcc As Integer 'Tarkistussumman laskenta Dim dtsent As Date 'Ajanhetki jolloin komento lahetettiin Dim szresp As String 'Vastaus Dim ierror As Integer 'Virhe (0 = OK) Dim estate As tesclstate 'Vastaanoton tilamuuttuja Dim iindex As Integer 'Yleisindeksi Dim szreceive As String 'Yksi sarjaportista luettu pätkä Dim szchar As String 'Pätkän yksi merkki 'Tyhjennetään vastaanottopuskuri: Form1!MSComm1.InBufferCount = 0 'Lasketaan komennon tarkistussumma: ibcc = 3 'Sisältää valmiiksi ETX:n jota ei vielä merkkijonossa For iindex = 1 To Len(szCommand) ibcc = ibcc Xor Asc(Mid(szCommand, iindex, 1)) Next 'Lähetetään komento tykötarpeineen: Form1!MSComm1.Output = Chr$(iAddress Or 128) & szcommand & Chr$(3) & Chr$(iBcc) 'Aloitetaan vastauksen odottelu: estate = SCL_IDLE dtsent = Now 'Pannaan muistiin koska komento lähti 'Kierretään kunnes koko vastaus tullut Do If Form1!MSComm1.InBufferCount Then 'Tavuja saapunut szreceive = Form1.MSComm1.Input For iindex = 1 To Len(szReceive) 'Tavut yksitellen szchar = Mid(szReceive, iindex, 1) If estate <= SCL_RECEIVE And (Asc(szChar) = 6 Or Asc(szChar) = 21) Then 'ACK/NAK estate = 1 'Aletaan lukea vastausta ibcc = Asc(szChar) szresp = "" 'Tyhjennetään vastaus If Asc(szChar) = 6 Then ierror = 0 Else ierror = 1 'Norm vai virhevastauksen alku ElseIf estate = SCL_RECEIVE Then 'Luetaan vastausta ibcc = ibcc Xor Asc(szChar) If Asc(szChar) = 3 Then 'Loppumerkki ETX tuli estate = SCL_CHECKSUM 'Siirrytään odottelemaan tarkistussummaa Else szresp = szresp & szchar 'Talletetaan vastausta End If ElseIf estate = SCL_CHECKSUM Then 'Vastaanotetaan tarkistussumma If ibcc <> Asc(szChar) Then ierror = 2 'Se oli väärin! estate = SCL_COMPLETE 'Paketti saapunut kokonaan, poistutaan End If Next End If 'Timeout If Now - dtsent > 0.5 / Then ierror = 3 Loop Until estate = SCL_COMPLETE Or ierror = 3 Or DoEvents() = 0 'Asetetaan paluuarvo:

11 If ierror = 0 Then SCL_command = szresp Else SCL_command = "" 'Tuli virhe - palautetaan tyhjä End If End Function

07.02.2006 Nokeval Oy. Käyttöohje 7181

07.02.2006 Nokeval Oy. Käyttöohje 7181 07.02.2006 Nokeval Oy Käyttöohje 7181 Sisällysluettelo 1 Yleiskuvaus... 3 2 Tekniset tiedot... 4 3 Käyttöönotto... 5 3.1 Jumpperiasetukset... 5 3.2 Riviliitinkytkennät... 6 3.3 Asettelut... 7 3.3.1 Sarjaliikenne...

Lisätiedot

Nokeval No 280701. Käyttöohje. Tekstinäyttö 580-ALF

Nokeval No 280701. Käyttöohje. Tekstinäyttö 580-ALF Nokeval No 28070 Käyttöohje Tekstinäyttö 580-ALF Nokeval Oy Yrittäjäkatu 2 3700 NOKIA Puh. 03-342 4800 Fax. 03-342 2066 2 Kenttänäytttösarja 580 sarjaviesteille 5820 580 Sarjaviesti RS-232 tai RS-485 PC

Lisätiedot

Muuttujatyypit ovat Boolean, Byte, Integer, Long, Double, Currency, Date, Object, String, Variant (oletus)

Muuttujatyypit ovat Boolean, Byte, Integer, Long, Double, Currency, Date, Object, String, Variant (oletus) VISUAL BASIC OHJEITA Kutsuttava ohjelma alkaa kometoparilla Sub... End Sub Sub ohjelmanimi()...koodia... End Sub Muuttujat Muuttujan esittely Muuttujatyypit ovat Boolean, Byte, Integer, Long, Double, Currency,

Lisätiedot

Nokeval. Pikaohje. Malli 2072 Sarjaviestille RS232 / RS485. No 090417 v1.0

Nokeval. Pikaohje. Malli 2072 Sarjaviestille RS232 / RS485. No 090417 v1.0 No 0907 v.0 Nokeval Pikaohje Malli 07 Sarjaviestille RS / RS8 Johdanto 07 on SCL sarjaliikenneprotokollalla toimiva näyttö, joka hakee mittaustuloksia toisilta sarjaliikennelaitteilta. Laitteessa on 9

Lisätiedot

Ohjausjärjestelmien jatkokurssi. Visual Basic vinkkejä ohjelmointiin

Ohjausjärjestelmien jatkokurssi. Visual Basic vinkkejä ohjelmointiin Ohjausjärjestelmien jatkokurssi Visual Basic vinkkejä ohjelmointiin http://www.techsoft.fi/oskillaattoripiirit.htm http://www.mol.fi/paikat/job.do?lang=fi&jobid=7852109&index=240&anchor=7852109 Yksiköt

Lisätiedot

Ohjelmassa henkilön etunimi ja sukunimi luetaan kahteen muuttujaan seuraavasti:

Ohjelmassa henkilön etunimi ja sukunimi luetaan kahteen muuttujaan seuraavasti: 1 (7) Tiedon lukeminen näppäimistöltä Scanner-luokan avulla Miten ohjelma saa käyttöönsä käyttäjän kirjoittamaa tekstiä? Järjestelmässä on olemassa ns. syöttöpuskuri näppäimistöä varten. Syöttöpuskuri

Lisätiedot

LOAD R1, =2 Sijoitetaan rekisteriin R1 arvo 2. LOAD R1, 100

LOAD R1, =2 Sijoitetaan rekisteriin R1 arvo 2. LOAD R1, 100 Tiedonsiirtokäskyt LOAD LOAD-käsky toimii jälkimmäisestä operandista ensimmäiseen. Ensimmäisen operandin pitää olla rekisteri, toinen voi olla rekisteri, vakio tai muistiosoite (myös muuttujat ovat muistiosoitteita).

Lisätiedot

Merkkijono määritellään kuten muutkin taulukot, mutta tilaa on varattava yksi ylimääräinen paikka lopetusmerkille:

Merkkijono määritellään kuten muutkin taulukot, mutta tilaa on varattava yksi ylimääräinen paikka lopetusmerkille: Merkkijonot C-kielessä merkkijono on taulukko, jonka alkiot ovat char -tyyppiä. Taulukon viimeiseksi merkiksi tulee merkki '\0', joka ilmaisee merkkijonon loppumisen. Merkkijono määritellään kuten muutkin

Lisätiedot

Kielioppia: toisin kuin Javassa

Kielioppia: toisin kuin Javassa Object Pascal Pascal kielen oliolaajennus (Inprise/Borland:n oma) luokat Voit uudelleenkäyttää luomiasi objekteja esim. komponentteja Periytyminen Kielioppia: toisin kuin Javassa Ei eroa isojen ja pienien

Lisätiedot

575F-2071, 1000F-2071, 1100F-2071

575F-2071, 1000F-2071, 1100F-2071 Nokeval No 290507 Käyttöohje Suuret kenttänäytöt 575F-207, 000F-207, 00F-207 ja 800F-207 Valmistaja: Nokeval Oy Yrittäjäkatu 2 3700 NOKIA Puh. 03 342 4800 Fax. 03 342 2066 2 Suuret kenttänäytöt Yleiskuvaus

Lisätiedot

815338A Ohjelmointikielten periaatteet Harjoitus 2 vastaukset

815338A Ohjelmointikielten periaatteet Harjoitus 2 vastaukset 815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 2 vastaukset Harjoituksen aiheena on BNF-merkinnän käyttö ja yhteys rekursiivisesti etenevään jäsentäjään. Tehtävä 1. Mitkä ilmaukset seuraava

Lisätiedot

Ohjelmointiharjoituksia Arduino-ympäristössä

Ohjelmointiharjoituksia Arduino-ympäristössä Ohjelmointiharjoituksia Arduino-ympäristössä Yleistä Arduino-sovelluksen rakenne Syntaksi ja käytännöt Esimerkki ohjelman rakenteesta Muuttujat ja tietotyypit Tietotyypit Esimerkkejä tietotyypeistä Ehtolauseet

Lisätiedot

Alkuarvot ja tyyppimuunnokset (1/5) Alkuarvot ja tyyppimuunnokset (2/5) Alkuarvot ja tyyppimuunnokset (3/5)

Alkuarvot ja tyyppimuunnokset (1/5) Alkuarvot ja tyyppimuunnokset (2/5) Alkuarvot ja tyyppimuunnokset (3/5) Alkuarvot ja tyyppimuunnokset (1/5) Aiemmin olemme jo antaneet muuttujille alkuarvoja, esimerkiksi: int luku = 123; Alkuarvon on oltava muuttujan tietotyypin mukainen, esimerkiksi int-muuttujilla kokonaisluku,

Lisätiedot

Luento 5. Timo Savola. 28. huhtikuuta 2006

Luento 5. Timo Savola. 28. huhtikuuta 2006 UNIX-käyttöjärjestelmä Luento 5 Timo Savola 28. huhtikuuta 2006 Osa I Shell-ohjelmointi Ehtolause Lausekkeet suoritetaan jos ehtolausekkeen paluuarvo on 0 if ehtolauseke then lauseke

Lisätiedot

Nokeval. No 011002. Malli 2800-2071 Sarjaviestille RS-232/RS-485

Nokeval. No 011002. Malli 2800-2071 Sarjaviestille RS-232/RS-485 Nokeval No 0002 Käyttöohje Malli 2800-207 Sarjaviestille RS-232/RS-485 Sisällysluettelo Yleiskuvaus:... 3 Tekniset tiedot:... 3 Etupaneeli ja näppäimet... 4 Mittakuvat:... 4 Ohjelmointi... 5 Osoitteellinen

Lisätiedot

Kirjoita oma versio funktioista strcpy ja strcat, jotka saavat parametrinaan kaksi merkkiosoitinta.

Kirjoita oma versio funktioista strcpy ja strcat, jotka saavat parametrinaan kaksi merkkiosoitinta. Tehtävä 63. Kirjoita oma versio funktiosta strcmp(),joka saa parametrinaan kaksi merkkiosoitinta. Tee ohjelma, jossa luetaan kaksi merkkijonoa, joita sitten verrataan ko. funktiolla. Tehtävä 64. Kirjoita

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 2.3.2009 T-106.1208 Ohjelmoinnin perusteet Y 2.3.2009 1 / 28 Puhelinluettelo, koodi def lue_puhelinnumerot(): print "Anna lisattavat nimet ja numerot." print

Lisätiedot

Nokeval. No 40200. Kenttänäytöt 581D ja 582D sarjaviesteille RS-485/232

Nokeval. No 40200. Kenttänäytöt 581D ja 582D sarjaviesteille RS-485/232 Nokeval No 40200 Käyttöohje Kenttänäytöt 581D ja 582D sarjaviesteille RS-485/232 1 Nokeval Oy Yrittäjäkatu 12 37100 NOKIA Puh. 03-342 4800 Fax. 03-342 2066 2 Kenttänäytttösarja 580 sarjaviesteille 582D

Lisätiedot

Harjoitustyö: virtuaalikone

Harjoitustyö: virtuaalikone Harjoitustyö: virtuaalikone Toteuta alla kuvattu virtuaalikone yksinkertaiselle olio-orientoituneelle skriptauskielelle. Paketissa on testaamista varten mukana kaksi lyhyttä ohjelmaa. Ohjeita Noudata ohjelman

Lisätiedot

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin peruskurssi Y1 Ohjelmoinnin peruskurssi Y1 CSE-A1111 30.9.2015 CSE-A1111 Ohjelmoinnin peruskurssi Y1 30.9.2015 1 / 27 Mahdollisuus antaa luentopalautetta Goblinissa vasemmassa reunassa olevassa valikossa on valinta Luentopalaute.

Lisätiedot

PM10POW24SA-kortti. Ohje

PM10POW24SA-kortti. Ohje PM10POW24SA-kortti Ohje Dokumentin ID 6907 V2 15.4.2015 Sisällysluettelo Sisällysluettelo... 2 Esittely... 3 Jumpperit... 3 Kytkennät... 3 Lohkot ja rekisterit... 4 Sarjaportti... 4 IO1... 4 Virtalähde...

Lisätiedot

Käyttöohje 3.10.2005 V1.0 DCS771. USB-RS-485-muunnin

Käyttöohje 3.10.2005 V1.0 DCS771. USB-RS-485-muunnin Käyttöohje 3.10.2005 V1.0 DCS771 USB-RS-485-muunnin 1 JOHDANTO DCS771:n avulla PC-tietokoneeseen voidaan lisätä RS-485-sarjaportti. Muunnin kytketään tietokoneen USBporttiin, ja sen ajurit luovat Windowsiin

Lisätiedot

Koottu lause; { ja } -merkkien väliin kirjoitetut lauseet muodostavat lohkon, jonka sisällä lauseet suoritetaan peräkkäin.

Koottu lause; { ja } -merkkien väliin kirjoitetut lauseet muodostavat lohkon, jonka sisällä lauseet suoritetaan peräkkäin. 2. Ohjausrakenteet Ohjausrakenteiden avulla ohjataan ohjelman suoritusta. peräkkäisyys valinta toisto Koottu lause; { ja } -merkkien väliin kirjoitetut lauseet muodostavat lohkon, jonka sisällä lauseet

Lisätiedot

Käyttöohje Ohjelmistoversio V MTR kanavainen langaton lähetin mv- ja TC-tuloilla

Käyttöohje Ohjelmistoversio V MTR kanavainen langaton lähetin mv- ja TC-tuloilla Käyttöohje Ohjelmistoversio V1.0 19.10.05 MTR264 4-kanavainen langaton lähetin mv- ja TC-tuloilla YLEISKUVAUS MTR264 on paristokäyttöinen nelikanavainen langaton lähetin. Laite on koteloitu pieneen muovikoteloon,

Lisätiedot

Nokeval 2071 Käyttöohje

Nokeval 2071 Käyttöohje Nokeval 2071 Käyttöohje SISÄLLYS Dokumentin tiedot... 2 Johdanto... 3 Valmistaja... 3 2071-paneelimittari... 4 Toiminta... 5 Liitännät ja jumpperit... 7 Käyttöliittymä ja asettelu... 8 SCL-protokolla...

Lisätiedot

ELEC-A4010 Sähköpaja Arduinon ohjelmointi. Jukka Helle

ELEC-A4010 Sähköpaja Arduinon ohjelmointi. Jukka Helle ELEC-A4010 Sähköpaja Arduinon ohjelmointi Jukka Helle Arduino UNO R3 6-20VDC 5VDC muunnin 16 MHz kideoskillaattori USB-sarjamuunnin (ATmega16U2) ATmega328 -mikro-ohjain 14 digitaalista I/O väylää 6 kpl

Lisätiedot

Sisällys. 12. Näppäimistöltä lukeminen. Yleistä. Yleistä 12.1 12.2 12.3 12.4

Sisällys. 12. Näppäimistöltä lukeminen. Yleistä. Yleistä 12.1 12.2 12.3 12.4 Sisällys 12. Näppäimistöltä lukeminen Arvojen lukeminen näppäimistöltä yleisesti. Arvojen lukeminen näppäimistöltä Java-kielessä.. Luetun arvon tarkistaminen. Tietovirrat ja ohjausmerkit. Scanner-luokka.

Lisätiedot

14. Hyvä ohjelmointitapa 14.1

14. Hyvä ohjelmointitapa 14.1 14. Hyvä ohjelmointitapa 14.1 Yleistä Ohjelman elinkaari ei tyypillisesti pääty sen toteuttamiseen; ohjelmaa voidaan käyttää ja ylläpitää jopa vuosikymmeniä. Jotta koodin muuttaminen on mahdollista, sen

Lisätiedot

Kappale 20: Kantaluvut

Kappale 20: Kantaluvut Kappale 20: Kantaluvut 20 Johdanto: Kantaluvut... 328 Kantalukujen syöttäminen ja muuntaminen... 329 Matemaattiset toiminnot Hex- ja Bin-luvuilla... 330 Bittien vertaileminen ja manipulointi... 331 Huom!

Lisätiedot

Perusteet. Pasi Sarolahti Aalto University School of Electrical Engineering. C-ohjelmointi Kevät Pasi Sarolahti

Perusteet. Pasi Sarolahti Aalto University School of Electrical Engineering. C-ohjelmointi Kevät Pasi Sarolahti C! Perusteet 19.1.2017 Palautteesta (1. kierros toistaiseksi) Toistaiseksi helppoa Miksi vain puolet pisteistä? Vaikeinta oli ohjelmointiympäristön asennus ja käyttö Vaikeaa eroavuudet Pythonin ja C:n

Lisätiedot

Muuttujien roolit Kiintoarvo cin >> r;

Muuttujien roolit Kiintoarvo cin >> r; Muuttujien roolit Muuttujilla on ohjelmissa eräitä tyypillisiä käyttötapoja, joita kutsutaan muuttujien rooleiksi. Esimerkiksi muuttuja, jonka arvoa ei muuteta enää kertaakaan muuttujan alustamisen jälkeen,

Lisätiedot

2 Konekieli, aliohjelmat, keskeytykset

2 Konekieli, aliohjelmat, keskeytykset ITK145 Käyttöjärjestelmät, kesä 2005 Tenttitärppejä Tässä on lueteltu suurin piirtein kaikki vuosina 2003-2005 kurssin tenteissä kysytyt kysymykset, ja mukana on myös muutama uusi. Jokaisessa kysymyksessä

Lisätiedot

PM10OUT2A-kortti. Ohje

PM10OUT2A-kortti. Ohje PM10OUT2A-kortti Ohje Dokumentin ID 6903 V3 13.4.2015 Sisällysluettelo Sisällysluettelo... 2 Esittely... 3 Kortti ja rekisterit... 3 Lähtöviestit... 4 Signaalien kytkeminen... 4 Käyttö... 4 Asetusten tekeminen...

Lisätiedot

ITKP102 Ohjelmointi 1 (6 op)

ITKP102 Ohjelmointi 1 (6 op) ITKP102 Ohjelmointi 1 (6 op) Tentaattori: Antti-Jussi Lakanen 7. huhtikuuta 2017 Vastaa kaikkiin tehtäviin. Tee jokainen tehtävä erilliselle konseptiarkille. Kirjoittamasi luokat, funktiot ja aliohjelmat

Lisätiedot

Pythonin Kertaus. Cse-a1130. Tietotekniikka Sovelluksissa. Versio 0.01b

Pythonin Kertaus. Cse-a1130. Tietotekniikka Sovelluksissa. Versio 0.01b Pythonin Kertaus Cse-a1130 Tietotekniikka Sovelluksissa Versio 0.01b Listat 1/2 esimerkkejä listan peruskäytöstä. > lista=['kala','kukko','kissa','koira'] ['kala','kukko','kissa','koira'] >lista.append('kana')

Lisätiedot

Perusteet. Pasi Sarolahti Aalto University School of Electrical Engineering. C-ohjelmointi Kevät Pasi Sarolahti

Perusteet. Pasi Sarolahti Aalto University School of Electrical Engineering. C-ohjelmointi Kevät Pasi Sarolahti C! Perusteet 19.1.2017 Palautteesta (1. kierros toistaiseksi) (Erittäin) helppoa Miksi vain puolet pisteistä? Vaikeinta oli ohjelmointiympäristön asennus ja käyttö Ei selvää että main funktion pitikin

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 2.3.2011 T-106.1208 Ohjelmoinnin perusteet Y 2.3.2011 1 / 39 Kertausta: tiedoston avaaminen Kun ohjelma haluaa lukea tai kirjoittaa tekstitiedostoon, on ohjelmalle

Lisätiedot

Se mistä tilasta aloitetaan, merkitään tyhjästä tulevalla nuolella. Yllä olevassa esimerkissä aloitustila on A.

Se mistä tilasta aloitetaan, merkitään tyhjästä tulevalla nuolella. Yllä olevassa esimerkissä aloitustila on A. Tehtävä. Tämä tehtävä on aineistotehtävä, jossa esitetään ensin tehtävän teoria. Sen jälkeen esitetään neljä kysymystä, joissa tätä teoriaa pitää soveltaa. Mitään aikaisempaa tehtävän aihepiirin tuntemusta

Lisätiedot

11. Javan toistorakenteet 11.1

11. Javan toistorakenteet 11.1 11. Javan toistorakenteet 11.1 Sisällys Laskuri- ja lippumuuttujat. Sisäkkäiset silmukat. Tyypillisiä ohjelmointivirheitä: Silmukan rajat asetettu kierroksen verran väärin. Ikuinen silmukka. Silmukoinnin

Lisätiedot

Sisällys. 11. Javan toistorakenteet. Laskurimuuttujat. Yleistä

Sisällys. 11. Javan toistorakenteet. Laskurimuuttujat. Yleistä Sisällys 11. Javan toistorakenteet Laskuri- ja lippumuuttujat.. Tyypillisiä ohjelmointivirheitä: Silmukan rajat asetettu kierroksen verran väärin. Ikuinen silmukka. Silmukoinnin lopettaminen break-lauseella.

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 7.2.2011 T-106.1208 Ohjelmoinnin perusteet Y 7.2.2011 1 / 39 Kännykkäpalautetteen antajia kaivataan edelleen! Ilmoittaudu mukaan lähettämällä ilmainen tekstiviesti

Lisätiedot

Algoritmit 1. Demot Timo Männikkö

Algoritmit 1. Demot Timo Männikkö Algoritmit 1 Demot 1 31.1.-1.2.2018 Timo Männikkö Tehtävä 1 (a) Algoritmi, joka tutkii onko kokonaisluku tasan jaollinen jollain toisella kokonaisluvulla siten, että ei käytetä lainkaan jakolaskuja Jaettava

Lisätiedot

TAITAJA 2007 ELEKTRONIIKKAFINAALI 31.01-02.02.07 KILPAILIJAN TEHTÄVÄT. Kilpailijan nimi / Nro:

TAITAJA 2007 ELEKTRONIIKKAFINAALI 31.01-02.02.07 KILPAILIJAN TEHTÄVÄT. Kilpailijan nimi / Nro: KILPAILIJAN TEHTÄVÄT Kilpailijan nimi / Nro: Tehtävän laatinut: Hannu Laurikainen, Deltabit Oy Kilpailutehtävä Kilpailijalle annetaan tehtävässä tarvittavat ohjelmakoodit. Tämä ohjelma on tehty laitteen

Lisätiedot

Käyttöohje 26.7.2007 Laitteisto V1.1 DCS771B. USB-RS-485-muunnin

Käyttöohje 26.7.2007 Laitteisto V1.1 DCS771B. USB-RS-485-muunnin Käyttöohje 26.7.2007 Laitteisto V1.1 DCS771B USB-RS-485-muunnin 1 JOHDANTO DCS771B:n avulla PC-tietokoneeseen voidaan lisätä RS-485-sarjaportti. Muunnin kytketään tietokoneen USB-porttiin, ja sen ajurit

Lisätiedot

Tietueet. Tietueiden määrittely

Tietueet. Tietueiden määrittely Tietueet Tietueiden määrittely Tietue on tietorakenne, joka kokoaa yhteen eri tyyppistä tietoa yhdeksi asiakokonaisuudeksi. Tähän kokonaisuuteen voidaan viitata yhteisellä nimellä. Auttaa ohjelmoijaa järjestelemään

Lisätiedot

Ohjelmassa on käytettävä funktiota laskeparkkimaksu laskemaan kunkin asiakkaan maksu. Funktio floor pyöristää luvun lähimmäksi kokonaisluvuksi.

Ohjelmassa on käytettävä funktiota laskeparkkimaksu laskemaan kunkin asiakkaan maksu. Funktio floor pyöristää luvun lähimmäksi kokonaisluvuksi. Tehtävä 24. Kallioparkki veloittaa 2 euroa kolmelta ensimmäiseltä pysäköintitunnilta. Yli kolmen tunnin pysäköinnistä veloitetaan lisäksi 0.5 euroa jokaiselta yli menevältä tunnilta. Kuitenkin maksimiveloitus

Lisätiedot

Käyttöohje 11.5.2015 Firmware V3.2-4.0 PCB V1.2. 7470 Analogialähtöyksikkö

Käyttöohje 11.5.2015 Firmware V3.2-4.0 PCB V1.2. 7470 Analogialähtöyksikkö Käyttöohje 11.5.2015 Firmware V3.2-4.0 PCB V1.2 7470 Analogialähtöyksikkö 1 JOHDANTO 7470 on sarjaliikenteellä ohjattava analogialähtöyksikkö. Se tarjoaa neljä ma- tai V-lähtöä, joita voidaan ohjata RS-232-

Lisätiedot

Java-kielen perusteet

Java-kielen perusteet Java-kielen perusteet Tunnus, varattu sana, kommentti Muuttuja, alkeistietotyyppi, merkkijono, literaalivakio, nimetty vakio Tiedon merkkipohjainen tulostaminen 1 Tunnus Java tunnus Java-kirjain Java-numero

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 1.4.2009 T-106.1208 Ohjelmoinnin perusteet Y 1.4.2009 1 / 56 Tentti Ensimmäinen tenttimahdollisuus on pe 8.5. klo 13:00 17:00 päärakennuksessa. Tämän jälkeen

Lisätiedot

13. Hyvä ohjelmointitapa (osa 1) 13.1

13. Hyvä ohjelmointitapa (osa 1) 13.1 13. Hyvä ohjelmointitapa (osa 1) 13.1 Yleistä Ohjelman elinkaari ei tyypillisesti pääty sen toteuttamiseen tarvitaan ylläpitoa. Jotta koodin muuttaminen on mahdollista, on sen oltava myös muidenkin kuin

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 9.2.2009 T-106.1208 Ohjelmoinnin perusteet Y 9.2.2009 1 / 35 Listat Esimerkki: halutaan kirjoittaa ohjelma, joka lukee käyttäjältä 30 lämpötilaa. Kun lämpötilat

Lisätiedot

811120P Diskreetit rakenteet

811120P Diskreetit rakenteet 811120P Diskreetit rakenteet 2016-2017 2. Lukujen esittäminen ja aritmetiikka 2.1 Kantajärjestelmät ja lukujen esittäminen Käytettävät lukujoukot: Luonnolliset luvut IN = {0,1,2,3,... } Positiiviset kokonaisluvut

Lisätiedot

Ohjelmointi 1 / 2009 syksy Tentti / 18.12

Ohjelmointi 1 / 2009 syksy Tentti / 18.12 Tentti / 18.12 Vastaa yhteensä neljään tehtävään (huomaa että tehtävissä voi olla useita alakohtia), joista yksi on tehtävä 5. Voit siis valita kolme tehtävistä 1 4 ja tehtävä 5 on pakollinen. Vastaa JOKAISEN

Lisätiedot

1. Yleistä. 2. Ominaisuudet. 3. Liitännät

1. Yleistä. 2. Ominaisuudet. 3. Liitännät 1. Yleistä SerIO on mittaus ja ohjaustehtäviin tarkoitettu prosessorikortti. Se voi ohjemistosta riippuen toimia itsenäisenä yksikkönä tai tietokoneen ohjaamana. Jälkimmäisessä tapauksessa mittaus ja ohjauskomennot

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 28.2.2011 T-106.1208 Ohjelmoinnin perusteet Y 28.2.2011 1 / 46 Ohjelmointiprojektin vaiheet 1. Määrittely 2. Ohjelman suunnittelu (ohjelman rakenne ja ohjelman

Lisätiedot

Harjoitus 2 (viikko 45)

Harjoitus 2 (viikko 45) Mikäli tehtävissä on jotain epäselvää, laita sähköpostia vastuuopettajalle (jorma.laurikkala@uta.fi). Muista lisätä static-määre operaatioidesi otsikoihin, jotta ohjelmasi kääntyvät. Muista noudattaa hyvän

Lisätiedot

Luku 6. Dynaaminen ohjelmointi. 6.1 Funktion muisti

Luku 6. Dynaaminen ohjelmointi. 6.1 Funktion muisti Luku 6 Dynaaminen ohjelmointi Dynaamisessa ohjelmoinnissa on ideana jakaa ongelman ratkaisu pienempiin osaongelmiin, jotka voidaan ratkaista toisistaan riippumattomasti. Jokaisen osaongelman ratkaisu tallennetaan

Lisätiedot

815338A Ohjelmointikielten periaatteet Harjoitus 3 vastaukset

815338A Ohjelmointikielten periaatteet Harjoitus 3 vastaukset 815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 3 vastaukset Harjoituksen aiheena ovat imperatiivisten kielten muuttujiin liittyvät kysymykset. Tehtävä 1. Määritä muuttujien max_num, lista,

Lisätiedot

Harjoitus 2. Harjoitus 3

Harjoitus 2. Harjoitus 3 Harjoitus 2 Sub Harjoitus2a() ActiveSheet.Copy after:=activesheet ActiveSheet.Name = "Kopio1" ActiveSheet.Copy after:=activesheet ActiveSheet.Name = "Kopio2" ActiveSheet.Copy after:=activesheet ActiveSheet.Name

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 15.3.2010 T-106.1208 Ohjelmoinnin perusteet Y 15.3.2010 1 / 56 Tiedostoista: tietojen tallentaminen ohjelman suorituskertojen välillä Monissa sovelluksissa ohjelman

Lisätiedot

TiiMiMobile. KÄYTTÖOHJE v. 1.01

TiiMiMobile. KÄYTTÖOHJE v. 1.01 KÄYTTÖOHJE v. 1.01 KUVAUS TiiMiMobile on matkapuhelimessa toimiva Java -sovellus, jolla voi luoda etäyhteyden TiiMi-sarjan säätimeen. Yhteyden luonti voi tapahtua joko suoraan säätimeen tai palvelimen

Lisätiedot

Käyttöohje 18.2.2013 Firmware V1.0-V1.2 HTB230. Anturirasialähetin

Käyttöohje 18.2.2013 Firmware V1.0-V1.2 HTB230. Anturirasialähetin Käyttöohje 18.2.2013 Firmware V1.0-V1.2 HTB230 Anturirasialähetin 1 ESITTELY HTB230 on anturirasiaan sijoitettava 2-johdinlähetin platina-, nikkeli- ja kuparivastusantureille. Se on ohjelmoitavissa PC:llä

Lisätiedot

Algoritmit 2. Demot Timo Männikkö

Algoritmit 2. Demot Timo Männikkö Algoritmit 2 Demot 2 3.-4.4.2019 Timo Männikkö Tehtävä 1 Avoin osoitteenmuodostus: Hajautustaulukko t (koko m) Erikoisarvot VAPAA ja POISTETTU Hajautusfunktio h(k,i) Operaatiot: lisaa etsi poista Algoritmit

Lisätiedot

Informaatioteknologian laitos Olio-ohjelmoinnin perusteet / Salo 15.2.2006

Informaatioteknologian laitos Olio-ohjelmoinnin perusteet / Salo 15.2.2006 TURUN YLIOPISTO DEMO III Informaatioteknologian laitos tehtävät Olio-ohjelmoinnin perusteet / Salo 15.2.2006 1. Tässä tehtävässä tarkastellaan erääntyviä laskuja. Lasku muodostaa oman luokkansa. Laskussa

Lisätiedot

Harjoitus 4 (viikko 47)

Harjoitus 4 (viikko 47) Kaikki tämän harjoituksen tehtävät liittyvät joko suoraan tai epäsuorasti kurssin toiseen harjoitustyöhön. Saa hyvän alun harjoitustyön tekoon, kun ratkaiset mahdollisimman monta tehtävää. Mikäli tehtävissä

Lisätiedot

Ohjelmointi 1 Taulukot ja merkkijonot

Ohjelmointi 1 Taulukot ja merkkijonot Ohjelmointi 1 Taulukot ja merkkijonot Jussi Pohjolainen TAMK Tieto- ja viestintäteknologia Johdanto taulukkoon Jos ohjelmassa käytössä ainoastaan perinteisiä (yksinkertaisia) muuttujia, ohjelmien teko

Lisätiedot

Verilogvs. VHDL. Janne Koljonen University of Vaasa

Verilogvs. VHDL. Janne Koljonen University of Vaasa Verilogvs. VHDL Janne Koljonen University of Vaasa Sälää Huom! Verilogistauseita versioita: 1995, 2001 ja 2005. Kommentit Javasta tutut // ja /* */ ovat kommenttimerkkejä. Case sensitivity Isot ja pienet

Lisätiedot

// Tulostetaan double-tyyppiseen muuttujaan "hinta" tallennettu // kertalipun hinta ja vaihdetaan riviä. System.out.printf("%.1f euros.

// Tulostetaan double-tyyppiseen muuttujaan hinta tallennettu // kertalipun hinta ja vaihdetaan riviä. System.out.printf(%.1f euros. Lue kukin tehtävänanto huolellisesti ja kokonaisuudessaan ennen kuin aloitat vastaamisen. Kustakin tehtävästä voi saada 0 6 pistettä. Tentin läpipääsyraja on 12 / 24 pistettä. Ratkaisut palautetaan WETO-järjestelmään

Lisätiedot

Luennon sisältö Tyypit int, char, float, double signed, unsigned short, long Vakiot const Rakenteet if, for, while, switch, do-while Syöttö ja tulostu

Luennon sisältö Tyypit int, char, float, double signed, unsigned short, long Vakiot const Rakenteet if, for, while, switch, do-while Syöttö ja tulostu C-kurssi Viikko 1: tyypit, rakenteet, makrot Luennon sisältö Tyypit int, char, float, double signed, unsigned short, long Vakiot const Rakenteet if, for, while, switch, do-while Syöttö ja tulostus Makrot

Lisätiedot

Käyttöohje 1.7.2010 V 1.0 RTR970. Nokeval

Käyttöohje 1.7.2010 V 1.0 RTR970. Nokeval Käyttöohje 1.7.2010 V 1.0 RTR970 Ra d i o d a t a v a s t a a n o t i n Nokeval Yleiskuvaus RTR970 on Nokeval MTR-sarjan radiolähettimien vastaanottoasema. Se vastaanottaa, purkaa ja puskuroi muistiinsa

Lisätiedot

Java-kielen perusteita

Java-kielen perusteita Java-kielen perusteita valintalauseet 1 Johdantoa kontrollirakenteisiin Tähän saakka ohjelmissa on ollut vain peräkkäisyyttä eli lauseet on suoritettu peräkkäin yksi kerrallaan Tarvitsemme myös valintaa

Lisätiedot

12. Javan toistorakenteet 12.1

12. Javan toistorakenteet 12.1 12. Javan toistorakenteet 12.1 Sisällys Yleistä toistorakenteista. Laskurimuuttujat. While-, do-while- ja for-lauseet. Laskuri- ja lippumuuttujat. Tyypillisiä ohjelmointivirheitä. Silmukan rajat asetettu

Lisätiedot

Harjoitus 1 -- Ratkaisut

Harjoitus 1 -- Ratkaisut Kun teet harjoitustyöselostuksia Mathematicalla, voit luoda selkkariin otsikon (ja mahdollisia alaotsikoita...) määräämällä soluille erilaisia tyylejä. Uuden solun tyyli määrätään painamalla ALT ja jokin

Lisätiedot

TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli

TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op Assembly ja konekieli Tietokoneen ja ohjelmiston rakenne Loogisilla piireillä ja komponenteilla rakennetaan prosessori ja muistit Prosessorin rakenne

Lisätiedot

C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. Operaatioiden suoritusjärjestys

C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. Operaatioiden suoritusjärjestys Loogisia operaatioita - esimerkkejä Tänään on lämmin päivä ja perjantai Eilen satoi ja oli keskiviikko tai tänään on tiistai. On perjantai ja kello on yli 13 Ei ole tiistai tai ei sada. Ei pidä paikkaansa,

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 25.2.2009 T-106.1208 Ohjelmoinnin perusteet Y 25.2.2009 1 / 34 Syötteessä useita lukuja samalla rivillä Seuraavassa esimerkissä käyttäjä antaa useita lukuja samalla

Lisätiedot

Tehtävän V.1 ratkaisuehdotus Tietorakenteet, syksy 2003

Tehtävän V.1 ratkaisuehdotus Tietorakenteet, syksy 2003 Tehtävän V.1 ratkaisuehdotus Tietorakenteet, syksy 2003 Matti Nykänen 5. joulukuuta 2003 1 Satelliitit Muunnetaan luennoilla luonnosteltua toteutusta seuraavaksi: Korvataan puusolmun p kentät p. key ja

Lisätiedot

12. Näppäimistöltä lukeminen 12.1

12. Näppäimistöltä lukeminen 12.1 12. Näppäimistöltä lukeminen 12.1 Sisällys Arvojen lukeminen näppäimistöltä yleisesti. Arvojen lukeminen näppäimistöltä Java-kielessä. In-luokka. Luetun arvon tarkistaminen. Tietovirrat ja ohjausmerkit.

Lisätiedot

12. Javan toistorakenteet 12.1

12. Javan toistorakenteet 12.1 12. Javan toistorakenteet 12.1 Sisällys Yleistä toistorakenteista. Laskurimuuttujat. While-, do-while- ja for-lauseet. Laskuri- ja lippumuuttujat. Tyypillisiä ohjelmointivirheitä. Silmukan rajat asetettu

Lisätiedot

Olio-ohjelmointi Javalla

Olio-ohjelmointi Javalla 1 Olio-ohjelmointi Javalla Olio-ohjelmointi Luokka Attribuutit Konstruktori Olion luominen Metodit Olion kopiointi Staattinen attribuutti ja metodi Yksinkertainen ohjelmaluokka Ohjelmaluokka 1 Olio-ohjelmointi

Lisätiedot

(a) L on listan tunnussolmu, joten se ei voi olla null. Algoritmi lisäämiselle loppuun:

(a) L on listan tunnussolmu, joten se ei voi olla null. Algoritmi lisäämiselle loppuun: Tietorakenteet ja algoritmit, kevät 201 Kurssikoe 1, ratkaisuja 1. Tehtävästä sai yhden pisteen per kohta. (a) Invariantteja voidaan käyttää algoritmin oikeellisuustodistuksissa Jokin väittämä osoitetaan

Lisätiedot

Mathematica Sekalaista asiaa

Mathematica Sekalaista asiaa Mathematica Sekalaista asiaa Asetusoperaattorit Mathematicassa voi käyttää omia muuttujasymboleja melko rajattomasti ja niiden nimeämisessä voi käyttää miltei mitä tahansa merkkejä. Käytännössä nimeämisessä

Lisätiedot

Algoritmit 1. Demot Timo Männikkö

Algoritmit 1. Demot Timo Männikkö Algoritmit 1 Demot 2 1.-2.2.2017 Timo Männikkö Tehtävä 1 (a) Ei-rekursiivinen algoritmi: laskesumma(t, n) sum = t[0]; for (i = 1; i < n; i++) sum = sum + t[i]; return sum; Silmukka suoritetaan n 1 kertaa

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 20.1.2010 T-106.1208 Ohjelmoinnin perusteet Y 20.1.2010 1 / 40 Arvon pyytäminen käyttäjältä Käyttäjän antaman arvon voi lukea raw_input-käskyllä. Käskyn sulkujen

Lisätiedot

List-luokan soveltamista. Listaan lisääminen Listan läpikäynti Listasta etsiminen Listan sisällön muuttaminen Listasta poistaminen Listan kopioiminen

List-luokan soveltamista. Listaan lisääminen Listan läpikäynti Listasta etsiminen Listan sisällön muuttaminen Listasta poistaminen Listan kopioiminen 1 List-luokan soveltamista List-luokan metodeja Listaan lisääminen Listan läpikäynti Listasta etsiminen Listan sisällön muuttaminen Listasta poistaminen Listan kopioiminen 1 List-luokan metodeja List-luokan

Lisätiedot

Python-ohjelmointi Harjoitus 2

Python-ohjelmointi Harjoitus 2 Python-ohjelmointi Harjoitus 2 TAVOITTEET Kerrataan tulostuskomento ja lukumuotoisen muuttujan muuttaminen merkkijonoksi. Opitaan jakojäännös eli modulus, vertailuoperaattorit, ehtorakenne jos, input-komento

Lisätiedot

KÄYTTÖOHJE PEL 2500 / PEL 2500-M

KÄYTTÖOHJE PEL 2500 / PEL 2500-M V2.0.0 (24.10.2014) 1 (7) KÄYTTÖÖNOTTO Asennus - Lähetin tulisi asentaa mittauskohdan yläpuolelle kondensoitumisongelmien välttämiseksi. - Kanavan ylipaine mitataan siten, että kanavan mittayhde yhdistetään

Lisätiedot

Maastotietokannan torrent-jakelun shapefile-tiedostojen purkaminen zip-arkistoista Windows-komentojonoilla

Maastotietokannan torrent-jakelun shapefile-tiedostojen purkaminen zip-arkistoista Windows-komentojonoilla Maastotietokannan torrent-jakelun shapefile-tiedostojen purkaminen zip-arkistoista Windows-komentojonoilla Viimeksi muokattu 5. toukokuuta 2012 Maastotietokannan torrent-jakeluun sisältyy yli 5000 zip-arkistoa,

Lisätiedot

IDL - proseduurit. ATK tähtitieteessä. IDL - proseduurit

IDL - proseduurit. ATK tähtitieteessä. IDL - proseduurit IDL - proseduurit 25. huhtikuuta 2017 Viimeksi käsiteltiin IDL:n interaktiivista käyttöä, mutta tämä on hyvin kömpelöä monimutkaisempia asioita tehtäessä. IDL:llä on mahdollista tehdä ns. proseduuri-tiedostoja,

Lisätiedot

Sisällys. 17. Ohjelmoinnin tekniikkaa. Aritmetiikkaa toisin merkiten. for-lause lyhemmin

Sisällys. 17. Ohjelmoinnin tekniikkaa. Aritmetiikkaa toisin merkiten. for-lause lyhemmin Sisällys 17. Ohjelmoinnin tekniikkaa for-lause lyhemmin. Vaihtoehtoisia merkintöjä aritmeettisille lauseille. Useiden muuttujien esittely ja alustaminen yhdellä lauseella. if-else-lause vaihtoehtoisesti

Lisätiedot

Kirjoita, tallenna, käännä ja suorita alla esitelty ohjelma, joka tervehtii käyttäjäänsä.

Kirjoita, tallenna, käännä ja suorita alla esitelty ohjelma, joka tervehtii käyttäjäänsä. Tehtävä 1. Kirjoita, tallenna, käännä ja suorita alla esitelty ohjelma, joka tervehtii käyttäjäänsä. #include /* mm. I/O-funktiot */ #include /* mm. EXIT_SUCCESS */ /*main-funktio,

Lisätiedot

Vasen johto S AB ab ab esittää jäsennyspuun kasvattamista vasemmalta alkaen:

Vasen johto S AB ab ab esittää jäsennyspuun kasvattamista vasemmalta alkaen: Vasen johto S AB ab ab esittää jäsennyspuun kasvattamista vasemmalta alkaen: S A S B Samaan jäsennyspuuhun päästään myös johdolla S AB Ab ab: S A S B Yhteen jäsennyspuuhun liittyy aina tasan yksi vasen

Lisätiedot

815338A Ohjelmointikielten periaatteet Harjoitus 6 Vastaukset

815338A Ohjelmointikielten periaatteet Harjoitus 6 Vastaukset 815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 6 Vastaukset Harjoituksen aiheena on funktionaalinen ohjelmointi Scheme- ja Haskell-kielillä. Voit suorittaa ohjelmat osoitteessa https://ideone.com/

Lisätiedot

ATK tähtitieteessä. Osa 3 - IDL proseduurit ja rakenteet. 18. syyskuuta 2014

ATK tähtitieteessä. Osa 3 - IDL proseduurit ja rakenteet. 18. syyskuuta 2014 18. syyskuuta 2014 IDL - proseduurit Viimeksi käsiteltiin IDL:n interaktiivista käyttöä, mutta tämä on hyvin kömpelöä monimutkaisempia asioita tehtäessä. IDL:llä on mahdollista tehdä ns. proseduuri-tiedostoja,

Lisätiedot

Hammastankohissin modernisointi. Heikki Laitasalmi

Hammastankohissin modernisointi. Heikki Laitasalmi Hammastankohissin modernisointi Heikki Laitasalmi Loppudemossa Mitä oltiinkaan tekemässä V-malli Modbus viestintä (PLC VFD) Esitellään laitteet Lopuksi Modbusia käytännössä Hammastankohissi Arkkitehtuuri

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 2.2.2011 T-106.1208 Ohjelmoinnin perusteet Y 2.2.2011 1 / 37 Kännykkäpalautetteen antajia kaivataan edelleen! Ilmoittaudu mukaan lähettämällä ilmainen tekstiviesti

Lisätiedot

6. Valitse avautuneesta ikkunasta Add-painike!

6. Valitse avautuneesta ikkunasta Add-painike! 1. Tallenna Mirc ohjelma koneellesi tästä osoitteesta: http://www.mirc.com/get.html 2. Asenna ohjelma 3. Avaa ohjelma mirc.exe kuvakkeesta 4. Avattuasi ohjelman se näyttää tältä(hieman leikeltynä): 5.

Lisätiedot

Käyttöohje 25.3.2008 Mekuwin V1.9.0 MekuUI V1.9.0. MekuWin II. Konfigurointiohjelma

Käyttöohje 25.3.2008 Mekuwin V1.9.0 MekuUI V1.9.0. MekuWin II. Konfigurointiohjelma Käyttöohje 25.3.2008 Mekuwin V1.9.0 MekuUI V1.9.0 MekuWin II Konfigurointiohjelma YLEISKUVAUS MekuWin-ohjelmalla voidaan muuttaa useiden Nokevalin laitteiden asetteluja ja tarkkailla niiden toimintaa.

Lisätiedot

7.4 Sormenjälkitekniikka

7.4 Sormenjälkitekniikka 7.4 Sormenjälkitekniikka Tarkastellaan ensimmäisenä esimerkkinä pitkien merkkijonojen vertailua. Ongelma: Ajatellaan, että kaksi n-bittistä (n 1) tiedostoa x ja y sijaitsee eri tietokoneilla. Halutaan

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 4.3.2009 T-106.1208 Ohjelmoinnin perusteet Y 4.3.2009 1 / 35 Tiedostot Tiedostojen käsittelyä tarvitaan esimerkiksi seuraavissa tilanteissa: Ohjelman käsittelemiä

Lisätiedot