
3–256
Motorola Sensor Device Data
For More Information On This Product,
  Go to: www.freescale.com
099A BB 56     ADD    $56         
099C B7 58     STA    $58         
099E B6 57     LDA    $57         
09A0 B9 55     ADC    $55         
09A2 B7 57     STA    $57         
09A4 B7 55     STA    $55         
09A6 B6 58     LDA    $58         
09A8 B7 56     STA    $56         
}
09AA 3C 5B     INC    $5B         
09AC 20 D7     BRA    $0985       
09AE B6 56     LDA    $56            atodtemp = atodtemp/100;
09B0 B7 58     STA    $58         
09B2 B6 55     LDA    $55         
09B4 B7 57     STA    $57         
09B6 3F 9A     CLR    $9A         
09B8 A6 64     LDA    #$64        
09BA B7 9B     STA    $9B         
09BC CD 0B F1  JSR    $0BF1       
09BF CD 0C 22  JSR    $0C22       
09C2 BF 55     STX    $55         
09C4 B7 56     STA    $56         
09C6 81        RTS                  return atodtemp;
}
/***************************************************************************/
void fixcompare (void)  /* sets–up the timer compare for the next interrupt */
{
09C7 B6 18     LDA    $18            q.b.hi =tcnthi;
09C9 B7 66     STA    $66         
09CB B6 19     LDA    $19              q.b.lo = tcntlo;
09CD B7 67     STA    $67         
09CF AB 4C     ADD    #$4C              q.l +=7500;  /* ((4mhz xtal/2)/4) = counter period = 2us.*7500 = 15ms. */
09D1 B7 67     STA    $67         
09D3 B6 66     LDA    $66         
09D5 A9 1D     ADC    #$1D        
09D7 B7 66     STA    $66         
09D9 B7 16     STA    $16              ocmphi1 = q.b.hi;
09DB B6 13     LDA    $13             areg=tsr;  /* dummy read */
09DD B6 67     LDA    $67            ocmplo1 = q.b.lo;
09DF B7 17     STA    $17         
09E1 81        RTS                   }
/***************************************************************************/
void TIMERCMP (void)    /* timer service module */
1FF6 09 E2                          {
09E2 33 02     COM    $02             portc =~ portc;    /* service the lcd by inverting the ports */
09E4 33 01     COM    $01             portb =~ portb;
09E6 33 00     COM    $00             porta =~ porta;
09E8 AD DD     BSR    $09C7         fixcompare();
09EA 80        RTI                  }
/***************************************************************************/
void adzero(void)  /* called by initio() to save initial xdcr’s zero
pressure offset voltage output */
{
09EB 3F 64     CLR    $64           for ( j=0; j<20; ++j)  /* give the sensor time to ”warm–up” and the
09ED 3F 63     CLR    $63         
09EF B6 64     LDA    $64         
09F1 A0 14     SUB    #$14        
09F3 B6 63     LDA    $63         
09F5 A2 00     SBC    #$00        
09F7 24 0B     BCC    $0A04       
power supply time to settle down */
{
09F9 CD 09 68  JSR    $0968            delay();
}
09FC 3C 64     INC    $64         
09FE 26 02     BNE    $0A02       
0A00 3C 63     INC    $63         
0A02 20 EB     BRA    $09EF       
0A04 CD 09 7F  JSR    $097F             xdcr_offset =  read_a2d();
F
Freescale Semiconductor, Inc.
n
.