
课程设计说明书(论文)
题 目: 环境信息采集及
LED
点阵显示系统
专 业: 自动化(集成系统)
班 级: D
自集成
学生姓名:
指导教师:
起迄日期:
设计地点: 基础实践楼
B201

工业中心
目录
引 言....................................................................................................................................................1
1、设计意义...............................................................................................................................1
2、系统功能要求.......................................................................................................................1
3、本组成员所做的工作...........................................................................................................1
课程设计说明书(论文)中文摘要................................................................................................2
课程设计说明书(论文)外文摘要.................................................................................................3
一、整体方案.....................................................................................................................................4
1.1 任务描述...............................................................................................................................4
1.2 设计要求...............................................................................................................................4
1.2.1 基本要求....................................................................................................................4
1.2.2 提高要求....................................................................................................................4
1.3 技术方案设计.......................................................................................................................5
1.3.1 系统方案...................................................................................................................5
1.3.2 工作原理....................................................................................................................5
二、方案论证.....................................................................................................................................6
2.1 温度、光照采集模块...........................................................................................................6
.....................................................................................................................................................7
2.2 单片机控制模块...................................................................................................................7
.....................................................................................................................................................8
2.3 驱动扫描方案.......................................................................................................................8
2.4 电源模块...............................................................................................................................9
三、电路与程序设计.......................................................................................................................10
3.1 最小系统.............................................................................................................................10
3.2 温度光照采集电路.............................................................................................................11
3.3 驱动扫描电路.....................................................................................................................14
3.5 报警模块.............................................................................................................................16
3.6 显示模块.............................................................................................................................16
四、装配与调试...............................................................................................................................18
4.1 点阵屏装配.........................................................................................................................18
4.2 点阵屏的调试.....................................................................................................................18
4.2.1 调试工具..................................................................................................................18
4.2.2 调试过程..................................................................................................................18
五、点阵屏软件设计.......................................................................................................................19
5.1 点阵屏主函数流程图.........................................................................................................20
5.2 驱动模块流程图.................................................................................................................21
六、 子程序......................................................................................................................................22

AT24C04 子程序:...........................................................................................................................22
#include<reg52.h>.............................................................................................................................22
#define uchar unsigned char..............................................................................................................22
#define uint unsigned int...................................................................................................................22
bit write=0; //写 24c02 的标志.........................................................................................................22
sbit SDA=P2^0;.................................................................................................................................22
sbit SCL=P2^1;.................................................................................................................................22
void delay()........................................................................................................................................22
{;;}.....................................................................................................................................................22
void init()//总线初始化....................................................................................................................22
{.........................................................................................................................................................23
SCL=1;.............................................................................................................................................23
delay();..............................................................................................................................................23
SDA=1;.............................................................................................................................................23
delay();..............................................................................................................................................23
}.........................................................................................................................................................23
void start()//启动总线.......................................................................................................................23
{.........................................................................................................................................................23
SDA=1;.............................................................................................................................................23
delay();..............................................................................................................................................23
SCL=1;.............................................................................................................................................23
delay();..............................................................................................................................................23
SDA=0;.............................................................................................................................................23
delay();..............................................................................................................................................23
}.........................................................................................................................................................23
void stop()//停止...............................................................................................................................23
{.........................................................................................................................................................23
SDA=0;.............................................................................................................................................23
delay();..............................................................................................................................................23
SCL=1;.............................................................................................................................................23
delay();..............................................................................................................................................23
SDA=1;.............................................................................................................................................23
delay();..............................................................................................................................................23
}.........................................................................................................................................................23
void respons() //应答信号.................................................................................................................23
{.........................................................................................................................................................23
uchar i;..............................................................................................................................................23
SCL=1;.............................................................................................................................................23
delay();..............................................................................................................................................23
while((SDA==1)&&(i<255))...........................................................................................................23
i++;...................................................................................................................................................23
SCL=0;.............................................................................................................................................23
delay();..............................................................................................................................................23
}.........................................................................................................................................................23

void writebyte(uchar date) //写一个字节.........................................................................................23
{.........................................................................................................................................................23
uchar i,temp;.....................................................................................................................................23
temp=date;........................................................................................................................................23
for(i=0;i<8;i++)................................................................................................................................23
{........................................................................................................................................................23
temp=temp<<1;................................................................................................................................23
SCL=0;.............................................................................................................................................23
delay();..............................................................................................................................................23
SDA=CY;.........................................................................................................................................23
delay();..............................................................................................................................................24
SCL=1;.............................................................................................................................................24
delay();..............................................................................................................................................24
}........................................................................................................................................................24
SCL=0;.............................................................................................................................................24
delay();..............................................................................................................................................24
SDA=1;.............................................................................................................................................24
delay();..............................................................................................................................................24
}.........................................................................................................................................................24
uchar readbyte().................................................................................................................................24
{.........................................................................................................................................................24
uchar i,k;...........................................................................................................................................24
SCL=0;.............................................................................................................................................24
delay();..............................................................................................................................................24
SDA=1;.............................................................................................................................................24
for(i=0;i<8;i++)................................................................................................................................24
{........................................................................................................................................................24
SCL=1;.............................................................................................................................................24
delay();..............................................................................................................................................24
k=(k<<1)|SDA;.................................................................................................................................24
SCL=0;.............................................................................................................................................24
delay();..............................................................................................................................................24
}........................................................................................................................................................24
delay();..............................................................................................................................................24
return k;............................................................................................................................................24
}.........................................................................................................................................................24
DS18B20 与温度报警子程序:......................................................................................................24
#include<reg52.h>.............................................................................................................................24
#include<stdio.h>..............................................................................................................................24
#define uint unsigned int...................................................................................................................24
#define uchar unsigned char..............................................................................................................24
sbit ds=P2^6;.....................................................................................................................................24
sbit beep=P2^7;.................................................................................................................................24
uint temp;...........................................................................................................................................24

uint shiwei,gewei,shifenwei;.............................................................................................................24
float f_temp;......................................................................................................................................24
uint warn_l1=200; //温度*10 以后的数据.......................................................................................24
uint warn_l2=100;.............................................................................................................................24
uint warn_h1=380;............................................................................................................................24
uint warn_h2=350;............................................................................................................................24
void delay_ms(uint t)//延时函数......................................................................................................24
{.........................................................................................................................................................24
uchar x,y;..........................................................................................................................................24
for(t;t>0;t--)......................................................................................................................................24
{........................................................................................................................................................25
for(x>0;x<114;x++).........................................................................................................................25
for(y>0;y<1;y++);............................................................................................................................25
}........................................................................................................................................................25
}.........................................................................................................................................................25
void dsreset(void) //ds18b20 复位函数............................................................................................25
{.........................................................................................................................................................25
uint i;.................................................................................................................................................25
ds=0;.................................................................................................................................................25
i=103;................................................................................................................................................25
while(i>0)i--;....................................................................................................................................25
ds=1;.................................................................................................................................................25
i=4;....................................................................................................................................................25
while(i>0)i--;....................................................................................................................................25
}.........................................................................................................................................................25
bit tempreadbit(void)//读一位数据函数..........................................................................................25
{.........................................................................................................................................................25
uint i;.................................................................................................................................................25
bit dat;...............................................................................................................................................25
ds=0;i++;..........................................................................................................................................25
ds=1;i++;i++; //i++起延时作用......................................................................................................25
dat=ds;..............................................................................................................................................25
i=8;while(i>0)i--;..............................................................................................................................25
return(dat);........................................................................................................................................25
}.........................................................................................................................................................25
uchar tempread(void) //读一个字节数据函数.................................................................................25
{.........................................................................................................................................................25
uchar i,j,dat;......................................................................................................................................25
dat=0;................................................................................................................................................25
for(i=1;i<=8;i++)..............................................................................................................................25
{........................................................................................................................................................25
j=tempreadbit();................................................................................................................................25
dat=(j<<7)|(dat>>1);........................................................................................................................25
}........................................................................................................................................................25
评论0
最新资源