📄 saa1064.i
字号:
#line 1 "SAA1064.c" /0 #line 1 "..\SAA1064\PUBLIC.H" /0 #line 14 "SAA1064.c" /0 #line 1 "C:\KEIL\C51\INC\INTRINS.H" /0 extern void _nop_ (void); extern bit _testbit_ (bit); extern unsigned char _cror_ (unsigned char, unsigned char); extern unsigned int _iror_ (unsigned int, unsigned char); extern unsigned long _lror_ (unsigned long, unsigned char); extern unsigned char _crol_ (unsigned char, unsigned char); extern unsigned int _irol_ (unsigned int, unsigned char); extern unsigned long _lrol_ (unsigned long, unsigned char); extern unsigned char _chkfloat_(float); extern void _push_ (unsigned char _sfr); extern void _pop_ (unsigned char _sfr); #line 15 "SAA1064.c" /0 #line 1 "delay_s.h" /0 #line 1 "C:\KEIL\C51\INC\INTRINS.H" /0 #line 10 "C:\KEIL\C51\INC\INTRINS.H" /1 #line 25 "C:\KEIL\C51\INC\INTRINS.H" /0 #line 7 "delay_s.h" /0 void delay_1ms(void); void delay_x1ms(unsigned char); void delay_x250ms(unsigned char); #line 16 "SAA1064.c" /0 #line 1 "saa1064.h" /0 #line 1 "Public.h" /0 #line 7 "Public.h" /1 #line 36 "Public.h" /0 #line 5 "saa1064.h" /0 #line 1 "C:\KEIL\C51\INC\REG52.H" /0 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 WDTC = 0x8F; sfr IE = 0xA8; sfr IP = 0xB8; sfr SCON = 0x98; sfr SBUF = 0x99; sfr T2CON = 0xC8; sfr RCAP2L = 0xCA; sfr RCAP2H = 0xCB; sfr TL2 = 0xCC; sfr TH2 = 0xCD; sbit ACC_0 = ACC^0; sbit ACC_1 = ACC^1; sbit ACC_2 = ACC^2; sbit ACC_3 = ACC^3; sbit ACC_4 = ACC^4; sbit ACC_5 = ACC^5; sbit ACC_6 = ACC^6; sbit ACC_7 = ACC^7; sbit CY = PSW^7; sbit AC = PSW^6; sbit F0 = PSW^5; sbit RS1 = PSW^4; sbit RS0 = PSW^3; sbit OV = PSW^2; sbit P = PSW^0; sbit TF1 = TCON^7; sbit TR1 = TCON^6; sbit TF0 = TCON^5; sbit TR0 = TCON^4; sbit IE1 = TCON^3; sbit IT1 = TCON^2; sbit IE0 = TCON^1; sbit IT0 = TCON^0; sbit EA = IE^7; sbit ET2 = IE^5; sbit ES = IE^4; sbit ET1 = IE^3; sbit EX1 = IE^2; sbit ET0 = IE^1; sbit EX0 = IE^0; sbit PT2 = IP^5; sbit PS = IP^4; sbit PT1 = IP^3; sbit PX1 = IP^2; sbit PT0 = IP^1; sbit PX0 = IP^0; sbit RD = P3^7; sbit WR = P3^6; sbit T1 = P3^5; sbit T0 = P3^4; sbit INT1 = P3^3; sbit INT0 = P3^2; sbit TXD = P3^1; sbit RXD = P3^0; sbit SM0 = SCON^7; sbit SM1 = SCON^6; sbit SM2 = SCON^5; sbit REN = SCON^4; sbit TB8 = SCON^3; sbit RB8 = SCON^2; sbit TI = SCON^1; sbit RI = SCON^0; sbit T2EX = P1^1; sbit T2 = P1^0; sbit TF2 = T2CON^7; sbit EXF2 = T2CON^6; sbit RCLK = T2CON^5; sbit TCLK = T2CON^4; sbit EXEN2 = T2CON^3; sbit TR2 = T2CON^2; sbit C_T2 = T2CON^1; sbit CP_RL2 = T2CON^0; sbit P0_0 = P0^0; sbit P0_1 = P0^1; sbit P0_2 = P0^2; sbit P0_3 = P0^3; sbit P0_4 = P0^4; sbit P0_5 = P0^5; sbit P0_6 = P0^6; sbit P0_7 = P0^7; sbit P1_0 = P1^0; sbit P1_1 = P1^1; sbit P1_2 = P1^2; sbit P1_3 = P1^3; sbit P1_4 = P1^4; sbit P1_5 = P1^5; sbit P1_6 = P1^6; sbit P1_7 = P1^7; sbit P2_0 = P2^0; sbit P2_1 = P2^1; sbit P2_2 = P2^2; sbit P2_3 = P2^3; sbit P2_4 = P2^4; sbit P2_5 = P2^5; sbit P2_6 = P2^6; sbit P2_7 = P2^7; sbit P3_0 = P3^0; sbit P3_1 = P3^1; sbit P3_2 = P3^2; sbit P3_3 = P3^3; sbit P3_4 = P3^4; sbit P3_5 = P3^5; sbit P3_6 = P3^6; sbit P3_7 = P3^7; sfr P4 = 0xE8; sbit P4_0 = P4^0; sbit P4_1 = P4^1; sbit P4_2 = P4^2; sbit P4_3 = P4^3; #line 6 "saa1064.h" /0 sbit HD_SAA1064_SCL =P2^0; sbit HD_SAA1064_SDA =P2^1; bit SAA1064_read_status(unsigned char add); void SAA1064_write_string_all(unsigned char add_of_part, unsigned char add_of_reg, unsigned char len_of_all, unsigned char *str); #line 17 "SAA1064.c" /0 static void i2c_start_cond(void); static void i2c_stop_cond(void); static unsigned char i2c_read_byte(void); static unsigned char i2c_read_byte_nack(void); static void i2c_write_byte(unsigned char da); bit SAA1064_read_status(unsigned char add) { unsigned char i; i2c_start_cond(); i2c_write_byte(0x71 |((add <<1) &0x06)); i =i2c_read_byte_nack(); i2c_stop_cond(); return((i &0x80) ?1:0); } void SAA1064_write_string_all(unsigned char add_of_part, unsigned char add_of_reg, unsigned char len_of_all, unsigned char *str) { unsigned char i; if( (len_of_all ==0) || (len_of_all >5) || (add_of_reg >4) ) return; i2c_start_cond(); i2c_write_byte(0x70 |((add_of_part <<1) &0x06)); i2c_write_byte(add_of_reg); for(i=0; i<len_of_all; i++) { i2c_write_byte(str[i]); } i2c_stop_cond(); delay_x1ms(5); } static void i2c_start_cond(void) { HD_SAA1064_SCL =0; _nop_(); _nop_(); _nop_(); HD_SAA1064_SDA =1; _nop_(); _nop_(); _nop_(); HD_SAA1064_SCL =1; _nop_(); _nop_(); _nop_(); HD_SAA1064_SDA =0; _nop_(); _nop_(); _nop_(); } static void i2c_stop_cond(void) { HD_SAA1064_SCL =0; _nop_(); _nop_(); _nop_(); HD_SAA1064_SDA =0; _nop_(); _nop_(); _nop_(); HD_SAA1064_SCL =1; _nop_(); _nop_(); _nop_(); HD_SAA1064_SDA =1; _nop_(); _nop_(); _nop_(); } static unsigned char i2c_read_byte(void) { unsigned char i; unsigned char da=0; for(i =0; i<8; i++) { da <<=1; HD_SAA1064_SCL =0; _nop_(); _nop_(); _nop_(); HD_SAA1064_SCL =1; if (HD_SAA1064_SDA) da++; } HD_SAA1064_SCL =0; _nop_(); _nop_(); _nop_(); HD_SAA1064_SDA =0; _nop_(); _nop_(); _nop_(); HD_SAA1064_SCL =1; _nop_(); _nop_(); _nop_(); HD_SAA1064_SCL =0; _nop_(); _nop_(); _nop_(); HD_SAA1064_SDA =1; return(da); } static unsigned char i2c_read_byte_nack(void) { unsigned char i; unsigned char da =0; for (i =0; i<8; i++) { da <<=1; HD_SAA1064_SCL =0; _nop_(); _nop_(); _nop_(); HD_SAA1064_SCL =1; if(HD_SAA1064_SDA) da++; } HD_SAA1064_SCL =0; _nop_(); _nop_(); _nop_(); HD_SAA1064_SDA =1; _nop_(); _nop_(); _nop_(); HD_SAA1064_SCL =1; _nop_(); _nop_(); _nop_(); HD_SAA1064_SCL =0; return( da ); } static void i2c_write_byte(unsigned char da ) { unsigned char i; for(i =0; i<8; i++) { HD_SAA1064_SCL =0; if(da&0x80) { HD_SAA1064_SDA =1; } else { HD_SAA1064_SDA =0; } HD_SAA1064_SCL =1; da <<=1; } HD_SAA1064_SCL =0; _nop_(); _nop_(); _nop_(); HD_SAA1064_SDA =1; _nop_(); _nop_(); _nop_(); HD_SAA1064_SCL =1; }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -