AD Wandler Prog funzt nicht PIC 16f877

Im Unterforum Microcontroller - Beschreibung: Hardware - Software - Ideen - Projekte

Elektronik Forum Nicht eingeloggt       Einloggen       Registrieren




[Registrieren]      --     [FAQ]      --     [ Einen Link auf Ihrer Homepage zum Forum]      --     [ Themen kostenlos per RSS in ihre Homepage einbauen]      --     [Einloggen]

Suchen


Serverzeit: 18 2 2025  06:07:03      TV   VCR Aufnahme   TFT   CRT-Monitor   Netzteile   LED-FAQ   Oszilloskop-Schirmbilder            


Elektronik- und Elektroforum Forum Index   >>   Microcontroller        Microcontroller : Hardware - Software - Ideen - Projekte

Autor
AD Wandler Prog funzt nicht PIC 16f877
Suche nach: pic (2056)

    







BID = 113738

AEWE47

Gerade angekommen


Beiträge: 2
 

  


also hier einmal mein Programm is klar macht noch keinen SInn muss se auch nicht funzt so oder so nicht.

list p=16f877a
#include

save equ 0x20
;**********************Initalisieren*******************************

bsf STATUS, RP0
movlw B'11000000'
movwf TRISA
clrf TRISB
clrf TRISC
clrf TRISD
movlw B'01000000'
movwf ADCON1
bcf STATUS, RP0
movf ADCON0, B'11000001'
;************************INI ende**********************************

main

bsf STATUS, RP0
movlw B'11000000'
movwf INTCON
movlw B'01000000'
movwf PIE1
bcf STATUS, RP0
bsf ADCON0, 2
movlw B'01000000'
movwf PIR1
btfss PIR1, 6
goto main

movfw ADRESH
movwf save
bsf STATUS, RP0
bcf INTCON, 7
bcf PIE1, 6
bcf STATUS, RP0
bcf PIR1, 6
goto main

Also wenn ich PIR1 und PIE1 aktiviere heißt Bit 6 auf High lege dann springt der Simulator einfach wieder, obwohl unmöglich zurück über Main zur Initalisierung der PORTS. Meist auf CLRF TRIS C. Hoffe ihr könnt mir weiter helfen, jedoch wenn eines der Bits auf LOw ist funktioniert die Schaltung ????? Die liegen doch in verschiedenen Bänken ich weis net mehr weiter, hoffe ihr könnt schnell antworten is für die Firma

BID = 113938

noch_frei

Gerade angekommen


Beiträge: 2

 

  

Dein Programm muß sich so verhalten, da Du die Interrupts einschaltest (GIE und PEIE) und dann ein Interruptflag setzt (ADIF). Daher springt der PIC zum Interrupt-Vektor bei 0x0004. In Deinem Listing sieht das so aus:



Code :

bsf STATUS, RP0   // 0x0000

movlw B'11000000' // 0x0001
movwf TRISA // 0x0002
clrf TRISB // 0x0003
clrf TRISC // 0x0004, Interrupt-Vektor, Bingo!



Wenn Du Interrupts nutzen willst, brauchst Du auch eine entsprechende ISR. Wenn Du nur die Interrupt-Flags abfragen willst, solltest Du die Interrupts ausgeschaltet lassen (die Flags werden trotzdem gesetzt).

Bernd


Zurück zur Seite 1 im Unterforum          Vorheriges Thema Nächstes Thema 


Zum Ersatzteileshop


Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation!
Impressum       Datenschutz       Copyright © Baldur Brock Fernsehtechnik und Versand Ersatzteile in Heilbronn Deutschland       

gerechnet auf die letzten 30 Tage haben wir 23 Beiträge im Durchschnitt pro Tag       heute wurden bisher 2 Beiträge verfasst
© x sparkkelsputz        Besucher : 183072802   Heute : 582    Gestern : 7451    Online : 291        18.2.2025    6:07
3 Besucher in den letzten 60 Sekunden        alle 20.00 Sekunden ein neuer Besucher ---- logout ----viewtopic ---- logout ----
xcvb ycvb
0.0490670204163