基于tinyAVR和Nokia3310 LCD的温度绘图仪
时间:11-07
来源:互联网
点击:
5 C语言程序设计
这里提供给大家经过编译的利用C语言编写的源代码程序(软件集成开发环境为WinAVR,C语言编译器为AVR-GCC)。程序需要运行在1 MHz的时钟频率下。
采用编程器STK500在ISP编程模式给单片机烧写程序。单总线温度传感器DS18B20是通过单总线接口完成读/写功能的,这种总线接口在单片机上是利用软件模拟来实现的。可以参考温度传感器的使用手册以获取它的各种命令。这里仅仅对源程序代码中较重要的部分作如下注释:
在ds1820_read函数中读取DS18B20,经过必要的处理后,返回一个10倍于实际摄氏温度值的数值。无限循环构成程序的主体,其操作模式主要有两种:第一种模式是以摄氏度和华氏度交替显示当前温度值,同时显示最大值和最小值;另一种模式是用图形方式显示温度的变化。曲线图的绘制采用了graph1函数,它是通过提取数组data的数值绘制像素点的。Setlcd函数用于在LCD屏幕上绘制坐标轴。S4开关(连接单片机PA1引脚)用于切换上述两种模式。从绘图模式到温度模式的相互切换并不会删除状态信息。程序代码的其他部分用于处理LCD的初始化和绘图算法。
6 独立运行
温度绘图仪采用一节或两节5号或7号规格的干电池,可以是碱性电池,或者可充电的镍氢或镍镉电池。一旦接通电源后,显示器开始显示温度值。可使用开关在读数模式和绘图模式之间切换。
tinyAVR单片机 Nokia3310 LCD温度绘图仪 数字温度传感器 相关文章:
- 基于mega16微控制器的温度采集系统(10-15)
- 基于单总线的数字温度传感器(12-04)
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)