新闻中心

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

基于AVR单片机的自行车行车记录仪,包括软硬件具体

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

1. 引言

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

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

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

安装相当麻烦,根据使用者评价,一般安装需要半小时以上,而国外的进口码表则只要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所示,主控板为系统核心,主要包含单片机ATmega64(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单总线数字,支持多个挂同一条总线,且测试温度较准。

2.1.6 霍尔传感器

如上图2.1所示,霍尔传感器使用的是A3144先行霍尔元件,在下面的第三章,硬件设计中将看到对霍尔传感器的改良。

2.1.7 液晶显示器

如上图2.1所示,液晶显示器使用的STN7920控制器的12864液晶显示器,该液晶宽128个点,高64个点,故名12864,并且自带中文字库,可显示区域大。

2.2 解决的主要内容

如何利用好强大的MEGA64单片机资源而不浪费,以及充分理解该单片机相关的控制单元内在的物理逻辑,由此才能深入的理解单片机的运行以及启动过程,并发现问题时能得到及时解决。

的硬件设计— 记录仪总共涉及到温度,时间,电源,液晶,打印机等多个模块组成,在设计硬件时需要充分考虑到各种干扰,美观度等因素。

多层菜单设计— 多层菜单是一个比较复杂的逻辑,如果设计不好会导致整个工程的混乱,使代码变得难于理解,甚至不能继续接下去的工作,所以多层菜单设计需要一个较好的算法来实现它。

各种总线协议驱动— 单片机内置IIC,SPI等总线协议,在温度获取,flash存储中等都需要用到这些总线,所以这些总线协议的驱动也是比较关键的。

打印机驱动电路— 在本设计中,用到了EPSON的M-150II打印机,其工作电流大,需要专门的硬件驱动电路,在设计这一块电路时,必须做好和主控板(记录仪)的接口,以方便用户进行数据导出和统计。


上一页 1 2 3 4 5 下一页

评论


相关推荐

技术专区

关闭