beautypg.com

Appendix: 80c51 microcontroller code, Appendix: 80c51 microcontroller code 9, An118 – Cirrus Logic AN118 User Manual

Page 9

background image

AN118

AN118REV2

9

7. APPENDIX: 80C51 MICROCONTROLLER CODE

/*CS5521/22/23/24/28 Runtime Constants and Prototypes*/
/*PROTOTYPES*/
void initialize(void);
void decode_command(char command);
void decode_sample_index(void);
void TXSER(char);
char RXSER(void);
char receive_byte(void);
void transfer_byte(char);
void write_to_register(char command,char low,char mid, char high);
void read_register(char command);
void read_conversion(char command);
void Delay(void);
void test_mode(void);
void toggle_all_leds(void);
void toggle_two_leds(void);

/* BYTE Register equates for the register ports */
sfr P0

=

0x80;

sfr P1

=

0x90;

sfr P2

=

0xA0;

sfr P3

=

0xB0;

sfr

PSW

=

0xD0;

sfr

ACC

=

0xE0;

sfr B

=

0xF0;

sfr SP

=

0x81;

sfr DPL

=

0x82;

sfr DPH

=

0x83;

sfr PCON =

0x87;

sfr TCON =

0x88;

sfr TMOD =

0x89;

sfr TL0

=

0x8A;

sfr TL1

=

0x8B;

sfr TH0

=

0x8C;

sfr TH1

=

0x8D;

sfr

IE =

0xA8;

sfr

IP =

0xB8;

sfr SCON =

0x98;

sfr

SBUF =

0x99;

/*PORT 1 equates*/
sbit CS

=

0x90

; /* Chip Select */

sbit SDI

=

0x91

; /* Serial Data In */

sbit SDO

=

0x92

; /* Serial Data Out */