Laste ned presentasjonen
Presentasjon lastes. Vennligst vent
PublisertLeiv Johannessen Endret for 7 år siden
1
1 SKOLELABORATORIET Programmering av PIC-mikrokontrollere Grunnkurs Av Nils Kr. Rossing Skolelaboratoriet ved NTNU Nils Kr. Rossing
2
2 SKOLELABORATORIET Kursinnhold Introduksjon til mikrokontroller - Det første Basic-programmet - Programmer et lyskryss -
3
3 SKOLELABORATORIET Mikroprosessor - PICAXE www.skolelab.ntnu.no/ Behandling av informasjon Lys Lydsignal Motor Servostyring Display Talesyntese mm Lys, temperatur Avstand-sensor Farge-sensor IR-sensor Brytere IR-mottaker Fjernstyring Tastatur (Num) m.fl. Basic- programmering og Flow-diagram programmering
4
4 SKOLELABORATORIET Byggesettet PICAXE092 www.skolelab.ntnu.no/ 5 sett for £ 22 + MVA
5
5 SKOLELABORATORIET Programmeringskabel PICAXE027 www.skolelab.ntnu.no/
6
6 SKOLELABORATORIET Eksperimentkort for bruk i skolen AXE092 www.skolelab.ntnu.no/
7
7 SKOLELABORATORIET Mikrokontroller 8 pin www.skolelab.ntnu.no/ +4,5V 1 0V 8 Intern hukommelse Databehandlingsenhet Innganger Utganger In 4 3 4 In 3 Out 2 5 Out 1 6 7 Inngang 0 til +V (0 eller 1) ADC leser verdien av en spenning IR – Leser info fra fjernkontroll Utgang 0 til +V (0 eller 1) Tune - lydutgang
8
8 SKOLELABORATORIET Koblingsskjemaet for kortet PICAXE092 www.skolelab.ntnu.no/
9
9 SKOLELABORATORIET Hvor finnes programvaren?
10
10 SKOLELABORATORIET Programeditor www.skolelab.ntnu.no/
11
11 SKOLELABORATORIET Bruk av programvare editor www.skolelab.ntnu.no/
12
12 SKOLELABORATORIET Det første programmet www.skolelab.ntnu.no/ Start high 0 wait 1 low 0 wait 1 main: goto
13
13 SKOLELABORATORIET Help-funksjonen www.skolelab.ntnu.no/
14
14 SKOLELABORATORIET www.skolelab.ntnu.no/
15
15 SKOLELABORATORIET Byte variable b0 – b13 08M har 14 byte-variable og 7 word-variable b0 – b13 kan lagre verdier 0 – 255 w0 – w6 kan lagre verdier 0 – 65 536 www.skolelab.ntnu.no/
16
16 SKOLELABORATORIET Simulering www.skolelab.ntnu.no/
17
17 SKOLELABORATORIET Simulere kretsen www.skolelab.ntnu.no/
18
18 SKOLELABORATORIET Syntaks sjekk www.skolelab.ntnu.no/
19
19 SKOLELABORATORIET Programmering www.skolelab.ntnu.no/
20
20 SKOLELABORATORIET Oppgave 1 Programmer et trafikklys Bestem rekkefølgen på lysene i et trafikklys når lyset skifter fra rød til grønt og fra grønt til rødt. Programmer trafikklyset slik at: Det er rødt i 5 sek, gult i 1 sek og grønt i 5 sek. Nyttige opplysninger: - Rød lysdiode er koblet til utgang 0 - Gul lysdiode er koblet til utgang 1 - Grønn lysdiode er koblet til utgang 2 Bryterposisjoner: Alle brytere skal være ”on” www.skolelab.ntnu.no/
21
21 SKOLELABORATORIET Koblingsskjemaet for kortet PICAXE092 www.skolelab.ntnu.no/ Nyttige opplysninger: - Rød lysdiode er koblet til utgang 0 - Gul lysdiode er koblet til utgang 1 - Grønn lysdiode er koblet til utgang 2
22
22 SKOLELABORATORIET Oppgave 1 Nyttige kommandoer wait Stopper programmet i s - sekunder, f.eks.: wait 3 high Setter utgang n til høy spenning (ca. 4,5 V), f.eks.: high 2 low Setter utgang n til lav spenning (ca. 0 V), f.eks.: low 2 :Setter opp en adresse, f.eks.: main: goto Hopp til en adresse som er angitt i programmet, f.eks. goto main www.skolelab.ntnu.no/
23
23 SKOLELABORATORIET Løsning oppgave 1 Programmer et trafikklys
24
24 SKOLELABORATORIET Endre sekvensen i oppgave 1 slik at trafikklyset blir stående på rødt lys, helt til noen gir fotgjengerknappen ett kort trykk. Etter 5 sek. skal lyset skifte til grønt på riktig måte, være grønt i 5 sek., før det igjen skifter tilbake til rødt på riktig måte, hvor det blir stående til det kommer et nytt trykk på fotgjenger knappen. Nyttige opplysninger: - Trykknappen er koblet til inngang 3 www.skolelab.ntnu.no/ Oppgave 2 Grønt lys på forespørsel
25
25 SKOLELABORATORIET Koblingsskjemaet for kortet PICAXE092 www.skolelab.ntnu.no/ - Knappen er koblet til inngang 3
26
26 SKOLELABORATORIET b = pin Setter verdien til inngang n inn i variabel b, f.eks. b0 = pin3 If then end ifDersom betingelsen er oppfylt så skal programlinjene gjennomføres ellers skal programlinjene som ligger mellom then og exit hoppes over. En betingelse kan f.eks. være: pin3 = 1 (dvs. pin3 har høy spenning) www.skolelab.ntnu.no/ Oppgave 2 Nyttige kommandoer
27
27 SKOLELABORATORIET Løsning oppgave 2 Grønt lys på forespørsel
28
28 SKOLELABORATORIET Oppgave 3a: Endre programmet fra oppgave 2 slik at det blir grønt lys i 8 sek hvorav de siste 5 skal være blinkende. Hvert blink skal være på 500 ms på og 500 ms av (5 sek + 0,5 +0,5 + 0,5). Trafikklyset skal ellers oppføre seg som i oppgave 2. Oppgave 3b: Dessuten skal hvert grønt lysblink etterfølges av et kort pip på 50 ms Nyttige opplysninger: - Buzzeren er koblet til utgang 2. www.skolelab.ntnu.no/ Oppgave 3 Blinkende grønt lys og lydsignal på forespørsel
29
29 SKOLELABORATORIET Koblingsskjemaet for kortet PICAXE092 www.skolelab.ntnu.no/ - Buzzeren er koblet til utgang 2
30
30 SKOLELABORATORIET pause Programmet stopper i ms millisekunder, f.eks.: pause 200 (gir pause i 200 ms) sound, (, ) Kommandoen gir en lyd. De variable bestemmertonehøyde og varighet. f.eks.: sound 2,(120,2) vil gi en relativt høy tone på port 2, med en varighet på 2x10 ms (20 ms). Verdier på på over 127 gir en støylignende lyd www.skolelab.ntnu.no/ Oppgave 3 Nyttige kommandoer
31
31 SKOLELABORATORIET Løsning oppgave 3 Blinkende grønt lys og lyd på forespørsel
32
32 SKOLELABORATORIET Når det blir mørkt skal lyset gå over i blinkende gult. Det skal da være 0,5 sek. på og 0,5 sek. av helt til det blir lyst igjen. Det skal være nok å legge hånda over den lysfølsomme motstanden for at det skal begynne å blinke. Nyttige opplysninger: - Fotomotstanden er koblet til inngang 4 - Lys gir høy spenning på inngang 4 (avlest verdi over 200) - Mørke gir lav spenning på inngang 4 (avlest verdi under 100) www.skolelab.ntnu.no/ Oppgave 3 Blinkende gult lys etter mørkets frambrudd
33
33 SKOLELABORATORIET Koblingsskjemaet for kortet PICAXE092 www.skolelab.ntnu.no/ Fotomotstanden er koblet til inngang 4 - Lys gir høy spenning på inngang 4 (avlest verdi over 200) - Mørke gir lav spenning på inngang 4 (avlest verdi under 100)
34
34 SKOLELABORATORIET readadc port, Verdien på port n leses inn i variabel, f.eks.: readadc port4, b0 betyr at spenningsnivået på port 4 legges inn i variabel b0 som verdier mellom 0 og 255 avhengig av lysstyrken. If then end ifIf kommandoen brukes til å teste verdien som ligger i variabelen. f.eks. if b0 < 100 then high 2 endif www.skolelab.ntnu.no/ Oppgave 3 Nyttige kommandoer
35
35 SKOLELABORATORIET www.skolelab.ntnu.no/ Oppgave 3 Nyttige kommandoer forts. do while loop“do while” sløyfa vil gå i ring så lenge betingelsen er oppfylt. Betingelsen kan f.eks. være test på en variabel f.eks. do while b0 < 100 high 2 loop.
36
36 SKOLELABORATORIET Løsning oppgave 4 Blinkende gult lys etter mørkets frambrudd
37
37 SKOLELABORATORIET Mikrocontroller www.skolelab.ntnu.no/ Intern hukommelse Databehandlingsenhet Innganger Utganger Input 6 15 5 Output 4 10 Inngang 0 til +V (0 eller 1) ADC leser verdien av en spenning Talltastatur Utgang 0 til +V (0 eller 1)
38
38 SKOLELABORATORIET Styring av trafikklys www.skolelab.ntnu.no/
39
39 SKOLELABORATORIET Programmet (Trafikklys) Rødt Gult Rødt Grønt Rødt Gult Grønt Gult RødtGult
40
40 SKOLELABORATORIET Oversikt over kontrollere www.skolelab.ntnu.no/
41
41 SKOLELABORATORIET Alternative eksperimentkort AXE091U www.skolelab.ntnu.no/
42
42 SKOLELABORATORIET www.skolelab.ntnu.no/ Alternative eksperimentkort Talesyntes SPE030
43
43 SKOLELABORATORIET www.skolelab.ntnu.no/ IR kommunikasjonsenhet AXE040 (10£+MVA)
44
44 SKOLELABORATORIET www.skolelab.ntnu.no/ Ultralyd avstandsmåler SRF005 (12£+MVA)
45
45 SKOLELABORATORIET www.skolelab.ntnu.no/ Alternative eksperimentkort Talesyntes SPE030
46
46 SKOLELABORATORIET Oppsummering Lett å komme i gang Billig Fleksibel, mange muligheter www.skolelab.ntnu.no/
Liknende presentasjoner
© 2024 SlidePlayer.no Inc.
All rights reserved.