Blame | Last modification | View Log | Download | RSS feed
ifndef __pmx130inc ; avoid multiple inclusion__pmx130inc equ 1savelisting off ; no listing over this file;****************************************************************************;* *;* AS 1.42 - File PMX130.INC *;* *;* contains SFR and Bit Definitions for PMC131/PMS131/PMS130 *;* *;* Sources: PMC131/PMS131/PMS130 Data Sheet, Ver. 1.07, Dec. 26, 2019 *;* *;****************************************************************************;----------------------------------------------------------------------------; Interrupt Controlinten sfr 0x04 ; Interrupt Enabletimer3_inten bit inten.7 ; Timer3 Interrupt Enabletimer2_inten bit inten.6 ; Timer2 Interrupt Enableadc_inten bit inten.4 ; ADC Interrupt Enabletimer16_inten bit inten.2 ; Timer16 Interrupt Enablepb0_inten bit inten.1 ; PB0/PA4 Interrupt Enablepa0_inten bit inten.0 ; PA0/PB5 Interrupt Enableintrq sfr 0x05 ; Interrupt Request Registertimer3_intrq bit intrq.7 ; Timer3 Interrupt Requesttimer2_intrq bit intrq.6 ; Timer2 Interrupt Requestadc_intrq bit intrq.4 ; ADC Interrupt Requesttimer16_intrq bit intrq.2 ; Timer16 Interrupt Requestpb0_intrq bit intrq.1 ; PB0/PA4 Interrupt Requestpa0_intrq bit intrq.0 ; PA0/PB5 Interrupt Requestintegs sfr 0x0c ; Interrupt Edge Registerpa0_egs _bfield integs,0,2 ; PA0/PB5 Edge Selectionpb0_egs _bfield integs,2,2 ; PB0/PA4 Edge Selectiontimer16_egs bit io(integs).4 ; Timer16 Edge Selection;----------------------------------------------------------------------------; CPU Coreclkmd sfr 0x03 ; Clock Mode Registerclkselect _bfield clkmd,5,3 ; System Clock Selectionihrc_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/PRSTB 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 Hardwaremisc sfr 0x1b ; 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 Timeout Periodrstst sfr 0x25 ; Reset Status Registerpa5_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;----------------------------------------------------------------------------; 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;----------------------------------------------------------------------------; 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 Selectadcrgc sfr 0x1c ; ADC Regulator Control Registeradc_refsel _bfield adcrgc,5,3 ; Reference Selectadc_chfsel bit adcrgc,4 ; ADC Channel F Selectoradcm sfr 0x21 ; ADC Mode Registeradc_res _bfield adcm,5,3 ; Resolution Selectadc_clksel _bfield adcm,1,3 ; Clock Source Selectadcrh sfr 0x22 ; ADC Result High Registeradcrl sfr 0x23 ; ADC Result Low 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 Selectiontm2_outsel _bfield tm2c,2,2 ; Output Selectiontm2_mode bit tm2c.1 ; Mode Selectiontm2_pol bit tm2c.0 ; Inverse Polarity of Outputtm2ct sfr 0x3d ; Timer 2 Counter Registertm2s sfr 0x37 ; Timer 2 Scaler Registertm2_pwmsel bit tm2s,7 ; PWM Resolution Selectiontm2_prescal _bfield tm2s,5,2 ; Clock Prescalertm2_clkscal _bfield tm2s,0,5 ; Clock Scalertm2b sfr 0x09 ; Timer 2 Bound Register (??? conflict with multiplier)tm3c sfr 0x2e ; Timer3 Control Registertm3_clksel _bfield tm3c,4,4 ; Clock Selectiontm3_outsel _bfield tm3c,2,2 ; Output Selectiontm3_mode bit tm3c.1 ; Mode Selectiontm3_pol bit tm3c.0 ; Inverse Polarity of Outputtm3ct sfr 0x2f ; Timer 3 Counter Registertm3s sfr 0x39 ; Timer 3 Scaler Registertm3_pwmsel bit tm3s,7 ; PWM Resolution Selectiontm3_prescal _bfield tm3s,5,2 ; Clock Prescalertm3_clkscal _bfield tm3s,0,5 ; Clock Scalertm3b sfr 0x23 ; Timer 3 Bound Register;----------------------------------------------------------------------------; PWMpwmg0c sfr 0x20 ; PWMG0 Control Registerpwm0_en bit pwmg0c.7 ; Enablepwm0_out bit pwmg0c.6 ; Output Valuepwm0_pol bit pwmg0c.5 ; Output Polaritypwm0_res bit pwmg0c.4 ; Counter Resetpwm0_osel _bfield pwmg0c,1,3 ; Output Selectionpwm0_clksrc bit pwmg0c.0 ; Clock Sourcepwmg0s sfr 0x21 ; PWMG0 Scalar Registerpwm0_imode bit pwmg0s,7 ; Interrupt Modepwm0_prescal _bfield pwmg0s,5,2 ; Prescalerpwm0_clkdiv _bfield pwmg0s,0,5 ; Clock Dividerpwmg0cubh sfr 0x24 ; PWMG0 Counter Upper Bound High Registerpwmg0cubl sfr 0x25 ; PWMG0 Counter Upper Bound Low Registerpwmg0dth sfr 0x22 ; PWMG0 Duty Value High Registerpwmg0dtl sfr 0x23 ; PWMG0 Duty Value Low Registerpwmg1c sfr 0x26 ; PWMG1 Control Registerpwm1_en bit pwmg1c.7 ; Enablepwm1_out bit pwmg1c.6 ; Output Valuepwm1_pol bit pwmg1c.5 ; Output Polaritypwm1_res bit pwmg1c.4 ; Counter Resetpwm1_osel _bfield pwmg1c,1,3 ; Output Selectionpwm1_clksrc bit pwmg1c.0 ; Clock Sourcepwmg1s sfr 0x27 ; PWMG1 Scalar Registerpwm1_imode bit pwmg1s,7 ; Interrupt Modepwm1_prescal _bfield pwmg1s,5,2 ; Prescalerpwm1_clkdiv _bfield pwmg1s,0,5 ; Clock Dividerpwmg1cubh sfr 0x2a ; PWMG1 Counter Upper Bound High Registerpwmg1cubl sfr 0x2b ; PWMG1 Counter Upper Bound Low Registerpwmg1dth sfr 0x28 ; PWMG1 Duty Value High Registerpwmg1dtl sfr 0x29 ; PWMG1 Duty Value Low Registerpwmg2c sfr 0x2c ; PWMG2 Control Registerpwm2_en bit pwmg2c.7 ; Enablepwm2_out bit pwmg2c.6 ; Output Valuepwm2_pol bit pwmg2c.5 ; Output Polaritypwm2_res bit pwmg2c.4 ; Counter Resetpwm2_osel _bfield pwmg2c,1,3 ; Output Selectionpwm2_clksrc bit pwmg2c.0 ; Clock Sourcepwmg2s sfr 0x2d ; PWMG2 Scalar Registerpwm2_imode bit pwmg2s,7 ; Interrupt Modepwm2_prescal _bfield pwmg2s,5,2 ; Prescalerpwm2_clkdiv _bfield pwmg2s,0,5 ; Clock Dividerpwmg2cubh sfr 0x30 ; PWMG2 Counter Upper Bound High Registerpwmg2cubl sfr 0x31 ; PWMG2 Counter Upper Bound Low Registerpwmg2dth sfr 0x2e ; PWMG2 Duty Value High Registerpwmg2dtl sfr 0x2f ; PWMG2 Duty Value Low Registerrestoreendif ; __pmx130inc