南邮综合设计报告(课程设计)proteus和Keil(8)

2019-04-09 16:58

电子科学综合设计

主程序的主要功能是负责多点温度数据的实时采集、传输,处理和显示。其程序流程如图所示。

初始化 生成地址字节1001000,循环次数3

(2)温度计算模块设计

向设置/状态寄存器设置为连续工作方式 启动转换 地址字节加02H 循环次数减1为0? N 延时1S以上等待结生成地址字节1001000,循环次数读温度数据并存储 地址字节加02H 循环次数减1为0? N N 读温度数据并存储及显示 计算温度子程序将从DS1621中读取的温度值进行BCD码的转换运算,并进行温度值正负的判定,其程序流程图如图5-2所示。

36

电子科学综合设计

开始 N 温度零下? Y 温度值取补码置“—”标志 置“+”标

3.3电路图

计算小数位温度BCD计算整数位温度BCD 结束

3.4源程序 #include #include

#define uchar unsigned char #define uint unsigned int

#define DiSdata P0 //七段码数据输出口

37

电子科学综合设计

#define discan P2 //扫描数据输出口 sbit DIN=P0^7; //小数点控制 sbit Scl=P3^0; //串行时钟 sbit

Sda=P3^1;

//串行数据

sbit alarm1=P1^7; sbit alarm2=P1^6; uint i; uint h; uint temp;

uchar dath[2]; //温度输入口 uchar ff2,ff1=0,t3=0;

uchar code dis_7[12]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x40}; //共阴LED段码表 \灭%uchar code scan_con[5]={0xfd,0xfb,0xf7,0xef,0xdf}; //LED显示控制,对应0的LED有效

uchar data display[5]={0x00,0x00,0x00,0x00,0x002}; //显示单元数据,共6个数据和一个运算暂用

uchar data display1[5]={0x01,0x02,0x03,0x04,0x052}; uchar data DD[4]={0x90,0x92,0x94}; //

void delay_us(uint t) //延时函数 {

for (;t>0;t--); } //

scan() //LED扫描函数 {

uchar k; for(k=0;k<5;k++) }

{ }

discan=scan_con[k]; //控制位送P2口 DiSdata=dis_7[display[k]]; //数据位送P0口 if (k==3){DIN=1;} else

DIN=0; //小数点显示

delay_us(150);

38

电子科学综合设计

//

void delay(void) //延时函数 { _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_();

} //

void i_start(void) // 开始 { Sda=1; Scl=1; delay(); Sda=0; delay(); Scl=0; } //

void i_stop(void) // 终止 { Sda=0; Scl=1; delay(); Sda=1; delay(); Scl=0; Sda=0; } //

bit i_clock(void) //应答信号 { bit sample; Scl=1; delay();

sample=Sda;

39

电子科学综合设计

_nop_(); _nop_(); Scl=0; delay(); return(sample);

} //

void i_ack(void) { Sda=0; i_clock(); Sda=1;

} //

bit i_send(uchar i_data) // 发送 { uchar i; for(i=0;i<8;i++) { Sda=(bit)(i_data & 0x80); i_data=i_data<<1;

i_clock();

} Sda=1;

return(~i_clock()); } //

uchar i_receive(void) //I2C接收 { uchar i_data=0; uchar i; for(i=0;i<8;i++) { i_data<<=1; Scl=0;delay(); Scl=1;delay() ; i_data|=Sda;

}

40


南邮综合设计报告(课程设计)proteus和Keil(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:201天津和平区2011-2012九年级期末

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

马上注册会员

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