基于单片机的天文时钟控制器的设计.docVIP

基于单片机的天文时钟控制器的设计.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于单片机的天文时钟控制器的设计.doc

  基于单片机的天文时钟控制器的设计 摘 要 中国 1/vie   设计一种实用的天文时钟控制器,硬件主要由电源单元、单片?C单元、人机界面单元、实时时钟单元、光照度采集单元、继电器输出单元、以及通讯单元等组成。控制器以STM32F103为核心,通过设定的经纬度和当前的日期,计算出日出和日落时间,与模数转换器采集到的光照度相结合,来控制继电器的输出。控制器还可以接收GPRS控制指令,实现特殊控制。   【关键词】天文时钟 STM32F103 光照度采集 实时时钟 日出日落   随着社会的发展和节能降耗的要求,对道路交通照明的要求越来越高,需要根据日出日落时间和光照度、以及远程临时指令来开关照明灯具的供电电源,以实现照明的灵活控制。为此,设计了一款天文时钟控制器,并在实践中得到了应用。   1 总体设计   设计基于单片机的天文时钟控制器,系统框图如图1所示,电路由由电源单元、单片机单元、人机界面单元、实时时钟单元、光照度采集单元、继电器输出单元、以及通讯单元等组成。电源单元给其余单元提供电源,人机界面单元的按键与单片机的IO口相连,人机界面单元的LCD与单片机通过并行电平转换芯片相连,光照度采集单元与单片机的AD采集通道相连,实时时钟单元与单片机通过I2C总线相连,通讯单元与单片机的UART串口相连,继电器输出单元与单片机的IO口相连。   2 硬件设计   电源单元采用TOP253芯片为控制芯片,经反激式脉冲变压器把交流220V转化为系统芯片使用的电压,+5V,+3.3V,隔离的24V等。   单片机单元以STM32F103为核心,属ARM Cortex-M3系列,主频72MHz,带有双路12位ADC,带有I2C、USART等接口,内置SRAM和大容量FLASH等,集成度高。采用3.3V、8MHz有源晶振,引出SAX706S,在收外部干扰使程序跑飞时复位芯片,使软件重新运行。与芯片内部看门狗相比,MAX706S在系统上电掉电情况下,系统电压尚未稳定时使芯片处于复位状态,避免误动作。   人机界面单元包括按键和LCD两部分,按键部分与单片机的IO直接相连。因STM32F103工作电压为+3.3V,LCD接口电压则是+5V,需要2片电平转换芯片74LVC4245AP32F103的I2C管脚相连。系统正常工作时,电源单元的+3.3V为RX8025SA提供电源,系统未上电时,由CR2032电池为时钟芯片提供电源,保持实时时钟数据继续计数。   光照度采集单元部分通过模拟光耦HCPL-788J将光照度传感器的4-20mA电流信号转换为电压信号,经低通滤波后送到STM32F103单片机的AD采样通道管脚上,同时起到隔离作用。   通讯单元采用GPRS通讯,选用SIM900A模块,与STM32的串口相连。   继电器输出单元与单片机单元的2个输出引脚相连,然后通过光耦TLP627接到2个24V继电器的线圈上,2个继电器分别为主控继电器和节能继电器,各提供1个常开干接点输出。   3 软件设计   3.1 人机界面部分   LCD为128*64点阵液晶,分为4行显示,每行可显示16个字符或8个汉字。按键部分有4个按键,分别为“MODE”、“SHIFT”、“DATA” 和“ENTER”。因显示一屏时间较长,当读按键程序放在主程序中时,有时按下键时会没有反应。因此,将读按键程序和按键去抖程序放在1mS定时器中断中。显示程序采用菜单结构,可通过按键翻页显示多种参数和实时状态。通过按键和LCD显示,可设置日期时间和本地经度纬度,开灯照度与关灯照度以及确认时间等参数。   3.2 日出日落时间计算   STM32F103从实时时钟单元得到具体年月日数据,另外从人机接口单元得到本地的经度和纬度,据此计算出从格林威治时间2000年1月1日到计算日的精确天数,进而计算此刻的本地恒星时、太阳的黄道经度和太阳的倾角、以及太阳的圆周半径等,最后得到太阳在黄道南边的时间,区分东西半球后进一步处理,从而得到需要的日出和日落时间。   3.3 光照度采集   采用双ADC的DMA模式,一路ADC用于光照度采集,另一路接地用于校验数据的有效性。按照每20mS采样24点的要求开启ADC触发定时器,取24次AD采样的平均值进行数字滤波,以消除工频干扰。并通过预设系数转换为对应的流明数。开启转换完成的DMA中断。   3.4 通讯软件   通讯软件要求的反应时间不高,可不使用发送和接收中断占用CPU时间,利用STM32F103芯片的DMA来处理。   DMA中断不开启,在定时器中断中进行串口数据处理。单片机通过AT指令集与GPRS模块进行通讯,监测收到的短信息。为防止误操作,开关灯指令分别需要不同的32位密码,并对报文进行CRC校验

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档