PIC16F676 a jeho A/D převodník
Moderátor: Moderátoři
-
bohuš
PIC16F676 a jeho A/D převodník
- Přílohy
-
PIC16F676.JPG- (29.42 KiB) Staženo 210 x
-
jankop
-
bohuš
-
jankop
Jinak ti nemohu pomoci, protože když pošleš obrázek kousku programu, kde není ani start převodu, ani test jeho dokončení, tak s tím nic nenadělám. Mimochodem, kde ses naučil prezentovat assembler formou JPG? To je fakt hodně ujetý.
-
bohuš
#define GO_AD ADCON0,1
INIT
bcf STATUS,RP0
movlw 0x01
movwf PORTA ; přednastavení PORTu A
movlw 0x07 ; nastaveni PA 0-2 jako I/O
movwf CMCON
clrf PORTC ; přednastavení PORTu B
; ------------------------
bsf STATUS,RP0 ; nastavení BANKY 1
movlw b'000101' ; portA 2-0, 2vstupy, 1vystupy
movwf TRISA
movlw b'000001' ; PA0 jako analog
movwf ANSEL
movlw b'000000' ; portB 7-0, 0vstupy, 8vystupy
movwf TRISC
movlw b'11010000' ; PULL-UPy OFF, preddelic=1:32 pripojen k TMR0
movwf OPTION_REG ; f:4 :64 :156 = 100,1Hz (100us)
movlw b'00010000'
movwf ADCON1
bcf STATUS,RP0 ; nastavení BANKY 0
; ------------------------
movlw b'10000001' ;
movwf ADCON0
Převod :
bsf GO_AD
btfsc GO_AD
goto $-1
movf ADRESH,F
andlw 0xFF ; zamaskování bitů
movwf op_A+1
bsf STATUS,RP0
movf ADRESL,F
bcf STATUS,RP0
-
jankop
Použitím standardních parametrů si budeme lépe rozumnět.
bsf GO_AD
btfsc GO_AD
goto $-1
movf ADRESH,F ; Tak tohle asi ne ??? !!!
andlw 0xFF ; zamaskování bitů
movwf op_A+1
bsf STATUS,RP0
movf ADRESL,F ; A tohle taky ne !!!
bcf STATUS,RP0
-
bohuš