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

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

3天内不再提示

基于SPCE061A单片机与CPLD技术实现电动自行车充电系统设计

电子设计 来源:郭婷 作者:电子设计 2019-04-22 08:13 次阅读

电动车由于具有无废气污染、无噪音、轻便美观等特点,受到众多使用者的青睐。但使用中也暴露出它的局限性,那就是蓄电池的容量决定了它的使用范围,而且存在充电时间长的缺点。目前随着电动自行车的发展,急需解决的问题就是如何实现快速灵活的充电。

随着电子技术、可编程逻辑器件(FPGACPLD)、EDA技术的飞速发展,基于硬件编程语言的自上而下(TOP-TO-DOWN)设计方法给数字系统的开发设计带来了革命性变革,仅使用单片机来实现系统控制的传统方法正在被越来越多的以MCU+FPGA/CPLD为核心的最新设计理念取代。采用这种混合设计方案的最大优点是两者的优势互补,电路结构简单,这给数字电路系统的设计带来极大的方便。利用CPLD控制的灵活性很容易对电路进行在线修改,实现各种复杂的数字逻辑控制,这极大地扩展了单片机的功能。而且由于硬件编程语言的灵活性及CPLD具有的在系统编程(In-SystemProgram)特点,大大缩短了系统开发研制周期。基于上述思想,研发了基于SPCE061A和CPLD的电动自行车充电系统。

1 系统硬件设计

1.1 系统组成及功能

该充电系统由凌阳SPCE061A单片机、充电器、按键、CPLD、ACM12864液晶显示器、上位机、语音电路等组成。充电器采用恒流、恒压、浮充三阶段充电方法对蓄电池进行充电。SPCE061A单片机控制六个充电器对六个蓄电池同时进行充电,同时检测各个充电器的恒流、恒压、浮充三个充电状态,并通过ACM12864液晶显示器显示各充电器的工作状态。通过按键选择各充电器的工作与停止,并可根据不同需要选择快速充电工作方式或普通充电工作方式,对蓄电池进行充电。系统上电进入工作状态后,当单片机检测到蓄电池已充满的信号或发生其他紧急情况所产生的信号时,可以自动关闭充电器,实现充电器操作智能化。利用凌阳SPCE061A单片机的语音功能对充电过程中所出现的故障进行语音提示,使设计更人性化,便于操作。充电系统可以和上位机进行通讯,从而实现系统之间的联网,有利于系统功能的扩充。其系统组成框图如图1所示。

基于SPCE061A单片机与CPLD技术实现电动自行车充电系统设计

1.2 液晶显示电路的设计

显示部分采用ACM12864C液晶显示器,该模块价格低。控制器为KS0107和KS0108,工作温度范围:0℃“50℃,储存温度范围:-20℃”70℃,自带负电压发生电路,单+5V供电,带背光,可与各种微处理器直接接口,数据读写操作不受外部时钟控制,不带汉字库,占空比为1/64,外部共有20条引脚来进行外部接口。ACM12864C能够充分满足汉字显示的要求。通过必要的程序设计,可实现在充电过程中通过对充电器恒流、恒压、浮充等信号的采集,在ACM12864液晶显示器上实时动态地显示电池状态。SPCE061A与ACM12864的接口如图2所示。

基于SPCE061A单片机与CPLD技术实现电动自行车充电系统设计

1.3 键盘电路及I/O电路设计

本系统采用CPLD作为SPCE061A单片机和充电器的接口部分,实现I/O口扩展,并完成键盘扫描功能。CPLD的使用,取代了一些专用集成电路,减少了系统的复杂性,提高了系统的集成度。本系统采用硬件电路来完成对键盘的扫描工作,当有按键按下时,CPLD内部状态发生改变。按键弹起后,内部状态经CPLD自动处理转化为相应的键值被送到输出端口,供单片机扫描时取走键值。相对于软件判别键盘工作状态,这样不仅节省了SPCE061A的存储空间,还极大地提高了系统的工作速度,更好地实现了实时性。

CPLD选用ALTERA公司生产的MAX7000S 系列中的EPM7128SLC84-15。该芯片共有84个引脚,采用EEPROM技术制作;内含2 500个逻辑门,128个宏单元,时钟工作频率可达151.5MHz。通过CPLD对资源的整合,实现了用一片CPLD实现I/O电路、硬件扫描判别等,优化了硬件的布局。如需改变系统的功能,只需改变相应的源代码而不是硬件结构,因而具有很大的灵活性。

2 系统软件设计

2.1 主程序设计

本系统的软件部分采用C语言汇编语言混合编制而成,因而该程序具有功能强大、设计完备等特点。主程序主要完成如下功能:

(1)系统初始化和参数的设置;

(2)充电器三种工作状态的检测和显示;

(3)控制各个充电器的工作和停止以及快速充电和普通充电两种充电方式的选择;

(4)蓄电池正反极性的判断,极性接反时自动进行语音报警;

(5)充电器充满蓄电池时自动关闭充电器;出现异常情况时自动进行语音报警;

(6)对快速充电时间长短进行设定。

系统主程序流程图如图3所示。

基于SPCE061A单片机与CPLD技术实现电动自行车充电系统设计

基于SPCE061A单片机与CPLD技术实现电动自行车充电系统设计

2.2 语音播放程序设计

SPCE061A的D/A转换通道的硬件实现大致有两种方式,一种是直接采用数/模转换器DAC方式,另一种是采用脉宽调制PWM驱动方式。SPCE061A音频输出的结构就是由两个DAC通道或一个PWM驱动通道构成。这两种实现方式实质都为数/模转换,都是将数字信号转换为电流模拟信号输出。SPCE061A的音频输出采用双通道模/数转换方式,即数字信号通过10位DAC转换成3mA驱动的电流模拟信号输出。语音提示输出直接采用DAC通道,经信号放大后,由扬声器输出。语音播放流程图如图4所示。

基于SPCE061A单片机与CPLD技术实现电动自行车充电系统设计

2.3 CPLD程序设计

VerilogHDL语言是硬件描述语言,是描述硬件电路的功能、信号连接关系及定时关系的语言,通过语言编程来表示逻辑器件及系统的功能和行为。其具有设计技术齐全、方法灵活、支持广泛、硬件描述能力强、与器件工艺无关、易于共享和复用等优点。与VHDL相比,VerilogHDL是一种非常容易掌握的硬件描述语言,而掌握VHDL设计技术就比较困难。故采用VerilogHDL语言来设计接口电路,能充分利用VerilogHDL语言在系统级硬件描述上的优点。

CPLD实现两个多路选择器和一个键盘扫描电路功能。程序各端口功能如表1所示。datain1由datain1[0]。。.。。.datain1[17] 18位输入端口组成,分为6组,每组3个端口。rs由rs[0]、rs、rs3位端口组成,最多可以表示8个2进制数(本设计用到其中的6个)来表示端口选择位。dataout1由 dataout1[0]、dataout1、dataout13位组成,表示输出端口。datain1、dataout1、rs组成一个多路选择器,实现选择输入功能,rs的值决定选择datain1的哪一组信号送给dataout1,由dataout1输出。datain2由datain2[0]、 datain2组成,表示输入端口。dataout2由dataout2[0]。。.。。.dataout2[11]12位输出端口组成,分成6组,每组2位。同理,datain2、 dataout2、rs组成另一个多路选择器,实现选择输出功能,rs的值决定选择datain2的2位信号从dataout2的哪一组输出。rt为控制脉冲,当为上升沿时实现选择输入功能,当为下降沿时实现选择输出功能。datain3为16位按键输入口(低电平有效),每位代表一个按键。dataout3为4位按键值输出端口,当有按键按下时,经CPLD内部状态发生改变,按键弹起后,内部状态经CPLD自动处理转化为相应的键值从dataout3输出(高电平有效)。如当datain3位为1111111111111101时,表示2号键按下,dataout3将输出0010,表示按键值为2。

基于SPCE061A单片机与CPLD技术实现电动自行车充电系统设计

3 CPLD仿真

从最初的电路设计思想到QuartusII的波形仿真、再到CPLD的芯片编程结束,开发设计流程图如图5所示。

基于SPCE061A单片机与CPLD技术实现电动自行车充电系统设计

在QuartusII 平台上,对VerilogHDL程序编译后,用Simulator对之进行时序仿真,得到如图6所示的结果。

基于SPCE061A单片机与CPLD技术实现电动自行车充电系统设计

由图中可以看到各预定功能都得到了实现,如datain3为111111011111时,dataout3输出为0110,仿真结果完全符合电路的要求。

基于SPCE061A+CPLD设计的电动自行车充电系统,简化了系统软硬件设计,提高了电路的稳定性和可靠性;使系统设计灵活、开发周期短、集成性更强,同时使系统易于升级和扩展。经检验测试,各项技术指标均达到了设计要求。

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

    关注

    6034

    文章

    44541

    浏览量

    634102
  • cpld
    +关注

    关注

    32

    文章

    1248

    浏览量

    169285
  • eda
    eda
    +关注

    关注

    71

    文章

    2733

    浏览量

    173133
收藏 人收藏

    评论

    相关推荐

    如何使用凌阳SPCE061A设计嵌入式应用系统

    SPCE061A是凌阳科技新推出的u課SP内核的十六位单片机,内嵌32K字 Flash的SPCE061A时是适用于数字语音识别应用领域的一种经济的选择。它支持精简指令系统,片内具有丰富
    发表于 08-08 06:41

    SPCE061A单片机怎么通过指纹识别模块实现接口电路?

    SPCE061A单片机与指纹识别模块的接口电路设计
    发表于 10-30 09:11

    怎么实现基于SPCE061A的车载DVD播放器设计?

    本文设计并实现一套基于凌阳单片机SPCE061A的车载多碟DVD播放器。
    发表于 05-13 06:59

    SPCE061A单片机硬件结构

    SPCE061A单片机硬件结构 从第一章中SPCE061A的结构图可以看出SPCE061A的结构比较简单,在芯片内部集成了ICE仿真电路接口、FLASH程序存储器、SRAM数据存储器
    发表于 08-26 18:55 75次下载

    基于SPCE061A控制的汽车运营监控系统的设计

    本文针对运营车辆运营调度管理的特点,研究了运营车辆的跟踪、定位、实时监控,论述了基于SPCE061A 单片机的运营车辆调度监控管理系统软、硬的方案和实现过程,从而
    发表于 12-23 15:41 6次下载

    基于SPCE061A单片机实现智能小车设计

    机器人的前身是智能遥控小车,它在军事、航空、探险等领域有着极其重要的作用. 本文以SPCE061A单片机为控制核心、无线电遥控为人车通讯手段、传感器为小车感官,实现了对智能遥
    发表于 02-24 15:14 52次下载

    SPCE061A单片机在USB通讯中的应用

    SPCE061A单片机在USB通讯中的应用
    发表于 08-04 22:23 43次下载

    使用凌阳SPCE061A的嵌入式应用系统设计

      SPCE061A是凌阳科技新推出的u課SP内核的十六位单片机,内嵌32K字 Flash的SPCE061A时是适用于数字语音识别应用领域的一种经济
    发表于 01-01 21:18 780次阅读
    使用凌阳<b class='flag-5'>SPCE061A</b>的嵌入式应用<b class='flag-5'>系统</b>设计

    基于SPCE061A单片机的图形液晶模块的驱动设计

    基于SPCE061A单片机的图形液晶模块的驱动设计 介绍内置T6963C控制器的图形液晶显示模块的特点,及利用16位单片机SPCE061A的资源,设计的对图形液晶
    发表于 10-16 18:01 1074次阅读
    基于<b class='flag-5'>SPCE061A</b><b class='flag-5'>单片机</b>的图形液晶模块的驱动设计

    采用SPCE061A设计的SIO实现数码录音及播放

    采用SPCE061A设计的SIO实现数码录音及播放 本文就是介绍利用SPCE061A的这两个资源和串行接口的FLASH(SPR1024)来开发数码录音及播放系统。本
    发表于 04-20 11:45 1017次阅读
    采用<b class='flag-5'>SPCE061A</b>设计的SIO<b class='flag-5'>实现</b>数码录音及播放

    SPCE061A单片机开发及应用

    本章将介绍nSP系列 单片机 的应用领域,具体讲述SPCE061A单片机在通讯、语音领域里的应用,并详细给出了有关系统的电路原理图、程序流程图以及程序代码,供读者参考。
    发表于 08-22 17:55 139次下载
    <b class='flag-5'>SPCE061A</b><b class='flag-5'>单片机</b>开发及应用

    基于SPCE061A的SIO实现录放音

    SPCE061A 是台湾凌阳公司生产的一种新型的十六位单片机,该款单片机资源丰富,具有极高的性价比。SPCE061A具有可编程的音频处理功能,同时又具有串口输入输出端口SIO(它提供了
    发表于 10-06 10:39 1373次阅读
    基于<b class='flag-5'>SPCE061A</b>的SIO<b class='flag-5'>实现</b>录放音

    基于SPCE061A单片机农牧区新能源智能喷灌系统设计与实现

    的智能喷灌。喷灌通过各种传感器、SPCE061A单片机实现控制。本文设计的新能源智能喷灌系统易维护、成本低、能源自给自足,可
    发表于 12-18 15:48 18次下载

    使用SPCE061A的SIO实现数码录音及播放

    关键词:SIO , SPCE061A , 播放 , 数码录音 SPCE061A是台湾凌阳公司生产的一种新型的十六位单片机,该款单片机资源丰富,具有极高的性价比。
    发表于 11-09 09:17 339次阅读

    基于SPCE061A和PDIUSBD12USB接口芯片实现设备系统的设计

    本文所设计的USB设备系统的功能比较简单,它主要实现SPCE061A与PC之间的简单通讯,是SPCE061A
    的头像 发表于 06-23 14:18 2020次阅读
    基于<b class='flag-5'>SPCE061A</b>和PDIUSBD12USB接口芯片<b class='flag-5'>实现</b>设备<b class='flag-5'>系统</b>的设计