untitled.c

来自「AVR单片机控制实现播放CD音频数据」· C语言 代码 · 共 49 行

C
49
字号
void WriREG(unsigned char LSB, unsigned char MSB, unsigned char REG){ 
	CDCOM = REG; //设要写的REG
    ATA_C_MS_OUT ;
    ATA_C_LS_OUT ;
	A0=CDCOM&0x01;
	A1=(CDCOM>>1)&0x01;
	A2=(CDCOM>>2)&0x01;
	CS0=(CDCOM>>3)&0x01;
	CS1=(CDCOM>>4)&0x01;
	WR=(CDCOM>>5)&0x01;
	RD=(CDCOM>>6)&0x01;
	RST=(CDCOM>>7)&0x01;
	CS0 = 0;
	WR  = 0;
 	ATA_DATA_MS_OUT ;
    ATA_DATA_LS_OUT ;
	DBL = LSB;
	DBM = MSB; //写数据
	WR = 1;
	CS0 = 1; 
	DBL = 0xFF;
	DBM = 0xFF;
	delay_ms(3); //延时
 	ATA_DATA_MS_IN  ;
    ATA_DATA_LS_IN  ;
    void RedREG(unsigned char REG){ 
	CDCOM = REG; //设要读的寄存器 
	ATA_C_MS_OUT ;
    ATA_C_LS_OUT ;
   	ATA_DATA_MS_IN  ;
    ATA_DATA_LS_IN  ;
	A0=CDCOM&0x01;
	A1=(CDCOM>>1)&0x01;
	A2=(CDCOM>>2)&0x01;
	CS0=(CDCOM>>3)&0x01;
	CS1=(CDCOM>>4)&0x01;
	WR=(CDCOM>>5)&0x01;
	RD=(CDCOM>>6)&0x01;
	RST=(CDCOM>>7)&0x01;
	//EA=0;//程序中有中断程序时应先关中断
 	CS0=0; 
 	RD = 0; //开始读数据线 

 	REGBL = DBL; //从数据线上读状态寄存器值
 	REGBM = DBM;
 	RD = 1; 
 	CS0 = 1; //RD,CS1置回
 	delay_ms(3); //延时
 	} 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?