武汉理工大学《单片机实习报告书》
下
}
{ }
if(key_value==CLEAR) { }
indexToValue(num_index,num_value,SHOW_NUM); s = num_value; //display(num_value); key_value=NO_DEF; break;
//将键值赋值为无效值
uchar i=6; while(i>0)
num_index[--i] = 13;
//检测清0键是否按下
num_shift(num_index,key_value);
case SHOW_TEP:
tmpchange(); tmp();
toTmpIndex(tep_index);
indexToValue(tep_index,tem_value,SHOW_TEP); s = tem_value; //display(tem_value); break;
default: show_flag=SHOW_TEP;
break;
//delayms(1); display(s);
- 26 -
武汉理工大学《单片机实习报告书》
}
}
SBUF = 0xee; while(!TI); TI = 0;
//发送帧同步信号
while(send_cnt<6) { }
send_cnt = 0;
//清空发送计数器
SBUF = s[send_cnt++]; while(!TI); TI = 0;
//发送数据
//等待发送完成 //清空发送标志
接收机主程序与中断服务程序: #include
#define SM_PORT P0 sbit dula = P2^6; sbit wela = P2^7;
#define uchar unsigned char #define uint unsigned int
uchar receive_cnt = 0; uchar r_syn_code = 0x00;
//接收帧同步码
//声明数码管数据端口
//声明数码管段选端口 //声明数码管位选端口
uchar receive[6] = {0x3f,0x06,0x5b,
0x4f,0x66,0x6d,};
//接收数据缓冲数组,
初始化什么也不显示
- 27 -
武汉理工大学《单片机实习报告书》
void delayms(uint count); void display(uchar ch[6]); void main() { }
void Re()interrupt 4 //using 0 {
TMOD = 0x20; TH1 = 0xfd; TL1 = 0xfd; SM0=0; SM1=1; REN=1; EA = 1; PCON = 0x80; ES = 1; TR1 = 1; while(1) { }
//设置定时器的工作方式为方式2
//设置波特率为19200
//串口波特率加倍
//开启定时器1,开始发送数据
display(receive);
RI = 0;
if(r_syn_code == 0xee) { }
if(receive_cnt == 0)
r_syn_code = SBUF;
- 28 -
//检测到帧同步码:0xee
receive[receive_cnt]=SBUF; receive_cnt++;
//开始接收数据
//数据开始,先检测同步码
武汉理工大学《单片机实习报告书》
if(receive_cnt==6) //一帧数据接收完成,将接
收计数器清0,同时清除同步码标志 { receive_cnt = 0; r_syn_code =0x00;
}
}
- 29 -
武汉理工大学《单片机实习报告书》
附录3:元件清单
序 号 1 2 3 4 5 6 7 8 9 10 11 名称 铜板 数量 2块 表1 元件清单表
单片机STC89C52 晶振12MHz 30PF瓷片电容 10k/0.25W电阻 10uF/16V电解电容 2k/0.25W电阻 10k/9脚排阻 5V/500mA直流电源 74HC573 MAX232 104电容 1片 1个 2个 2个 1个 1个 1个 1个 2片 1片 5个
附录4:实物照
12 13 排针、按钮、LED、导线等 若干 片
图2 实物图
- 30 -
武汉理工大学《单片机实习报告书》
附录5:实习日记
表2 实习日记表 日期 2012.12.17 2012.12.18 2012.12.19 2012.12.20 2012.12.21 2012.12.22 2012.12.23 2012.12.24 2012.12.25 2012.12.26 2012.12.27 2012.12.28 2012.12.29
安排 方案设计 方案设计 硬件设计 硬件设计 软件设计 软件设计 软件设计 电路板焊接 电路板焊接 系统调试 系统调试 系统调试 答辩 - 31 -