Can 16877
; Filename: can.asm *
;***********************************************************************************
;
; Notes: Conversion analogique numérique (en mode sleep, réveil par interruption)
; entrée AN0: broche2
; Vref+:VDD
; Vref-:VSS
; Sortie: -liaison série en binaire sur 10 bits (justifié à droite)
; choisir pour Teraterma la police Terminal
; -PORTB+PORTD
;***********************************************************************************
list p=16f877 ; list directive to define processor #include ; processor specific labels definitions #include "bank.mac" ; fichier "macro" errorlevel -302 ; supprime les messages "op. not in bank0" errorlevel -306 ; supprime les message "Crossing page" errorlevel -303 ; supprime les messages "word too large..." errorlevel -202 ; supprime les messages "Argument out of range. Least significant bits used..." __CONFIG _CP_OFF & _WDT_ON & _BODEN_ON & _PWRTE_ON & _HS_OSC & _WRT_ENABLE_ON & _LVP_ON & _DEBUG_OFF & _CPD_OFF
;----------------------------------------------------------------------
; constantes
SerialSetup equ 0x1fd6 ;sous prog dans le bootloader bootRT
TAB equ 0x09 ; tabulation (ASCII)
;------------------------------------------------------------------------
;variables
CBLOCK 0x20 cpt1: 1 cpt2: 1 cpt3: 1 dat: 1
temp1: 1 temp2: 1 ENDC
;***** VARIABLE DEFINITIONS w_temp EQU 0x70 ; variable used for context saving (non utilisée ici) status_temp EQU 0x71 ; variable used for context saving (non utilisée ici)
;********************************************************************** ORG 0x000 ; processor reset vector clrf PCLATH goto debut
ORG 0x004