毕业论文(1)(6)

2019-06-02 14:33

浙江工业职业技术学院电气工程分院毕业设计

}

//发送八位数据的反码 irdata=D;

for(i=0;i<8;i++) {

endcount=10; flag=1; count=0;

do{}while(count

endcount=41; } else {

endcount=15; }

flag=0; count=0;

do{}while(count>1; }

endcount=10; flag=1; count=0;

do{}while(count

//-------------------------------------------------------------------------------- //接收模块程序

unsigned long Low_guide() {

unsigned long dat=0; TL1=0; TH1=0; TR1=1; while(!Ir_Pin&&((TH1*256+TL1)<5000)); dat=TH1*256+TL1; TL1=0; TH1=0;

22

浙江工业职业技术学院电气工程分院毕业设计

while(!Ir_Pin&&((TH1*256+TL1)<5000)); dat=dat+(TH1*256+TL1); TR1=0; return dat; }

unsigned int High_guide() {

TL1=0; TH1=0; TR1=1; while(Ir_Pin &&((TH1*256+TL1)<5000)); TR1=0; return TH1*256+TL1; }

//============================================================== //辨别低电平

unsigned int Ir_Get_Low() { TL1=0; TH1=0; TR1=1; while(!Ir_Pin && ((TH1&0x80)==0)); //当Ir_Pin变为1时,退出计时 TR1=0; return TH1*256+TL1; }

//============================================================= //辨别高电平

unsigned int Ir_Get_High() { TL1=0; TH1=0; TR1=1; while(Ir_Pin && ((TH1&0x80)==0));//当Ir_Pin变为0时,退出计时 TR1=0; return TH1*256+TL1; }

void timeint(void) interrupt 1 {

TH0=0xFF;

TL0=0xE6; //设定时值为38K 也就是每隔26us中断一次

23

浙江工业职业技术学院电气工程分院毕业设计

count++; if (flag==1) {

OP=~OP; } else {

OP = 0; }

P3_4 = OP; }

void Slave_init() { call_master_flag=0; sys_code=0; call_addr=0; ////////////////////// count = 0; flag = 0; OP = 0; P3_4 = 0; }

//临时用

void disp(uchar n1,uchar n2,uchar n3) { Num1_Ram=n1/10; Num2_Ram=n1; Num3_Ram=n2/10; Num4_Ram=n2; Num5_Ram=n3/16; Num6_Ram=n3; SMS06_display(); }

//============================================================== //主函数 void main() { uchar n=0; Slave_init(); init_SMS0601(); TMOD=0x11;//定时器1采用16为计时

24

浙江工业职业技术学院电气工程分院毕业设计

TH0 = 0xFF;

TL0 = 0xE6; //设定时值0为38K 也就是每隔26us中断一次 ET0 = 1; //定时器0中断允许 TR0 = 0;

EA = 1; //允许CPU中断 while(1) { restart: while(Ir_Pin);//等待主机呼叫 //////////////////////////////////////////////////////////////////////////// guide_high=Low_guide(); //guide_long=Ir_Get_Low(); if(guide_high<8000 || guide_high>9900) continue;//引导脉冲低电平9000

guide_low=High_guide(); //guide_long=Ir_Get_High();

if(guide_low<4000 || guide_low>5000) continue;//引导脉冲高电平4500 //////////////////////////////////////////////////////////////////////////////

for(i=0;i<4;i++) //4个字节

for(j=0;j<8;j++) //每个字节8位 { //排除干扰+载波低电平通过 temp=Ir_Get_Low();//载波为560m if(tempc(800)) goto restart; //读取高电平时间,先排除干扰,再判断是低电平还是高电平 temp=Ir_Get_High(); }

if(tempc(2000)) goto restart;

Ir_Buf[i]>>=1;//给第一位清零,配合装值,第二次才正式使用 //判断高低电平,高:>1120us 低:<1120us

if(temp>1120) Ir_Buf[i]|=0x80;//第一位为1 ,否则为0

//判断系统码是不是正确,yes 取地址信息, no 退出 sys_code=Ir_Buf[0]/16;//转换成系统码

//if(sys_code!=10)

//if(sys_code==10||sys_code==1) if(sys_code==10)

25

浙江工业职业技术学院电气工程分院毕业设计

{ call_addr=Ir_Buf[0];//取地址 call_master_flag=1; } else { goto restart;//返回 } ////////////////////////////////////////////////// if(call_master_flag==1) { if(call_addr==1) { RH(); T_RH[0]=0xa1;//系统码+地址 T_RH[1]=temp_val/10;//装温度整数值 T_RH[2]=RH_val/10;//装湿度整数值 T_RH[3]=(temp_val)*16+(RH_val);//高4位装温度小数值,低4位装湿度小数值 SendIRdata(T_RH[0],T_RH[1],T_RH[2],T_RH[3]);//往主机发送信息//往主机发送信息 call_master_flag=0; } else if(call_addr==2) { RH1(); T_RH[4]=0xa2;//系统码+地址 T_RH[5]=temp_val_1/10;//装温度整数值 T_RH[6]=RH_val_1/10;//装湿度整数值 T_RH[7]=(temp_val_1)*16+(RH_val_1);//高4位装温度小数值,低

26

浙江工业职业技术学院电气工程分院毕业设计

4位装湿度小数值 SendIRdata(T_RH[4],T_RH[5],T_RH[6],T_RH[7]); call_master_flag=0; } //后加 else if(call_addr==3) { RH2(); T_RH[8]=0xa3;//系统码+地址 T_RH[9]=temp_val_2/10;//装温度整数值 T_RH[10]=RH_val_2/10;//装湿度整数值 T_RH[11]=(temp_val_2)*16+(RH_val_2);//高4位装温度小数值,低4位装湿度小数值 SendIRdata(T_RH[8],T_RH[9],T_RH[10],T_RH[11]); call_master_flag=0; } } disp(call_addr,T_RH[8],n); n++; Slave_init(); //disp(T_RH[1],T_RH[3]/16,n); //m++; //disp(Ir_Buf[0],T_RH[5],m0); //disp(Ir_Buf[2],Ir_Buf[3],m0); //从机处理结束; //////////////////////////////////////////////////////// } }

27


毕业论文(1)(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:四川“十二五”工业发展规划及化工项目

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: