1 / 13

EINGEBETTETE SYSTEME

EINGEBETTETE SYSTEME. Beispiel mit der PIC Mikrocontrollern. Die REGISTER. INTCON Register. T0IF: Der Interrupt wurde durch einen Timer Überlauf hervorgerufen ( T imer 0 I nterrupt F lag). Bei einem Interrupt wird außer der Auslösung des Sprungs zu 04H das Bit 2 im Intcon-Register

jerica
Download Presentation

EINGEBETTETE SYSTEME

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. EINGEBETTETESYSTEME

  2. Beispiel mit der PIC Mikrocontrollern

  3. Die REGISTER INTCON Register T0IF: Der Interrupt wurde durch einen Timer Überlauf hervorgerufen (Timer 0 Interrupt Flag). Bei einem Interrupt wird außer der Auslösung des Sprungs zu 04H das Bit 2 im Intcon-Register gesetzt. Es muß per Software gelöscht werden.

  4. Der Timer Der Timer0 (TMR0) ist wahlweise ein, vom Prozessortakt abhängiger, 8-Bit Timer oder Zähler. Dies kann im Option-Register durch Bit 5 festgelegt werden (0=intern=Timer; 1=extern=Zähler an RA4). Das TMR0-Register (Bank 0, 01h), in dem gezählt wird, kann ebenso beschrieben wie gelesen werden. Zur Verlängerung der Zeitperiodendauer oder bei sehr großen Zählfrequenzen kann ein Prescaler vorgeschaltet werden (dieser kann beschrieben, jedoch nicht gelesen werden). Dieser ist alternativ beim WDT oder TMR0 einsetzbar. Die Zuweisung erfolgt durch Bit 3 im Option-Register (0=TMR0; 1=WDT). Der Wert des Prescalers wird durch die Bits 2-0 im Option-Register bestimmt.

  5. Die ASM-BEFEHLE

  6. list p=16F84A • 2. #include <p16F84A.inc> • 3. _CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC • 4. *****************************Kostante und Variable ********************************* • 5. w EQU 0 • 6. f EQU 1 • 7. Counter EQU H’0C’ • 8. ************************************************************************************ • 9. Anwenderprogramm • 10.************************************************************************************ • 11. ORG H’0000’ • 12. goto start • 13.************************************************************************************ • 14. Programmstart • 15.************************************************************************************ • 16. Start bsf STATUS,RPO ;Bank 1 • 17. movlw B’11010111’ ;11010111b in W • 18. movwf OPTION_REG ;W in OPTION_REG • 19. bcf STATUS,RPO ;Bank0 • 20. clrf PORTB ;PORTB löschen • 21. bsf STATUS,RPO ;Bank 1 • 22. movlw B’11111110’ ;11111110 in W • 23. movwf TRISB ;RB7-RB1-Eing.,RB0-Ausg • 24. bcf STATUS,RPO ;Bank 0 • 25.goto main PIC16F84

  7. PIC16F84 26.**************************************************************************************** 27. Unterprogramm “Wait”- 460ms 28.**************************************************************************************** 30.wait movlw D’7’ ;7 in W 31. movwf Counter ;lade W in Counter 32. clrf TMRO ;lösche TMR0 33.again bcf INTCON,TOIF ;TMR0 overflow interrupt flag bit löschen 34.loop btfss INTCON,TOIF ;springe wenn T0IF gesetzt 35. goto loop ;nein, Counter = 0? 36. decfsz Counter,f ;ja, Counter = 0? 37. goto again 38. return 39.**************************************************************************************** 40. Hauptprogramm 41.**************************************************************************************** 42.main bsf PORTB’0 ;Leuchtdiode ein 43. call wait 44. bcf PORTB’0 ;Leuchtdiode aus 45. call wait 46. goto main 47. END

  8. REGISTER FILE MAP system und universelle 8-bit-Register unimplemented data memory location; read as ‘0’

  9. Beschreibung des PIC16C84

  10. Blockschaltbild des PIC16F84

  11. END

  12. Unterschiedliche Drehmomentverläufe bei verschiedenen Ansteuervariaenten

More Related