PIC: Porovnání verzí

Z MediaWiki SPŠ a VOŠ Písek
Skočit na navigaci Skočit na vyhledávání
 
(Není zobrazeno 5 mezilehlých verzí od stejného uživatele.)
Řádek 21: Řádek 21:


<gallery>
<gallery>
Soubor:D10_HW_019.jpg|HW:[http://www.asix.cz/a6picquick.htm PICQUICK] SW:[[UP]]
Soubor:D10_HW_presto.jpg|Programátor: [[PRESTO]] SW: [[UP]]
Soubor:D10_HW_019.jpg|Programátor: [http://www.asix.cz/a6picquick.htm PICQUICK] SW:[[UP]]
</gallery>
</gallery>


== Škola programování Pandatron ==
== Škola programování Pandatron ==
Řádek 54: Řádek 51:




[[Soubor:PIC-flasing-LED.jpg|200px|link=http://embedded-lab.com/blog/?p=148|Lab 1: Flashing an LED]
[[Soubor:PIC-flasing-LED.jpg|200px|link=http://embedded-lab.com/blog/?p=148|Lab 1: Flashing an LED]]


== www ==
== www ==
Řádek 68: Řádek 65:
== Blinkin LED ==
== Blinkin LED ==


{|
|-
|
<source lang="asm">
<source lang="asm">


Řádek 76: Řádek 76:
       ORG 0          ;start program
       ORG 0          ;start program


SetUp BSF 03,5       ; Výběr banky 1
INIT: BSF STATUS, RP0  ;5. bit na adrese 03 Výběr banky 1
       CLRF 06        ; Nastavení brány B jako výstupní
       BCF TRISB,0      ; Nastavení 0. bitu na bráně B jako výstupní
       BCF 03,5        ; Výběr banky 0
       BCF STATUS, RP0  ; Výběr banky 0
       CLRF 06        ; Vynulování  
       BCF PORTB,0      ; Vynulování 0. bitu na bráně B
       GOTO Main
       GOTO Main


Delay DECFSZ 1A,1    ; Zpoždění cca 250 ms
MAIN: BSF PORTB,0    ; Rozsvítí LED na B0
       GOTO Delay
      CALL DELAY      ; Zavolá podprogram zpoždění
      BCF PORTB,0    ; Zhasne LED na B0
      CALL DELAY      ; Zavolá podprogram zpoždění
      GOTO MAIN      ; Zpět na start
 
DELAY: DECFSZ 1A,1    ; Zpoždění cca 250 ms
       GOTO DELAY
       DECFSZ 1B,1
       DECFSZ 1B,1
       GOTO Delay
       GOTO DELAY
       RETURN
       RETURN
Start  BSF 06,0       ; Rozsvítí LED
END
      CALL Delay     ; Zavolá podprogram zpoždění
</source>
      BCF 06,0       ; Zhasne LED
|
      CALL Delay     ; Zavolá podprogram zpoždění
<source lang="C">
      GOTO Start     ; Zpět na start
void main() {
unsigned short temp = 0;
unsigned int i;
 
  TRISB = 0 ;
  PORTB = 0 ;
 
  while(1) {
 
     temp = ~temp;
    if (temp) {
        setBit(PORTB,0);
     } else {
        resBit(PORTB,0);
     }
    Delay_ms(100);
  } ;
}


</source>
</source>


|-
|}
----
----
[[Category:MIT]]
[[Category:MIT]]

Aktuální verze z 4. 9. 2018, 10:43

Mikrořadiče PIC16F84PIC16F627PIC16F628PIC16F88

  • Vlastnosti: Technologie CMOS.
  • Hardwardská architektura (rozdělená paměť na paměť pro program a pro data)
  • Redukovaná instrukční sada (RICS) tj. že mají omezený počet instrukcí(35).


Development board

IDE (Integrated Development Environment)

Programmers

Škola programování Pandatron

Škola programování 8bit


Lab 1: Flashing an LED

www

Book: PIC Microcontrollers

Zapojení s PIC

náměty z N:/janousek/39_PIC_PIC16c84 a jiné

e

Blinkin LED

List P = 16F84
#include <p16F84.inc>
__CONFIG 1Bh    ;_CP_OFF & _PWRTE_ON & _WDT_OFF & _RC_OSC

       ORG 0           ;start program

INIT:  BSF STATUS, RP0  ;5. bit na adrese 03 Výběr banky 1
       BCF TRISB,0      ; Nastavení 0. bitu na bráně B jako výstupní  
       BCF STATUS, RP0  ; Výběr banky 0
       BCF PORTB,0      ; Vynulování 0. bitu na bráně B
       GOTO Main

MAIN:  BSF PORTB,0     ; Rozsvítí LED na B0
       CALL DELAY      ; Zavolá podprogram zpoždění 
       BCF PORTB,0     ; Zhasne LED na B0
       CALL DELAY      ; Zavolá podprogram zpoždění
       GOTO MAIN       ; Zpět na start

DELAY: DECFSZ 1A,1     ; Zpoždění cca 250 ms
       GOTO DELAY
       DECFSZ 1B,1
       GOTO DELAY
       RETURN
END
void main() {
unsigned short temp = 0;
unsigned int i;

  TRISB = 0 ;
  PORTB = 0 ;

  while(1) {

     temp = ~temp;
     if (temp) {
        setBit(PORTB,0);
     } else {
        resBit(PORTB,0);
     }
     Delay_ms(100);
  } ; 
}