ATmega16L的ISP技术在汽车电子差速控制中的应用

发布者:shiwanyongbing最新更新时间:2013-03-06 来源: 21IC 关键字:ATmega16L  ISP技术  差速控制 手机看文章 扫描二维码
随时随地手机看文章
1 引言

当车辆行驶在转弯路面或巷道时,传统燃油汽车通过左右轮间的机械差速器保证了两侧车轮能够以不同速度旋转,虽然满足了汽车行驶运动学的要求,同时也增加了减震悬架系统的复杂度,降低了系统的效率。本文研究的电动汽车采用独立的轮式驱动方式,即每个车轮有一个直接驱动的电机。这样,汽车两个后轮都能独立提供驱动动力,可以按运行工况需求独立分配功率,该电子差速控制器是以两个驱动轮的附着系数相等为目标分配两轮的驱动转矩,从而使车辆发生滑转的可能性减小到最小,具有操作灵活,运行稳定的优点,是未来电动汽车发展的主要方向。电动汽车差速控制器的设计除了要考虑稳定性好,更要考虑在工业现场便于维护、升级。使用传统方法对CPU重新编程存在很多不便,所以,采用在系统编程(ISP技术)设计控制器系统。

2 开发模式介绍及芯片选择

本文介绍的应用系统采用了一种新的开发模式(类似于编程器开发模式)。由于利用了芯片的在系统编程(ISP)功能,因此不需要移动芯片。在软件设计时设计成:一旦代码文件被重新编过,即自动下载到芯片,并自动复位运行,是真正的“所编即所得”。

目前很多单片机都支持在系统编程。8051系列单片机支持在系统编程的也很多,但大多数是支持通过PC机的串口对单片机进行编程。这样有四个不方便的地方:一是项目本身与PC机串行通信不方便;二是要增加1片MAX232电平转换芯片;三是有的芯片要按特定的步骤进入下载模式,编程过程需要手工干预;四是有的芯片需要固件(定制的程序)的支持,如果不小心损坏了固件,则芯片的在系统编程功能也没有了。

经过比较,ATMEL公司生产的ATmega16L是一款比较理想的芯片,它的内部集成了较大容量的存储器和丰富强大的硬件接口电路,具备了AVR高档单片机的MEGE系列的全部性能和特点,适合本系统的开发。

在AVR产品中,ATmega16L具有突出特点:

(1) 高性能、低功耗的8bAVR微控制器,先进的RISC精简指令集结构,可通过SPI接口在系统串行编程与8051兼容。

(2) 片内集成了较大容量的非易失性程序和数据存储器。16KB的Flash程序存储器,可擦写寿命达10,000次;512B的EEPROM,擦写寿命达100,000次;支持可在线编程(ISP)和可应用自编程(IAP);可编程的程序加密位。

(3) 丰富强大的外部接口性能。四通道PWM,可实现任意16b以内的、相位和频率可调的PWM脉宽调制输出,为实现先进的电机控制方法提供了条件;8通道A/D转换;32个可编程的I/O口。

(4) 特殊的微控制器性能。可控制的上电复位以及可编程的欠电压检测电路;串行编程时有自动擦写周期,在调试大程序时可以分段下载,节约时间。

3 ATmega16微控制器在系统编程模式

当芯片的引脚RESET接地时,Flash程序存储器、EEPROM数据存储器、熔丝位和加密锁定位都可以通过SPI总线接口[SCK,MOSI(input),MISO(output)]来编程。当RESET引脚为低电平后,在编程/擦除操作之前必须首先发送一条编程允许命令。在串行编程模式下,芯片会在字节编程之前自动插入一个擦除周期。因此,除非芯片的代码保护位被编程,编程之前不需要执行全片擦除命令。芯片擦除指令把程序和数据存储器的每一单元都变成0xFF。而根据系统时钟源的不同,串行编程时钟SCK必须同系统时钟相配合,SCK的低电平和高电平的最小时间定义如下:Low:大于2个MCU时钟周期(fck<12MHz);High:大于2个MCU时钟周期(fck<12MHz)。

4 在系统编程技术在汽车电子差速控制中的应用

4.1 系统组成

整个车辆控制系统分两层,外层是差速控制层,根据从直流电机采集到的速度量反馈到CPU,经A/D转换、CPU内部差速算法计算后产生理想转矩值Td,内层是电机转矩控制层,根据从直流电机采集到的电流量反馈到CPU,经A/D转换、CPU内部PID算法调节后产生实际控制电流Io,CPU通过查表计算出PWM占空比,此信号通过功率转换电路输送给直流电机,一但发现电机功率转换电路内出现过流、过压、过温等异常情况时,保护电路及时通知CUP并做相应调整。系统运行情况由外部状态指示器显示。RS-485输出用于与其他车载电子设备通信。系统组成框图如图1所示:


图1 汽车电子差速控制系统结构图[page]

本系统设计的ISP接口区别于通常将TTL电平转换成RS-232电平的做法,如图2所示,利用该电路图可以方便的实现电动车差速控制系统与PC机的通信。通过计算机并口与单片机SPI口连接,为了保护计算机并口,需要增加1片74HC244作为隔离。


图2 在线下载ISP硬件原理图

4.2 Atmega16L微控制器的ISP技术实现

(1) Atmega16L在系统串行编程步骤

●在XTAL1和XTAL2之间连接一个8MHz的晶振;在VCC与GND之间加上电,同时将RST和SCK设置为低电平。
●等待至少20ms,由MOSI引脚送入串行编程允许命令。
●Flash是按页编程,一次操作对应一个页编程。发送写/读/擦除等命令及数据,串行数据高位在前,低位在后,数据在时钟的上升沿锁定。
●如果上一步是写命令,至少等待4.5ms。
●需要时重复③、④两步。
●将RESET引脚设置为高电平,芯片开始执行程序。

(2) Atmega16L串行编程命令

Atmega16L串行编程命令表附表所示。

附表 Atmega16L串行编程命令

注:a=高位地址,b=低位地址,H=0(低字节)/L(高字节),o=数据输出,i=数据输入,x=任意

(3) Atmega16L串行编程时序图

Atmega16L串行编程时序图如图3所示:


图3 Atmega16L串行编程时序图

5 结束语

ISP技术的应用,为汽车电子差速控制系统的研制,工业现场的维护、升级过程提供了便利,使系统成本显著降低。本系统舍去了以往通过PC机的串口对单片机进行编程的模式,改用计算机并口与单片机SPI口连接,提高了数据传送速度和系统的可靠性。(end)
关键字:ATmega16L  ISP技术  差速控制 引用地址:ATmega16L的ISP技术在汽车电子差速控制中的应用

上一篇:基于超声波检测的倒车雷达设计
下一篇:基于单片机的汽车组合电子仪表

推荐阅读最新更新时间:2024-03-16 13:19

Atmega16L的模/数转换器—AVR单片机入门篇
ATMEAG16L中有8个十位精度的ADC(模/数转换器),它包括一个8通道的模拟开关、一个采样保持比较器、一个转换逻辑和4个控制/状态寄存器。其中,8通道10位模拟开关的输入端同PORTA口相连复用,用于输入模拟信号。模拟开关的输出则接至采样保持比较器的输入上,采样保持比较器可以确保模数转换逻辑的输入在转换过程中保持不变,它的输出接至模数转换逻辑 由于模拟开关的输入端同PORTA口相连复用,当一个应用系统不需要或者只需要少数的模/数转换器时,这个端口的其他引脚可以当作普通的1/0口使用。但是要注意,尽量不要在用到/VD转换器时,再将PORTA口作为普通I/O口使用,因为这会影响到A/D的转换精度。 模/数转换器可将输入的
[单片机]
<font color='red'>Atmega16L</font>的模/数转换器—AVR单片机入门篇
基于ATmega16L的便携设备电源系统设计
随着科技的进步,便携设备应用日益普遍,这些设备给我们的工作和生活带来越来越多的便利,同时,其对内部的电源系统提出更高的要求。便携设备一般需要满足市电和蓄电池两种供电方式,完成蓄电池的充放电控制和电池剩余电量的估算;需要与嵌入式主板进行开关机交互和数据交互;需要具备体积小、重量轻、效率高等特点。虽然针对笔记本和手机产品有成熟的电源方案,但是一般仅适用于小功率的场合,对于专业的便携设备缺乏适应性。 在上述背景下,急需设计一款较大功率,具备以上功能特点的电源系统,从而满足一般便携设备对电源的需求。 1 电源系统总体设计 本系统以微控制器为检测和控制的核心,包括适配器、电池组、电池充放电模块、DC/DC变换等功能模块。系统的总
[单片机]
基于<font color='red'>ATmega16L</font>的便携设备电源系统设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved