APP下载

基于51单片机多功能太阳能路灯的设计与实现

2012-01-15梅卫龙廖先奎

电子设计工程 2012年15期
关键词:液晶显示框图太阳能

梅卫龙,肖 伟,代 森,廖先奎

(西藏大学工学院 电子信息系,西藏 拉萨 850000)

随着社会发展的步伐日益加快,人们对新型能源地开发利用程度不断加大,太阳能作为一种新型能源,越来越受到人们的重视,合理有效的利用好太阳能,已逐步成为节能环保的一种趋势。西藏太阳能资源居中国首位,也是世界上最丰富的地区之一,全年平均日照时数在3 000小时左右。因此为了更环保、更加节能,合理有效地利用太阳能,我们设计出一款多功能太阳能路灯。文中采用 C8051F020[1]作为主控芯片,通过51单片机[2]控制片内高速AD对紫外线传感器、温度传感器、光照度传感器[3]等进行采样,对拉萨环境进行监测(特别是紫外线强度的监测),相关数据参数经过LCD显示,用户可通过需要显示广告信息,如进行公益广告,商业广告相关信息的宣传;同时利用具有高效节能的LED灯作为发光源提供照明,蓄电池作为储存电能的工具,将获取的太阳能存储起来。本设计不仅具有良好的市场前景,而且实现了能源的高效利用。

1 系统设计方案

1.1 系统硬件设计

文中设计的硬件包括,新华龙电子公司的C8051F0201单片机 、稳压电路。文中主要利用太阳能电池板[4]将太阳能转化为电能,并储存在蓄电池中,由蓄电池给硬件部分提供电源,通过稳压电路提供单片机工作电压[5],主控芯片C8051 F0201控制LCD显示和AD采样,太阳系统硬件设计框图如图1所示。

图1 系统硬件结构框图Fig.1 Structure diagram of system hardware

1.1.1 C8051F020简介

C8051F020(以下简称51单片机)器件是完全集成的混合信号系统级MCU芯片,具有32个数字I/O引脚。此款51单片机具有高速、流水线结构的 8051兼容的 CIP-51内核(可达 25MIPS)。全速、非侵入式的在系统调试接口(片内)。12位、100 ksps的8通道 ADC,带 PGA和模拟多路开关。8位500 ksps的ADC,带PGA和8通道模拟多路开关和两个 12位DAC,具有可编程数据更新方式。64 k字节可在系统编程的FLASH存储器。4 352(4 096+256)字节的片内RAM,可寻址64 K字节地址空间的外部数据存储器接口。硬件实现的 SPI、Sm Bus/I2C和两个 UART串行接口,5个通用的16位定时器。具有 5个捕捉/比较模块的可编程计数器/定时器阵。列片内看门狗定时器、VDD监视器和温度传感器,每个MCU都可在工业温度范围(-45~+85℃)内用 2.7~3.6 V的电压工作。端口 I/O、/RST和 JTAG引脚都容许 5 V的输入信号电压。C8051F0201引脚如图2所示。

图2 引脚图Fig.2 Diagram of pins

1.1.2 AD采样

C8051F020 有一个片内 12 位 SAR ADC[3](ADC0),一个 9通道输入多路选择开关和可编程增益放大器。该ADC工作在100 ksps的最大采样速率时可提供真正的12位精度,INL为±1LSB,ADC中集成了跟踪保持电路和可编程窗口检测器.只有当ADC0控制寄存器中的AD0EN位被置 ‘1’时ADC0子系统 (ADC0、跟踪保持器和PGA0)才被允许工作。当AD0EN位为 ‘0’时,AD0C子系统处于低功耗关断方式。ADC0的最高转换速度为100 ksps,其转换时钟来源于系统时钟分频,分频值保存在寄存器ADC0CF的ADCSC位。文中设计的AD采样的启动方式为定时器3溢出(即定时的连续转换,便于实施数据采集),选用的通道如表1所示。

表1 AD通道选择Tab.1 Selection of AD channel

1.1.3 LCD显示电路

LCD显示电路采用T6963C液晶显示控制器,T6963C多用于小规模的液晶显示器件,常被装配在图形液晶显示模块上,以内藏控制器型图形液晶显示模块的形式出现。内藏T6963C单屏结构点阵图形液晶显示的模块方框图如图3所示。单片机对T6963C有2种访问方式:直接访问与间接访问。直接访问利用三总线以I/O设备访问形式进行控制;间接访问则由单片机提供并行接口[6],以程序控制时序的方式进行控制。为简化程序,这里采用直接访问方式,如图4所示。LCD引脚及其功能如表2所示。

图3 模块方框图Fig.3 Module block diagram

1.2 C8051单片机软件设计

图4 直接访问方式Fig.4 Method of direct access

表2 LCD引脚及其功能Tab.2 Pins and function of LCD

C8051单片机软件主要包括显示函数、AD采样函数、初始化函数以及主函数。软件设计的主程序流程框图如图5所示,子函数详细功能如表3所示。

图5 主程序流程框图Fig.5 Flow chart of main program

表3 子函数功能说明Tab.3 Explaining function of subfunction

1.3 AD采样模块程序

//===========================================

//文件名称:AD.C

//功能描述:处理传感器采集的数据

//维护记录:V1.0 2012-4-18

//===========================================

void Time1_ISR(void) interrupt 3

{

unsigned char k=0,i=0;

unsigned int temp;

TR1=0; //关闭定时器1

for(i=0;i<4;i++)

{

voltage[i]=0;

AMX0SL=i; //AINi作为输入,电源电压监控

temp=0;

for(k=0;k<20;k++); //延时,等待通道开关稳定

for(k=0;k<N;k++)

{

AD0INT=0; //转换结束标志

AD0BUSY=1; //启动AD转换

while(!AD0INT);

ADC_data[k]=ADC0H;//voltage[7]

ADC_data[k]<<=8;

ADC_data[k]+=ADC0L;

temp+=ADC_data[k]/N; //测试N次,取平均值

}

voltage[i]=(temp*VR)/0x0fff;//计算实际电压值

}

voltage[0]=60.89-29.27*voltage[0];

voltage[1]=voltage[1]<531?1:voltage[2]<2301?2:3;

voltage[2]=voltage[2]*1000;

voltage[2]=voltage[2]<318?1:voltage[2]<408?2:voltage[2]<503?3:voltage[2]<606?4:voltage[2]<696?5:voltage[2]<795?6:voltage[2]<881?7:voltage[2]<976?8:voltage[2]<1079?9:10;

word_flag=voltage[2]<3?0:voltage[2]<5?1:voltage[2]<7?2:word_flag<7?3:word_flag<10?4:5;

TL1=TH1;

TR1=1;

}

2 整体测试结果

整体测试结果如表4所示。

表4 整体测试结果表Tab.4 Overall test result in table

3 结束语

图6 整体实物图Fig.6 Overall physical figure

文中运用C8051F020作为主控芯片结合温度传感器、紫外线传感器、光照度传感器等制作一个由太阳能电池板将太阳能转化为电能,充分并有效地利用了能源,对环境实时监测。本文采用的C8051F020控制芯片具有较高的执行效率,功耗低,易控制,总体设计不需外加电源,实现了智能化控制[7]。通过对太阳能的合理利用,本设计具有非常好的市场前景,实现工业智能化,是节能减排,构建资源节约型社会的一个良好发展趋势。

[1]潘琢金.C8051F单片机应用解析[M].北京:北京航天航空大学出版社,2002.

[2]张毅刚.单片机原理及应用[M].2版.哈尔滨:哈尔滨工业大学出版社,2008.

[3]王化祥,张淑英.传感器原理及应用[M].天津:天津大学出版社,2007.

[4]周志敏,周纪海,纪爱华.太阳能LED路灯设计与应用[M].北京:电子工业出版社,2010.

[5]康华光.电子技术基础模拟部分[M].5版.北京:高等教育出版社,2006.

[6]胡汉才.单片机原理及其接口技术[M].3版.北京:清华大学出版社,2010.

[7]董尚斌.电子线路[M].北京:清华大学出版社,2006.

猜你喜欢

液晶显示框图太阳能
应用广泛的太阳能无人机
捷豹I-PACE纯电动汽车高压蓄电池充电系统(三)
基于TRIZ理论液晶显示模块开发板的创新设计
太阳能可以这样玩
电路图2017年凯迪拉克XT5
算法框图的补全
122×32 点阵液晶显示汉字原理实验
身边的太阳能
2016《太阳能》与您同行
基于图表法构建《万有引力定律与航天》知识网络