新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于AVR单片机的自行车行车记录仪,软硬件协同

基于AVR单片机的自行车行车记录仪,软硬件协同

作者:时间:2016-09-12来源:网络收藏

自行车包括主控板,驱动板,,12864显示器,EPSON微型打点这五部分。该记录仪能记录实时的行车速度,行车总里程,单次行车里程,以及历史最高行车速度,具备外部环境温度显示,总里程设置,行车信息打印等功能,是面向自行车爱好者的一个高精度,功能强大的

本文引用地址:http://www.eepw.com.cn/article/201609/303916.htm

功能上,在设计时,以Atmega64单片机为核心,AT24LC64 EEPROM,DS1302,12864显示器,等构成外围电路,行车记录仪的核心部件是,在下面讲述原理的时候会进行详细的描述。显示部分由12864来完成,该液晶控制简单,显示区域大,低功耗,适合电池供电,可以通过设计菜单,从而来实现记录仪强大的功能。打印部分由EPSON M-150II微型打点来完成,用户可以通过打印机记录行车的统计信息,以及最近一次的行车信息,各种里程信息以及时速,时间等信息,用户可以通过保管打印的信息,对自己的行车生涯进行统计。

系统软件设计包含用户UI界面,以及各个外围电路的驱动两大部分。使用的编译器是AVR官方推荐的ICCAVR,其中外围的驱动部分主要包括: DS1302时钟芯片驱动;DS18B20温度传感器驱动;24LC64 EEPROM驱动;EPSON M-150II微型打点打印机驱动;12864液晶驱动

硬件电路制作使用l DXP设计制做PCB板。分主控板和打印机驱动板焊接调试,进行性能和功能测试。

本系统硬件部分结构简单,软件部分使用自己设计UI界面,使用方便,中文显示,可操作性强,具有比较好的市场前景。

1. 引言

自行车行车记录仪(以下简称码表)在国内外已经有了广泛的应用,但是不管是国外的还是国产的码表都存在着很多缺点。

首先,对于国产码表来说,缺点主要有:

安装相当麻烦,根据使用者评价,一般安装需要半小时以上,而国外的进口码表则只要5分钟即可安装完毕,所以在设计该码表时需要在这方面进行改进。

即时速度显示混乱,其实这是计算精度不够造成,速度高于25M/S以后(特别是30M/S以后)当前速度就开始有波动,速度越快波动越大,这个问题还导致最高速度不可信,所以在设计时选择的CPU必须是具有较高计算速度,且实时性能较好的,这里选用了AVR的MEGA64高性能8位单片机,此单片机资源丰富,最高速度可以达到16MIPS/S。

里程和速度的清零功能未能真正实现,它不能像国外的SIGMA那样清除指定的数据,而是全部清零重置,连总里程和时钟都清零了,所以这个设计也是非常的失败的,需要改进。

时钟不准,根据大部分使用者的反应,一个月快了差不多半小时。

某些国产表的轮径设置最小只能适应20*2.0cm的轮胎,也就是说折叠车基本用不上,这点也是需要改进的。

最后一点对于普通用户来说都是比较反感的,说明书以及液晶上的显示都是全英文的,而且液晶显示简单,说明书也只是一个小纸片而已,对自行车码表没点了解、没有点钻研精神还不一定能搞清里面的功能和用法。

再次,对于外国的码表来说,观点主要有以下:

除了以上的第六个缺点以外,其它缺点基本都是不存在的,但是一个比较致命的要害是价格高,一般的消费群体买不起。就拿比较出名的德国品牌sigma,最便宜的到70多,但是功能实在单一。而功能强大,性能又好的则贵至好几百元,上千元不等,型号很多,价格范围波动也很大。

最后,总结出不管是国内还是国外码表,都存在以下缺点:

显示都是英文,对于一般的用户使用比较的不方便,而且安装较麻烦,初始化设置十分的繁琐。

功能单一,一般便宜的码表,往往只具备速度的记录,行车总里程,行车总时间的记录等等,并且通过液晶查看,不能有效的统一历史数据,或者只能查阅近几天的历史数据。

实现该系统所需要的知识如下:

单片机C语言编程;IIC,单总线等串行总线编程;模块化程序设计;霍尔传感器原理及实现方法;液晶显示编程;打印机实现原理;protel画原理图以及画PCB等。

核心元件,单片机,这里选择ATMEL公司的8位中高端单片机Atmega64,选择它的理由主要有以下几点:

在存储方面,使用的是ATMEL公司的AT24LC64 EEPROM存储器,该存储器走的是IIC(ATMEL公司开发的两线串行总线)总线模式,虽然可以用一般的单片机模拟IIC总线,但是为了提高效率则必须选择具有IIC总线接口的单片机,这个一般的51单片机已经不能满足,所以需考虑其它单片机。

打印机模块,有下面的打印机实现原理(图4.5)可知,我们必须选择具有双边沿触发的单片机,有这个功能的单片机ATMEL的AVR系列的中高端单片机能满足,比如Atmega64及以上的单片机都具有这一功能。

霍尔传感器,霍尔传感器测速必须具有两个内置外设,一个是外部下降沿中断,一个是内部定时器,Atmega64也能很好的满足。

内存空间要求:在做用户界面以及制作贪吃蛇等游戏时都必须开很大的缓存,所以必须具备一定的内存容量,初步估计需要2K内存以上,而Atmega64拥有4K内存,能够完全满足。

更重要的是,这款单片机价格便宜,只要20余元便能购置一片,所以选择这个单片机时比较合适的。

下面将从硬件系统,软件系统,各个模块的实现原理,软硬件调试这几个方面来详细的讲述这一个系统。

2. 系统框架

2.1 系统框架结构图

系统框架结构图如图2.1所示

图2.1 系统框架图

图2.1 系统框架图

2.1.2 主控板

如上图2.1所示,主控板为系统核心,主要包含单片机(ATEML公司8位中高端单片机)以及,各个模块接口。

2.1.3 打印机

如上图2.1所示,打印机模块需要一个驱动板以及一个打印机模块,打印机为EPSON公司的M-150II微型打点打印机,一行可以打96个点。

2.1.4 存储模块

如上图2.1所示,存储模块用的是ATMEL公司的AT24LC64 EEPROM(电可擦除编写存储器)存储器,大小一共是8千字节。

2.1.5 温度传感器

如上图2.1所示,温度传感器用的达拉斯公司的DS18B20单总线数字温度传感器,支持多个挂同一条总线,且测试温度较准。


上一页 1 2 3 4 5 下一页

评论


相关推荐

技术专区

关闭