0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

用ATmega64作为主控芯片设计的蓝牙OBD行车电脑

单片机爱好者 2018-02-26 10:14 次阅读

09年有了自己的第一辆车,车子很一般,是雪佛兰的乐风。没有行车电脑功能。于是想弄一个行车电脑安在车上。在淘宝上搜了一圈,发现现有的行车电脑,功能大多不实用。大部分都是基于标准的OBD协议进行开发,功能无非就是查看故障码、清除故障码、显示转速、车速、水温、进气压力、进气温度等等的一些发动机参数。其实这些参数如果不是维修的话,日常行车基本上没用的。感觉成品的行车电脑不能满足自己的要求。于是萌发了自己制作一款多功能行车电脑的念头。

于是开始查资料、研究车辆的OBD协议,设计线路板、编程、调试,经过1年多的时间,经过了3个版本的修改,最终做成了现在的这款行车电脑。自我感觉还不错,用的效果也很好。现在共享出来给大家。本人的单片机水平纯属业余爱好,在此之前只会一些51的单片机,第一版就是用的51的单片机,后来用AVR,也是临时学的。编程很线路图设计都很差劲。不过,功能好歹都实现了。整个系统采用ATmega64作为主控芯片,用24064的黄绿液晶作为显示屏(T6963C驱动),DS1302作为时钟芯片,读取时间。用2个DS18B20温度传感器检测车内及车外温度,用C3-370C的GPS模块作为GPS接收装置,读取经纬度、海拔、航向等信息。在发动机的OBD接口上安装一个蓝牙的OBD模块(买的),系统板上也采用一个蓝牙串口模块,系统板和车辆之间通过蓝牙串口来透明的传输发动机数据。电源采用的是LM2596,其实整机功耗不大,用7805也可应付。按键采用的是4个独立按键(上图搞错了)其实这4个按键我借用了乐风的电控后视镜按钮。(我的车是低配,是手动调节后视镜,但是有安装电调后视镜按钮的位置。所以我买了一个后视镜调节按钮,当作了系统的按键)。系统板上留出了ISP接口和JTAG接口,方便下载程序和在线调试。下面是原理图:

下面是用的LCD屏。24064的黄绿点阵。T6963C的控制器。这个屏是我在单位的一台废旧设备上拆下的。工业级的。还不错。

屏和主板是两层设计,中间的是蓝牙串口模块。

放在车上的效果。

下面介绍一下各个界面第一屏,最常用的信息,开机后就在这个界面从左到右依次显示:加油时间、单价、加油量(L),总钱数当系统检测到加油后,或者在“加油统计”界面选择“增加”,进入如下界面

程序是用C语言写的。本人水平有限。我自己看着都很乱。附件中含有清晰版的原理图和源程序。用CodeVisionAVR V2.04.4a编译。压缩包内自带工程文件与源文件。编译没有错误,但是有警告。注意源文件中有DS1302.lib和DS18B20.lib两个文件,要拷贝到CodeVisionAVR的安装目录下的lib文件夹内,替换系统自带的两个文件。因为我对这两个文件做了修改。一直想弄个外壳,在淘宝上找了很久,也没找到合适的外壳。没有外壳就暂时裸奔吧!说说使用的感受:1.跑高速时很爽!在这个安装位置正好,需要看时速时眼扫一下就可以,或者设定好超速报警,开就是了,根本不用低头看车速!2.平均油耗,至少在我的车上还是比较准确的。3.海拔高度显示比较有意思。至少让你知道你所在地的高度。4.其它的一些统计功能也比较有用,可以让你更清楚的掌握自己的行驶情况。5.方向显示不会让你转向!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 时钟芯片
    +关注

    关注

    2

    文章

    242

    浏览量

    39804
  • ATmega64
    +关注

    关注

    0

    文章

    11

    浏览量

    10031

原文标题:基于ATmega64的实用、多功能的蓝牙OBD行车电脑『开源』

文章出处:【微信号:gh_dae0718828df,微信公众号:gh_dae0718828df】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    显示器主控芯片和电视主控芯片的区别

    显示器驱动板通常不内置系统的原因,主要是基于其特定的设计目的和功能需求。当我们对比显示器的主控芯片和电视的主控芯片,以及两者的使用范围时,可以更清晰地理解这一点。
    的头像 发表于 09-02 14:32 543次阅读

    使用STM32作为主控控制AFE031, AFE031设置为PWM模式 ,接收板无法接收到消息的原因?

    使用STM32作为主控控制AFE031, AFE031设置为PWM模式 ,SPI配置AFE031无误,给AFE031输入两路PWM,最终输出的结果与官网给出的使用F28379D控制AFE031输出
    发表于 08-07 06:43

    机器人主控器的主控芯片在功能上与什么相似

    到机器人的整体性能。主控芯片作为主控器的核心部件,其功能至关重要。本文将从多个角度分析机器人主控器的主控
    的头像 发表于 07-15 11:22 437次阅读

    esp32作为主机与蓝牙耳机如何进行双向通信?

    新人求教,我的需求是esp32作为主机,连接蓝牙耳机,能够向蓝牙耳机发送音乐,并且能够接收蓝牙耳机上的麦克风的音频,实现双向音频的数据传输。 我的思路是将经典
    发表于 06-11 08:48

    使用cyusb3014作为主控芯片的uvc相机,gpif ii软件的用处是什么?

    我是一个新手小白,想从头开始开发一个使用cyusb3014作为主控芯片的uvc相机,比较迷茫,看了很多文档,还是没有很懂gpif ii软件的用处,该怎么,以及后续写配置的相关问题,请问有相关开发例程吗
    发表于 05-23 06:13

    使用STM8L152作为主控处理器与CC2530进行串口通信,CC2530收不到STM8L的数据是怎么回事?

    使用STM8L152作为主控处理器,与CC2530进行串口通信。在通信时候,STM8L能收到CC2530发来的数据,但是CC2530却收不到STM8L的数据。使用串口模块进行测试却正常。 量了下TX
    发表于 05-09 07:54

    请问STM32WB55怎么配置蓝牙到低功耗广播状态?

    使用STM32WB55RGV6作为主控设计了一款智能锁应用,请问怎么配置蓝牙到低功耗广播状态?目前根据例程,蓝牙运行期间cpu1进入stop2之后仍有4mA左右的电流,如何配置可以达到更低的功耗?或者临时关闭
    发表于 03-15 07:00

    设计的PCB使用了ADuCm355作为主控,在Keil中识别不到芯片的ID号是什么原因导致的呢?

    设计的PCB使用了ADuCm355作为主控,打算使用四线SWD下载程序。但是,在Keil中识别不到芯片的ID号,请问是什么原因导致的呢。 我的连接方式为测试Pin与下载针,用手按住连接的。电路板上的供能
    发表于 01-24 08:30

    LLC的的主控芯片怎么选

    LLC(Low-Level Control)主控芯片选择的过程是电子产品设计中的一个关键环节。LLC主控芯片在电子产品中的作用是负责系统的低级控制和协调。它通常是产品的大脑,负责处理数
    的头像 发表于 01-16 10:55 1146次阅读

    蓝牙耳机怎么连接电脑配对

    蓝牙耳机连接电脑配对是一项非常方便的功能,它可以让您在工作、娱乐或学习时无需使用有线耳机,更加自由和便捷。在本文中,我们将详细介绍如何连接蓝牙耳机到电脑并完成配对。 第一步:检查
    的头像 发表于 01-11 16:53 1873次阅读

    基于瑞萨RA2E1 MCU芯片蓝牙平衡小车设计

    本项目由瑞萨RA2E1 MCU芯片作为主控,搭载电源模块、MPU6050模块、超声波模块、OLED模块、蓝牙模块、电机模块等组成的蓝牙平衡小车。该小车有平衡模式、跟随模式和避障模式三种
    的头像 发表于 01-08 12:17 1712次阅读
    基于瑞萨RA2E1 MCU<b class='flag-5'>芯片</b>的<b class='flag-5'>蓝牙</b>平衡小车设计

    谈谈SSD主控芯片

    SSD主控芯片(SSD controller)好比固态硬盘的大脑。
    的头像 发表于 11-29 12:16 2349次阅读
    谈谈SSD<b class='flag-5'>主控</b><b class='flag-5'>芯片</b>

    基于ATmega8的新型电动自行车调速控制系统设计

    电子发烧友网站提供《基于ATmega8的新型电动自行车调速控制系统设计.pdf》资料免费下载
    发表于 11-17 15:18 2次下载
    基于<b class='flag-5'>ATmega</b>8的新型电动自<b class='flag-5'>行车</b>调速控制系统设计

    求助,关于atmega8芯片烧录问题

    今天才发现,有个板子上是ATmega8L,烧录时选的是ATmega8芯片选项,因为没有ATmega8L这个选项,有ATmega8A,想知道有
    发表于 11-10 06:02

    如何通过OBD读取汽车档位

    想要通过汽车OBD接口获取汽车当前档位,需要发送什么指令?现在已经可以从obd接口读取车速和转速了。
    发表于 11-06 17:50