poradil by mi prosím někdo,jak správně inicializovat HW zařízení (viz obrázek).Nějak se mi to nedaří ,zničil jsem už dva PICy.
(Timer nebude použit)

Moderátor: Moderátoři

Kód: Vybrat vše
;**********************************************************************
; Author:
;**********************************************************************
; Files required: <P12F675.INC>
;**********************************************************************
list p=12F675 ; definice procesoru, pro ktery je program urcen
#include <P12F675.INC> ; definice promnennych daneho procesoru
errorlevel -302 ; vypnuti nadbytecnych chybovych hlaseni o bankach
; nastaveni konfiguracniho slova podle pozadavku
__CONFIG _CP_OFF &_CPD_OFF & _WDT_OFF & _MCLRE_ON &_BODEN_OFF &_PWRTE_ON &_INTRC_OSC_NOCLKOUT
;--------- CONSTANTS DEFINITIONS---------------------------------------
#define RAM_Start 0x20
;--------- VARIABLE DEFINITIONS ---------------------------------------
CBLOCK RAM_Start
w_temp ; variable used for context saving
status_temp ; variable used for context saving
ENDC
;----------------------------------------------------------------------
ORG 0x000 ; Processor reset vector
goto init ; Go to beginning of program
ORG 0x004 ; interrupt vector location
nop
init
bsf STATUS, RP0 ; Restore Bank 1
call 0x3FF ; Get the cal value
movwf OSCCAL ; Calibrate
movlw 0<<GP5|0<<GP4|1<<GP3|0<<GP2|1<<GP1|1<<GP0
movwf TRISIO
movlw 0<<ADCS2|0<<ADCS1|1<<ADCS0|0<<ANS3|0<<ANS2|1<<ANS1|0<<ANS0
movwf ANSEL
bcf STATUS,RP0 ; Restore Bank 0
movlw 1<<ADFM|0<<VCFG|0<<CHS1|1<<CHS0|0<<GO|1<<ADON
movwf ADCON0
movlw 0x07 ; odpojeni komparatoru CMP
movwf CMCON ; "
clrf GPIO
endKód: Vybrat vše
bsf STATUS, RP0 ; Restore Bank 1
call 0x3FF ; Get the cal value
movwf OSCCAL ; Calibrate
Kód: Vybrat vše
Poznámka: Registry ANSEL (9Fh) a CMCON (19h) musí být nejprve inicializovány, aby se jejich prostednictvím
mohl nastavit digitální vstup na analogovém kanálu. Vývody, které jsou nastaveny jako analogové
vstupy, jsou teny jako ‚0‘. Registr ANSEL je definován pouze pro PIC12F675.