Blame | Last modification | View Log | Download | RSS feed
ifndef __pmc884inc ; avoid multiple inclusion__pmc884inc equ 1savelisting off ; no listing over this file;****************************************************************************;* *;* AS 1.42 - File PMC884.INC *;* *;* contains SFR and Bit Definitions for Padauk PMC884/MCS11 *;* *;* Sources: PMC884 Data Sheet, Ver. 0.03, Jan 12, 2018 *;* MCS11 Data Sheet, Ver. 0.20, Apr 20, 2018 *;* *;****************************************************************************;----------------------------------------------------------------------------; Interrupt Controlinten sfr 0x04 ; Interrupt Enabletimer2_inten bit inten.6 ; Timer2 Interrupt Enablepwmg_inten bit inten.5 ; PWMG Interrupt Enablecomp_inten bit inten.4 ; Hall Comparator Interrupt Enableadc_inten bit inten.3 ; ADC Interrupt Enabletimer16_inten bit inten.2 ; Timer16 Interrupt Enablepb0_inten bit inten.1 ; PB0/PB7 Interrupt Enablepa0_inten bit inten.0 ; PA0/PA5 Interrupt Enableintrq sfr 0x05 ; Interrupt Request Registertimer2_intrq bit intrq.6 ; Timer2 Interrupt Requestpwmg_intrq bit intrq.5 ; PWMG Interrupt Requestcomp_intrq bit intrq.4 ; Comparator Interrupt Requestadc_intrq bit intrq.3 ; ADC Interrupt Requesttimer16_intrq bit intrq.2 ; Timer16 Interrupt Requestpb0_intrq bit intrq.1 ; PB0/PB7 Interrupt Requestpa0_intrq bit intrq.0 ; PA0/PA5 Interrupt Requestintegs sfr 0x0c ; Interrupt Edge Registertimer16_egs bit integs.4 ; Timer16 Edge Selectionpb0_egs _bfield integs,2,2 ; PB0/PB7 Edge Selectionpa0_egs _bfield integs,0,2 ; PA0/PA5 Edge Selection;----------------------------------------------------------------------------; CPU Core__numcpus equ 8clkmd sfr 0x03clkselect _bfield clkmd,5,3 ; Clock Selectihrc_enable bit clkmd.4 ; IHRC Enableclktype bit clkmd.3 ; Clock Type Selectilrc_enable bit clkmd.2 ; ILRC Enablewd_enable bit clkmd.1 ; Watch Dog Enablepa5_prst bit clkmd.0 ; Pin PA5/RESET# Functioneoscr sfr 0x0a ; External Oscillator Setting Registerenxtal bit eoscr.7 ; Enable external crystalxtalsel _bfield eoscr,5,2 ; External Crystal Oscillator Selectionpwrdn bit eoscr.0 ; Power Down Band Gap and LVR Hardwareihrcr sfr 0x0b ; IHRC Oscillator Control Registermisc sfr 0x3b ; MISC Registeren32k_lcur bit misc.6 ; Enable 32 kHz low current after osc.en_fwkup bit misc.5 ; Enable Fast Wakeuplvr_rec bit misc.3 ; LVR Recover Timedis_lvr bit misc.2 ; Disable LVR Functionwdperiod _bfield misc,0,2 ; Watchdog Timeoutrop sfr 0x3e ; Register Option Registerpwmg_res bit rop.3 ; PWMG Resolution Selectiontm16_clkprediv bit rop.2 ; Timer16 Clock Pre-Dividerextint1_opt bit rop.1 ; External Interrupt 1 Pin Selectionextint0_opt bit rop.0 ; External Interrupt 0 Pin Selectionrstst sfr 0x25 ; Reset Status Registerwdg_rst bit rstst.7 ; Watchdog Reset Flaginv_opc_rst bit rstst.6 ; Invalid Opcode Reset Flagpa5_rst bit rstst.3 ; PA5 External Reset Flagvdd_bel_4v bit rstst.2 ; Vdd below 4Vvdd_bel_3v bit rstst.1 ; Vdd below 3Vvdd_bel_2v bit rstst.0 ; Vdd below 2V;----------------------------------------------------------------------------; Multipliermulop sfr 0x08 ; Multiplier Operand Registermulrh sfr 0x09 ; Multiplier Result High Byte Register (ro);----------------------------------------------------------------------------; GPIOpadier sfr 0x0d ; Port A Digital Input Enable Registerpbdier sfr 0x0e ; Port B Digital Input Enable Registerpa sfr 0x10 ; Port A Data Registerpb sfr 0x14 ; Port B Data Registerpac sfr 0x11 ; Port A Control Registerpbc sfr 0x15 ; Port B Control Registerpaph sfr 0x12 ; Port A Pull High Registerpbph sfr 0x16 ; Port B Pull High Register;----------------------------------------------------------------------------; Timert16m sfr 0x06 ; Timer 16 Mode Registertm16_clksrc _bfield t16m,5,3 ; Timer Clock Source Selectiontm16_clkdiv _bfield t16m,3,2 ; Internal Clock Dividertm16_isrc _bfield t16m,0,3 ; Interrupt Sourcetm2c sfr 0x3c ; Timer2 Control Registertm2_clksel _bfield tm2c,4,4 ; Clock Selectiontm2ct sfr 0x3d ; Timer 2 Counter Registertm2s sfr 0x37 ; Timer 2 Scaler Registertm2_prescal _bfield tm2s,5,2 ; Clock Prescalertm2_clkscal _bfield tm2s,0,5 ; Clock Scalertm2b sfr 0x09 ; Timer 2 Bound Register;----------------------------------------------------------------------------; ADCadcc sfr 0x20 ; ADC Control Registeradc_en bit adcc.7 ; Enable ADCadc_pr_ctl bit adcc.6 ; ADC Process Control Bitadc_chsel _bfield adcc,2,4 ; ADC Channel Selectadcm sfr 0x21 ; ADC Mode Registeradc_res _bfield adcm,5,3 ; Resolution Selectadc_clksel _bfield adcm,1,4 ; Clock Source Selectadcrh sfr 0x22 ; ADC Result High Registeradcrl sfr 0x23 ; ADC Result Low Register;----------------------------------------------------------------------------; Hall Comparatorhcc sfr 0x2a ; Comparator Controlhcc_en bit hcc.7 ; Enablehcc_res1 bit hcc.6 ; Result 1hcc_res2 bit hcc.5 ; Result 2hcc_out bit hcc.4 ; HC_Outhcc_isrc _bfield hcc,0,3 ; Output to PA5 and Interrupt Source Selectionhc1a sfr 0x2b ; Hall Comparator 1 Adjust Registerhcc_psel bit hc1a.7 ; Positive Pin Selectionhcc_msel _bfield hc1a,5,2 ; Negative Pin Selectionhcc1_adj _bfield hc1a,0,5 ; Comparator 1 Adjust Bitshc2a sfr 0x2c ; Hall Comparator 2 Adjust Registerhcc2_adj _bfield hc2a,0,5 ; Comparator 2 Adjust Bits;----------------------------------------------------------------------------; Comparatorgpcc sfr 0x3e ; Comparator Controlgpcc_en bit gpcc.7 ; Enablegpcc_res bit gpcc.6 ; Resultgpcc_samp bit gpcc.5 ; Output sampled by TM2_CLK?gpcc_pol bit gpcc.4 ; Output Polarity Selectiongpcc_minp _bfield gpcc,1,3 ; Minus Input Selectiongpcc_pinp bit gpcc.0 ; Plus Input Selectiongpcs sfr 0x22 ; Comparator Selection Registergps_oe bit gpcs.7 ; Output Enablegps_wkup bit gpcs.6 ; Wake-Up Enablegps_hrng bit gpcs.5 ; High Range Selectgps_lrng bit gpcs.4 ; Low Range Selectgps_lvl _bfield gpcs,0,4 ; Voltage Level;----------------------------------------------------------------------------; PWMpwmc sfr 0x30 ; PWM Generator Control Registerpwm_en bit pwmc.7 ; Enablepwm_out bit pwmc.6 ; Output Valuepwm_pol bit pwmc.5 ; Output Polaritypwm_res bit pwmc.4 ; Counter Resetpwm_osel _bfield pwmc,1,3 ; Output Pin Selectionpwm_clksrc bit pwmc.0 ; Clock Sourcepwms sfr 0x31 ; PWM Scalar Registerpwm_imode bit pwms,7 ; Interrupt Modepwm_prescal _bfield pwms,5,2 ; Prescalerpwm_clkdiv _bfield pwms,0,5 ; Clock Dividerpwmgcubh sfr 0x1a ; PWM Counter Upper Bound High Registerpwmgcubl sfr 0x1b ; PWM Counter Upper Bound Low Registerpwmgdth sfr 0x32 ; PWM Duty Value High Registerpwmgdtl sfr 0x33 ; PWM Duty Value Low Registerpwmptr0 sfr 0x27 ; PWM Protect Register 0 (write once)pwm0_lowdest _bfield pwmptr0,5,3 ; PWM Low Side Output Destinationpwm0_prpol bit pwmptr0,4 ; PWM Protect Polaritypwm0_hisel _bfield pwmptr0,0,4 ; PWM Hi-Side Selected Pinpwmptr1 sfr 0x28 ; PWM Protect Register 1 (write once)pwm1_lowdest _bfield pwmptr1,5,3 ; PWM Low Side Output Destinationpwm1_prpol bit pwmptr1,4 ; PWM Protect Polaritypwm1_hisel _bfield pwmptr1,0,4 ; PWM Hi-Side Selected Pin;----------------------------------------------------------------------------; Pulse Captureplscc sfr 0x34 ; Pulse Capture Control Registerplscc_start bit plscc.7 ; Start Pulse Captureplscc_ovr bit plscc.6 ; Pulse Capture Overflowplscc_fr_eg bit plscc.5 ; Front Edge Selectionplscc_bk_eg bit plscc.4 ; Back Edge Selectionplscc_src _bfield plscc,0,3 ; Source Selectionplscs sfr 0x35 ; Pulse Capture Scaler Registerpls_clksrc _bfield plscs,2,2 ; Clock Sourcepls_clkdiv _bfield plscs,0,2 ; Calpture Clock Dividerplsrh sfr 0x36 ; Pulse Capture Result Highplsrl sfr 0x37 ; Pulse Capture Result Lowrestoreendif ; __pmc884inc