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

📄 other.c

📁 本程序是mc145572U接口驱动程序,有一些问题,希望大家指点.
💻 C
字号:
#include "reg51.h"
#include "intrins.h"
#include "absacc.h"
#include "io.h"//AT89C2051的IO定义
#include "spi.h"//将SPI子函数定义为外部函数
#include "sub.h"//激活子函数定义为外部函数
#include "ch.h"//通道子函数定义为外部函数
 
/******初始化各控制寄存器*******/

   void initial_reg()
 {
  delayms(100);
 
  //unsigned char x,y;
 /*****************************************************
 Nibble registers NR0~NR5为8位  地址是高4位的后3位为0-A2-A1-A0 低4位为数据
 //3位地址与NR0~NR5对应;地址6和7有其他作用
 //例如:NR1对应地址001
 ******************************************************/ 
 
  
 //WRITE NR2 有效控制寄存器
 writedata(0x24,8);//地址0-010,数据0100

//WRITE NR4 中断使能寄存器
 writedata(0x4F,8); //IRQ使能都有效,地址0-100,数据1111

//WRITE NR5 IDL2数据控制寄存器
  writedata(0x51,8);//地址0-101,block阻塞B1,B2通道,数据0001  0001不阻塞B1,B2通道

 

 /****************************************************
 Nibble register R6为双8位,R6的地址是前8位的高4位0-A2-A1-A0后12位为数据
 //固定地址6: 写地址为0-A2-A1-A0为0110读数据0-A2-A1-A0为1110
 // R6写读都可以为8位和16位选择 
******************************************************/

//R6 eoc 数据寄存器 Embedded Operations Channel (eoc)
 




 /****************************************************
 Byte registers BR0~BR15为双8位,前8位的低4位为地址0111-A3-A2-A1-A0后8位为数据
 //4位地址与BR0~BR15对应?
 // BR0~BR15写读都可以为8位和16位选择
******************************************************/

 //WRITE BR0 M4发送数据寄存器

writedata(0x70,8);// 先写入地址0111-0000
writedata(0xfd,8);// (选择写入数据)如果是网络到NT写入数据11111101/uoa-只有u接口有效置0
writedata(0x8f,8);// 如果是NT到网络写入数据10001111/
 
 //WRITE BR1 M4接收数据寄存器
writedata(0x71,8);//先写入地址0111-0001
writedata(0xfd,8);// (选择写入数据)如果是网络到NT写入数据11111101/uoa-只有u接口有效置0
writedata(0x8f,8);// 如果是NT到网络写入数据10001111/

 //WRITE BR2 M5与M6发送数据寄存器

writedata(0x72,8); //先写入地址0111-0010
writedata(0xf0,8); //b0-b3必须为0

//WRITE BR3 M5与M6接收数据寄存器

writedata(0x73,8); //先写入地址0111-0011
writedata(0xf0,8); //

 //WRITE BR4 febe 计数器
 //WRITE BR5 nebe 计数器
 //WRITE BR6 loopback IDL2 控制
 //WRITE BR7  IDL2 配置
 //WRITE BR8  发送帧和模式控制
 //WRITE BR9  主通道配置
 //WRITE BR10 覆盖选择寄存器

 //WRITE BR13 eco canceller测试寄存器
 //WRITE BR14 测试寄存器
 //WRITE BR15 校订数寄存器

 }

/**********************读出各状态寄存器的信息的函数***************/
 unsigned char read_statusReg()
{
unsigned char ddt;
 
//READ NR1  有效状态寄存器

//reaad BR1 and BR3

//READ BR11 有效状态寄存器

//READ BR12 有效状态测试寄存器

return(ddt);
 }

⌨️ 快捷键说明

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