Digitální učební materiál
Download
1 / 9

Digitální učební materiál - PowerPoint PPT Presentation


  • 63 Views
  • Uploaded on

Digitální učební materiál. Větvení programu. Mikroprocesory PIC 16Fxx. Zdrojový kód (program) pro obsluhu více tlačítek přiřazených k více LED. (stiskem rozsvítí, uvolněním zhasne). Mikroprocesory PIC 16Fxx. PIC 16F84A Větvení programu.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Digitální učební materiál' - chi


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

Mikroprocesory pic 16fxx

Větvení programu

Mikroprocesory PIC 16Fxx

Zdrojový kód (program) pro

obsluhu více tlačítek přiřazených

k více LED.

(stiskem rozsvítí, uvolněním zhasne)


Mikroprocesory pic 16fxx1
Mikroprocesory PIC 16Fxx

PIC 16F84A Větvení programu

Vícenásobné větvení programu budeme provádět postupným -cyklickým testováním všech vstupů (tlačítek).

  • V případě stisknutého tlačítka vyvoláme rozsvícení příslušné LED

  • a posuneme program na test dalšího tlačítka.

  • V případě uvolněného tlačítka vyvoláme zhasnutí příslušné LED

  • a posuneme program na test dalšího tlačítka.

  • Po testu posledního tlačítka vrátíme program za začátek cyklu.

  • Uvedeným způsobem můžeme testovat libovolný počet tlačítek.


Mikroprocesory pic 16fxx2

Nastav I/O

Test Tl1

Test Tl3

Test Tl2

Test Tl4

0

0

0

0

1

1

1

1

Rozsviť LED2

Rozsviť LED3

Rozsviť LED4

Rozsviť LED1

Mikroprocesory PIC 16Fxx

PIC 16F84A Větvení programu

Úkol: Stiskem příslušného tlačítka Tl1-4 se rozsvítí LED1-4 a uvolněním tlačítka LED zhasne.

Vývojový diagram:

Zhasni LED1

Rozsviť LED1

Zhasni LED3

Zhasni LED4

Zhasni LED2


Mikroprocesory pic 16fxx3
Mikroprocesory PIC 16Fxx

PIC 16F84A Větvení programu

Úkol: Stiskem příslušného tlačítka Tl1-4 se rozsvítí LED1-4 a uvolněním tlačítka LED zhasne.

;*********************************************************

; FUNKCE DRÁT ČTYŘI TLAČÍTKA PIC 16F84A

;*********************************************************

; tlačíko Tl1 ovládá LED1, Tl2 – LED2, Tl3 – LED3 a Tl4 – LED4

;*********************************************************

org 000

bsf status,5 ;přepne na stránku 1

movlw 0fh

movwf trisa ;Tl1 na RA0, Tl2 na RA1, Tl3 na RA2, Tl4 na RA3

movlw 00h

movwf trisb ;LED1-RB0, LED2-RB1, LED3-RB2, LED4-RB3

bcf status,5 ;návrat na stránku 0

clrf porta ;vynulování vstupů

clrf portb ;zhasnutí všech LED


Mikroprocesory pic 16fxx4
Mikroprocesory PIC 16Fxx

PIC 16F84A Větvení programu

Úkol: Stiskem příslušného tlačítka Tl1-4 se rozsvítí LED1-4 a uvolněním tlačítka LED zhasne.

tl1 btfsc porta,0

goto rozled1 ;skočí na podprogram rozsvícení

goto zhaled1 ;skočí na podprogram zhasnutí

tl2 btfsc porta,1

goto rozled2

goto zhaled2

tl3 btfsc porta,2

goto rozled3

goto zhaled3

tl4 btfsc porta,3

goto rozled4

goto zhaled4


Mikroprocesory pic 16fxx5
Mikroprocesory PIC 16Fxx

PIC 16F84A Větvení programu

Úkol: Stiskem příslušného tlačítka Tl1-4 se rozsvítí LED1-4 a uvolněním tlačítka LED zhasne.

rozled1 bsf portb,0 ;rozsvítí LED1

goto tl2 ;skočí na test tl2

zhaled1bcf portb,0 ;zhasne LED1

goto tl2 ;skočí na test tl2

rozled2 bsf portb,1 ;rozsvítí LED2

goto tl3 ;skočí na test tl3

zhaled2bcf portb,1 ;zhasne LED2

goto tl3 ;skočí na test tl3

rozled3 bsf portb,2 ;rozsvítí LED3

goto tl4 ;skočí na test tl4

zhaled3bcf portb,2 ;zhasne LED3

goto tl4 ;skočí na test tl4

rozled4 bsf portb,3 ;rozsvítí LED4

goto tl1 ;skočí na test tl1

zhaled4bcf portb,3 ;zhasne LED4

goto tl1 ;skočí na test tl1

end


Mikroprocesory pic 16fxx6
Mikroprocesory PIC 16Fxx

PIC 16F84A Větvení programu

Uvedený algoritmus je sice jednoduchý, ale značně rozsáhlý. Stejný úkol lze řešit

i kopírováním obrazu stavu tlačítek (porta) do portb. V případě negativní logiky

vstupů nebo výstupů se obraz před kopírovaním do portb neguje.

Vývojový diagram:

Zdrojový kód:

org 000

bsf status,5

movlw 0fh

movwf trisa

movlw 00h

movwf trisb

bcf status,5

clrf porta

clrf portb

loop movfw porta ;kopíruje porta do

movwf portb ;portb přes W

goto loop

end

Nastav I/O

Kopíruj porta do W

Přesuň W do portb


Pou it zdroje
Použité zdroje:

HRBÁČEK, Jiří. Moderní učebnice programování jednočipových mikrokontrolérů PIC - 1. díl.

1. vyd. Praha: BEN – technická literatura, 2004. ISBN 80-7300-136-5.

HRBÁČEK, Jiří. Moderní učebnice programování jednočipových mikrokontrolérů PIC.- 2. díl

1. vyd.Praha: BEN - technická literatura, 2007, 141 s. ISBN 978-80-7300-137-7.

PIC16F84A Data Sheet 18-pin Enhanced FLASH/EEPROM 8-bit Microcontroller [on line]. 2004 [cit. 2013-02-03]. Dostupné z: http://www.microchip.com/TechDoc.aspx?type=datasheet

Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Peter Podoba.


ad