⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mt8880.txt

📁 MT8880拨号参考资料MT8880拨号参考资料
💻 TXT
字号:
/**************************************************************************************/ MT8880相关程序 
sbit DTMFOK = P3^4; //DTMF转换完成信号,中断方式,
INT1 sbit HZ450OK = P3^2; //450Hz话线信号,用来识别忙音等 
sbit CS8880 = P1^6; //8880片选 
sbit CLK8880 = P1^7; //8880时钟 
sbit RW8880 = P2^4; //8880读写控制,0写 
sbit RS8880 = P2^5; //8880积存器选择,0数据寄存器,1命令寄存器或者状态寄存器 /*************************************************************************************/ 
uchar Rd8880Da(void) 
/*************************************************************************************/ 
名称:uchar Rd8880Da(void) 功能:发出读MT8880数据命令a 入口: 出口:读出的数据 调用:返回后必须在延时后调用CL8880 ****************************************************************************************
{unsigned char rdata; 
CS8880 = 1; 
RS8880 = 0; 
RW8880 = 1; 
CLK8880 = 0; 
P2 = 0x0FF; 
RS8880 = 0;
 RW8880 = 1; 
CS8880 = 0; // 
Delay(5,5); 
CLK8880 = 1; 
Delay(1,1); 
rdata = P2&0x0f; 
CLK8880 = 0; // 
Delay(10,50); 
RW8880 = 0; // 
Delay(10,50); 
Cl8880(); 
return ( rdata); 
} 
uchar Rd8880St(void) 
/***************************************************************************************
名称:uchar Rd8880St(void); 功能:发出读MT8880状态 入口: 出口:读出的状态 调用:返回后必须在延时后调用CL8880 ****************************************************************************************
{unsigned char rstu; 
CS8880 = 1; 
RS8880 = 0; 
RW8880 = 1; 
CLK8880 = 0; 
P2 = 0x0FF; 
RS8880 = 1; 
W8880 = 1; 
CS8880 = 0; // 
Delay(100,50);
 CLK8880 = 1; 
Delay(1,1); 
rstu = P2&0x0f; 
CLK8880 = 0; // 
Delay(100,50); 
RW8880 = 0; // 
Delay(50,50); 
Cl8880(); 
return ( rstu ); 
} 
void Wt8880Da(uchar da) 
/***************************************************************************************名称:uvoid Wt8880Da(uchar da) 功能:写8880数据 入口:da,低四位 出口: 调用:返回后必须在延时后调用CL8880 ****************************************************************************************
{ P2 = 0x0FF; 
P2 = da | 0x0F0;
 CS8880 = 1; 
RS8880 = 0; 
RW8880 = 1; 
CLK8880 = 0; 
RS8880 = 0;
 RW8880 = 0; 
CS8880 = 0; // 
Delay(100,50); 
CLK8880 = 1; 
Delay(1,1); 
CLK8880 = 0; // 
Delay(100,50); // 
RW8880 = 1; // 
Delay(50,50); 
Cl8880(); 
} 
void Wt8880Cr(uchar da) 
/***************************************************************************************名称: void Wt8880Cr(uchar da); 功能:写8880命令字寄存器 入口:da,低四位 出口: 调用:返回后必须在延时后调用CL8880 ****************************************************************************************
{ P2 = 0x0FF; 
P2 = da | 0x0F0; 
CS8880 = 1; 
RS8880 = 0; 
RW8880 = 1; 
CLK8880 = 0; 
RS8880 = 1; 
RW8880 = 0; 
CS8880 = 0; //
 Delay(100,50); 
CLK8880 = 1; 
Delay(1,1); 
CLK8880 = 0; // 
Delay(100,50); // 
RW8880 = 1; //
 Delay(50,50); 
Cl8880(); 
} 
void Cl8880(void) 
/***************************************************************************************名称: void Cl8880(void) 功能:关闭8880 入口: da,低四位 出口: 调用: ****************************************************************************************{ P2 = 0x0FF; CS8880 = 1; CLK8880 = 1; } void Init8880(void) /***************************************************************************************名称:
void Init8880(void) 功能:初始化MT8880 入口: 出口: 调用: 定义: ****************************************************************************************
{ MT8880DATA = 0; 
Wt8880Cr(MT8880DATA); //
 Delay(50,100); //
延时 Cl8880();
 MT8880DATA = TOUT + MC*2 + IRQ *4 +RS * 8; Wt8880Cr(MT8880DATA); // 
Delay(50,100); //延时 
Cl8880(); 
MT8880DATA = BURST + TEST*2 + S_C *4 +C_R * 8; 
Wt8880Cr(MT8880DATA); //
 Delay(50,100); //
延时 Cl8880(); 
} 

⌨️ 快捷键说明

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