一个电子表 有时间 温度 闹钟 可以用上位机改变下位机的闹钟 温度报警上下限 采用模块
2010-11-07 18:22
323 查看
====================================== -1- 功能=================================================================================
1-- 时间 -- DS1302
2-- 温度 -- DS18B20
3-- 温度报警
4-- 闹钟
5-- 修改日期时自动更改星期
6-- 上位机改变下位机单片机的DS1302时间 闹钟时间 温度报警上下限值
7-- 可以通过键盘改变DS1302时间 闹钟时间 温度报警上下限值
8-- 改变值时光标会闪 可以控制闹钟的开关并在第一页上显示符号
9-- 年月日时分秒的临界值控制 平年闰年对应的二月判断
========================================== -2-按键说明 ================================================================================
4*4的矩阵键盘共用了4个键 一个用于选择屏幕 一个是屏幕中的子选项 另两个为数值+-(分别是(1 2) (3 1) (1 1) (1 2) 括号里面的值的第一个为行 第二个是列 如(1 2)代表第一行第二列的按键)
.
============================================ -3- 源码和原理图===========================================================================
单片机波特率为9600 如果正常的话,可以发送一个T,那么久会返回提示,具体提示可以在下面的网站上的图上看到
-----------------------------------------------------------------------------------------------------
http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=4375606&bbs_page_no=1&bbs_id=9999
在上面的帖子中的5楼有第一版的代码
大家顺便帮忙看看,那个上位机的问题.
源码:
点击此处下载 ourdev_595928VEA3YT.rar(文件大小:341K) (原文件名:Final_Sensor.rar)
------------------------------------------------------------------------------------------------------
原理图和PCB
http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=3967978&bbs_page_no=1&search_mode=3&search_text=QQ373466062&bbs_id=9999
=============================================== -4- 图片===================================================================
(原文件名:Keil .jpg) 引用图片
屏幕1:(显示时间和温度可以用键盘和上位机修改)
(原文件名:20101107096.jpg) 引用图片
屏幕1:(显示时间和温度,可以用键盘修改和上位机修改)
(原文件名:20101107097.jpg) 引用图片
屏幕2:(显示温度报警下行限可以用键盘和上位机修改)
(原文件名:20101107098.jpg) 引用图片
屏幕3:(显示和设置闹钟可以用键盘和上位机修改)
(原文件名:20101107099.jpg) 引用图片
4*4键盘
(原文件名:20101107100.jpg) 引用图片
设置闹钟: (光标闪)
(原文件名:20101107105.jpg) 引用图片
设置时间:(光标闪)
(原文件名:20101107106.jpg) 引用图片
上位机命令修改下位机子程序设计图:
(原文件名:20101107107.jpg) 引用图片
================================================ -5- 程序说明 =======================================================
程序时国庆时候花两天写的 很多的模块是直接改写别人的,我将它们重新包装了下,某些地方也改了
程序有太多的地方需要改进. 希望大家说出了. 例如延时应该换用检测报警程序替代. 每一个状态机的运行时间不同而使按键灵敏度不同
源码:
点击此处下载 ourdev_595928VEA3YT.rar(文件大小:341K) (原文件名:Final_Sensor.rar)
程序在main函数中使用状态机思想(自认为),用于三个屏幕切换显示,在屏幕函数对于的子函数中采用简单的显示和键盘扫描与相关量更改处理.
对上位机接受函数中采用队列缓存.然后判断处理.
模块化:
(原文件名:Keil文件1.jpg) 引用图片
代码量:
1-- 时间 -- DS1302
2-- 温度 -- DS18B20
3-- 温度报警
4-- 闹钟
5-- 修改日期时自动更改星期
6-- 上位机改变下位机单片机的DS1302时间 闹钟时间 温度报警上下限值
7-- 可以通过键盘改变DS1302时间 闹钟时间 温度报警上下限值
8-- 改变值时光标会闪 可以控制闹钟的开关并在第一页上显示符号
9-- 年月日时分秒的临界值控制 平年闰年对应的二月判断
========================================== -2-按键说明 ================================================================================
4*4的矩阵键盘共用了4个键 一个用于选择屏幕 一个是屏幕中的子选项 另两个为数值+-(分别是(1 2) (3 1) (1 1) (1 2) 括号里面的值的第一个为行 第二个是列 如(1 2)代表第一行第二列的按键)
.
============================================ -3- 源码和原理图===========================================================================
单片机波特率为9600 如果正常的话,可以发送一个T,那么久会返回提示,具体提示可以在下面的网站上的图上看到
-----------------------------------------------------------------------------------------------------
http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=4375606&bbs_page_no=1&bbs_id=9999
在上面的帖子中的5楼有第一版的代码
大家顺便帮忙看看,那个上位机的问题.
源码:
点击此处下载 ourdev_595928VEA3YT.rar(文件大小:341K) (原文件名:Final_Sensor.rar)
------------------------------------------------------------------------------------------------------
原理图和PCB
http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=3967978&bbs_page_no=1&search_mode=3&search_text=QQ373466062&bbs_id=9999
=============================================== -4- 图片===================================================================
(原文件名:Keil .jpg) 引用图片
屏幕1:(显示时间和温度可以用键盘和上位机修改)
(原文件名:20101107096.jpg) 引用图片
屏幕1:(显示时间和温度,可以用键盘修改和上位机修改)
(原文件名:20101107097.jpg) 引用图片
屏幕2:(显示温度报警下行限可以用键盘和上位机修改)
(原文件名:20101107098.jpg) 引用图片
屏幕3:(显示和设置闹钟可以用键盘和上位机修改)
(原文件名:20101107099.jpg) 引用图片
4*4键盘
(原文件名:20101107100.jpg) 引用图片
设置闹钟: (光标闪)
(原文件名:20101107105.jpg) 引用图片
设置时间:(光标闪)
(原文件名:20101107106.jpg) 引用图片
上位机命令修改下位机子程序设计图:
(原文件名:20101107107.jpg) 引用图片
================================================ -5- 程序说明 =======================================================
程序时国庆时候花两天写的 很多的模块是直接改写别人的,我将它们重新包装了下,某些地方也改了
程序有太多的地方需要改进. 希望大家说出了. 例如延时应该换用检测报警程序替代. 每一个状态机的运行时间不同而使按键灵敏度不同
源码:
点击此处下载 ourdev_595928VEA3YT.rar(文件大小:341K) (原文件名:Final_Sensor.rar)
程序在main函数中使用状态机思想(自认为),用于三个屏幕切换显示,在屏幕函数对于的子函数中采用简单的显示和键盘扫描与相关量更改处理.
对上位机接受函数中采用队列缓存.然后判断处理.
模块化:
(原文件名:Keil文件1.jpg) 引用图片
代码量:
相关文章推荐
- 一个电子表 有时间 温度 闹钟 可以用上位机改变下位机的闹钟 温度报警上下限 采用模块
- 随机生成一个对称矩阵,并输出。(究极版本,可以每一次都改变矩阵的随机数且不同,采用do while退出条件循环)
- 电子表代码,用C语言写的,可以显示系统时间和年月日,而且可以改变时间!
- DS18B20温度测量报警 (可以设定温度上下限)
- CCActionTween(可以时间上连续的改变某个对象指定key对应的属性 改变方式需要自定义 cocos2dx未定义 )
- XP中java swing 在中文输入的时候总有一个输入窗口,非常难看,可以采用此种方法处理
- 每天学习一算法系列(25)(一个台阶总共有n 级,如果一次可以跳1 级,也可以跳2 级,求总共有多少总跳法,并分析算法的时间复杂度。)
- 一个可以限制执行时间的命令timeout
- 概述 RequireJS是一个工具库,主要用于客户端的模块管理。它可以让客户端的代码分成一个个模块,实现异步或动态加载,从而提高代码的性能和可维护性。它的模块管理遵守AMD规范(Asynchronou
- 用Silverlight 1.0实现一个基于客户端系统时间的电子表。
- JAVA采用数组结构实现一个线性表,可以增删改查,类似于ArrayList
- Delphi中创建一个可以改变大小的无边框窗口
- 将时间写在.properties文件中可以随时改变,避免修改后台Action
- 初识linux chmod命令/函数时我就产生一个有趣疑问:既然chmod可以改变权限, 那即使某用户原来没有某文件的权限, 也可以自己添加权限啊!
- Delphi中创建一个可以改变大小的无边框窗口
- fileinput模块可以循环一个或多个文本文件的内容
- 一个台阶总共有n级,如果一次可以跳1级,也可以跳2级。 求总共有多少总跳法,并分析算法的时间复杂度
- 用Silverlight 1.0实现一个基于客户端系统时间的电子表。
- 只用css可以hover一个元素的时候改变另一个元素的位置
- 如何创建一个可以保存13亿数据的数组?兼谈时间和空间之间永无休止的战争