1、2014届本科毕业论文(设计)电动自行车性能无线检测装置的设计姓名系别物电学院专业通信工程学号100313032指导教师2014年2月10日商丘师范学院2014届本科毕业论文(设计)目录摘要与关键字0引言1概述11电动车检测系统现状12本命题的目的和意义13主要研究内容2总体设计21方案的设计22实施措施23系统工作原理3系统的硬件设计31系统硬件的组成32前向通道设计321电流采集通道322电压采集通道323无线接收模块接口334PIC16F877的介绍33后向通道设计331MAX7219的介绍332MAX7219各引脚定义333数码管显示原理334MAX7219与PIC16F877的接口电
2、路4系统的软件设计41主程序设计42初始化模块43数码显示模块44A/D转换模块45电流/电压值采样结果处理模块5结语参考文献致谢商丘师范学院2014届本科毕业论文(设计)电动自行车性能无线检测装置的设计摘要随着大气污染的不断加剧,绿色环保、使用方便的电动自行车(以后简称“电动车”)受到更多人的喜爱。在使用中,人们更关心的是电动车电池的使用寿命和每次充电后的行驶路程方面的指标。电动车在出厂前,往往要进行多项安全和性能地检测和记录,本课题设计一种无线遥控装置,用于检测电动车的欠压值、空载电流、堵转电流。其核心是PIC16F877单片机系统,并配有手持袖珍遥控器来控制这3个参数的读取。在产品不解体
3、的情况下,质检员可以迅速方便地读取数据,相对于手工检测,大大提高了效率。关键词电动自行车PIC16F877单片机;检测;THEDESIGNOFELECTRICBICYCLEPERFORMANCEWIELESSDETECTIONDEVICEABSTRACTWITHTHECOMINGOFMOREANDMOREAIRPOLLECTIONS,PEOPLELIKEELECTRICBICYCLEBETTERFORITSRIDINGSAVINGANDNOTEXHAUSTINGPOLLECTIONINTHEPROCESSOFUSING,PEOPLEPAYMOREISTHELIFEOFTHEBATTERYAND
4、MOTORDRIVEAWAYTHETIMEAFTERTHECHARGEOFTARGETSTHEREAREOFTENNEEDMORESECURITYANDPERFORMANCETESTINGANDRECORDBEFORETHEBICYCLELEAVESTHEFACTORY,ONEOFTHEINDEXSISTESTINGELECTRICBICYCLEOWEPRESSUREVALUE,IDLECURRENTANDSTALLTHESIZEOFTHECURRENTTHEDEVICEISBASEDONPIC16F877,EQUIPEDWITHREMOTECONTROLWHICECANCONTOLTHERE
5、ADINGOFTHETHREEPARAMETERSINTHEDISINTEGRATIONOFTHEPRODUCT,QUALITATIVECANCHECKTHEPARAMETERSQUICKLY,WHICEIMPORTSTHEEFFICIENCYBADLYCOMPARDWITHTHEMEASURINGBYHANDKEYWORDSELECTRICBICYCLEPIC16F877DETECTION商丘师范学院2014届本科毕业论文(设计)0引言现代社会充斥着各种各样的交通工具,近来,大气污染不断加重,骑行省力、噪音低且无废气排放等优点的电动车越来越受到喜爱。它是在普通自行车的基础上,安装了电机、控制
6、器、电池、转把闸等操纵部件和显示仪表系统机电一体化的个人交通工具。电动自行车是一种新兴的环保交通工具,已成为为国内外新兴的产业。它的发展壮大,将会带动电机、蓄电池、仪器仪表、电子集成、机械模具等多个行业的快速发展,起到领跑多个行业的作用,所以,研究电动车具有很好的发展前景。在电动车产生和发展过程中,人们更加重视它的性能好坏,因此,电动车性能检测成为重点。在国内,手工检测仍然被大部分人采用,但效率很低。现在,我们将设计一套无线检测装置,该装置基于PIC16F877单片机系统,并配有手持袖珍遥控器分别对欠压值、空载电流、堵转电流的测量,灵活方便,大大提高了检测效率,是电动车检测技术的里程碑。1概述
7、11电动车检测系统现状随着全球节能减排的倡导,作为一种骑行工具电动自行车,越来越受到人们的青睐,因此,在出厂前对电动车的性能检测成为重点。在国内,杭州中关信息科技有限公司等单位联合研制出电动车性能检测综合系统,来实现电动车行驶阻力的分析,并实现测试平台的路面模拟。在国外,如日本JISD92012001标准、英国BS61021992标准等都介绍了电动车制动系统的检测。近来,各厂家以及技术监督部门都在不断研究电动自行车的质量检测方法。武二永等专家提出了一种电动自行车整车性能检测系统,其应用传感器对转速、转矩、电参数的检测,并结合TI公司的TMS320LF2407DSP芯片构建了一个实时分布式测控系
8、统,实现对电动车各项功能的检测。目前,在电动车检测系统中用到的PIC16F877芯片,它具有FLASHPROGRAM程序的内存功能,可以重复烧录程序,适合教学、开发新产品等的用途,其内建ICE功能,可以让使用者直接在单片机产品上,进行如暂停微处理器执行、观看缓存器的内容等,一边快速除错与开发等,具有很好的发展前景。12选题的目的和意义当骑行作为一种趋势的当今社会,电动车逐渐进入人们的视线,它不仅绿色环保,还很方便短途出行,电动自行车是以蓄电池、锂电池等电能作为其助能源,能实现人力骑行、电动或电助动功能的特种自行车。它是在普通自行车的基础上,安装了电机、控制器、电池等操纵部件和显示仪表系统的机电
9、一体化的个人交通工具,比步行更快速,比公交、轿车来的更环保,因此,对于电动车的研究受到重视。电动车在出厂前,经常要进行性能的各项检查,如今,使用更多的仍是手工测量,使用起来很不方便,为此,在本课题中设计一套无线检测测装置,配有手持袖珍遥控器,能快速对欠压值、空载电流、堵转电流进行测量记录,提高了检测效率,因此,该课题具有很大的实用意义。13主要研究内容1完成控制器外围芯片的配置、资源的分配和信号采集电路的设计。2通讯、电源等接口的设计。3设计并绘制电路的SCH图。商丘师范学院2014届本科毕业论文(设计)2总体设计21方案设计经过查阅资料,可知有两种方案能完成电动车性能的检测,现分别介绍如下方
10、案一主要以设计电动车整车性能检测平台为目的,该系统采用计算机辅助测试设备,需要机械传动、测量和计算机控制技术互相结合。具体方案原理框图如图11所示图11具体方案原理框图该方案重点是以用室内整车性能检测平台代替实际路面状况,来实现电动车性能的检测与记录。由图可看出,计算机控制参数的检测,并通过传感器传入计算机进行处理。由于在实际路况中,电动车的电压、电流与地面的摩擦、速度的变化、载重的变化等等有关系,很难简单地用模拟的检测平台来代替,所以该模拟平台的设计非常复杂,不太可行。方案二主要是设计电动自行车性能检测为目的,努力使系统专用性,采用单片机控制,方案框图如图12所示该方案专用性强,思路清晰,通
11、过电流传感器采集电流、电压信号,经过信号调理电路放大调理电压电流值,模数转换后经单片机处理显示读取。该系统针对检测目标进行有针对性的检测,简单易于实现。检测平台传感器控制器输出接口输入接口PC机外国设备商丘师范学院2014届本科毕业论文(设计)图12采用单片机控制,方案框图22实施措施根据实际应用的需要和本装置的设计要求,我们选用了第二种方案,主要原因如下几点第一,方案一设计很复杂且系统的设计成本较高;第二,考虑到USB20总线传输速度已经达到480MB/S,能满足数据的及时传输,从而无需外加存储;第三,在单片机基础上搭建的硬件电路采集系统完全满足本系统的设计要求;第四,单片机还具有性价比高、
12、功能灵活、易于人机对话以及具有良好的数据处理能力等优点。因而,我们将选用第二种方案。23系统工作原理本方案的内容是通过手持袖珍遥控器控制电动车欠压值、空载电流、堵转电流的读取,并在显示器上显示出来。具体内容是通过电流传感器采集电压、电流的值,并通过电压电流调理电路对信号调整放大,然后送到单片机系统进行处理,并在数码管上显示。该系统的工作原理如下图13图13系统工作原理框图简要介绍以上器件1电流传感器该电流传感器采用型号为KT100A/P的元器件,根据霍尔效应对交直流进行检测。2信号调理电路由于电流传感器采集到的是微弱的电压信号,该小信号不能直接被单片机系统所使用,所以需要对采集到的信号进行放大
13、调理,因此要用到电压调理电路、电流调理电路。3无线接收和发射模块该无线接收和发射模块是由带编码器的无线发射模块和带解码器的无线接收模块共同组成。模块内部有编码芯片,用户可以根据需要进行编译,不能重复编码,只有当编解码一致时,才能完成信号的发射和接受,因此保密性能好,抗干扰性能强以及灵敏度高等特点。4显示模块该显示模块是有四个七段数码管组成,主要完成数据的显示。3系统的硬件设计31系统硬件的组成在满足设计要求的情况下,将该系统的硬件设计分为两部分前向通道设计和后向通道设计,其中,前向通道设计包括电压采集模块、电流采集模块和无线接收发射模块,后向通道设计包括数码管接口和LED接口,在数码管接口中将
14、用到MAX7219驱动芯片。其硬件组成框图如图31电流传感器信号调理电路A/D转换单片机处理电路显示电路无线遥控商丘师范学院2014届本科毕业论文(设计)图31系统硬件组成框图32前向通道设计321电流采集通道该电流传感器采用的是北京科海电子技术有限公司生产的KT100A/P型号,其额定电流值为100A,该电流传感器有如下的特点采用磁平衡式电流传感器、磁补偿原理、霍尔效应原理;其被测回路与输出回路是绝缘的;可以测量交流、直流、以及脉动电流;被测电流有效值是100A,输出电流有效值是100MA,并且输出电流是正比于被测电流的,线性误差01,满足该装置的设计要求。电流采集通道的设计框图如图32PI
15、C16F877电压调理电路电流调理电路无线接收发射模块LED指示灯数码管显示电流传感器商丘师范学院2014届本科毕业论文(设计)图32电流采集通道的设计该电流传感器采用的是磁补偿式电流传感器,其工作原理是当主回路有一个电流IP通过时,它产生的磁场被聚磁环聚集并且感应到霍尔器件上,输出的信号可以用来驱动功率管并使其导通,这样一来就获得一个补偿电流IS,这个电流再通过多匝绕组的方式产生磁场,该磁场方向与原磁场正好相反,因此起到一个补偿作用,此时霍尔器件的输出就会减小,直到和IP与匝数所产生的磁场相同时,IS不再变化,霍尔器件指示为零。一旦磁场失去平衡,霍尔器件就会有信号输出的变化,此时重复以上过程
16、,将重新达到平衡,所以这是一个动态平衡。322电压采集通道该课题要求电压的检测范围是050V,我们用到电阻分压的方式来测量,如图33所示图33电压采集通道的设计323无线接收发射模块该无线接收接受发射模块使用的是深圳市运筹实业有限公司生产的YCR200型,遥控模块发射距离200M,需要9V电压来供电,接收模块工作电源是5V,输出电流为5MA,满足该装置设计的要求,其引脚结构图如图34商丘师范学院2014届本科毕业论文(设计)图34无线电接收发射模块引脚图接收模块的A、B、C、D端口与发射模块的A、B、C、D端口是一一对应的,输出都是高电平且带有锁存功能。VT是解码有效信号输出,常低电平,解码有
17、效时变成高电平,此时输出电压幅值为4V,输出电流约为4MA,为非锁存输出,接收模块的框路图如图32所示。324PIC16F877的介绍PIC16F877是PIC16F87X中的一种,PIC16F87X是1998年年底微芯MICROCHIP公司推出的产品,采用了哈佛总线结构,除地址分支指令外,其余全为单周期指令。PIC16F877DE寻址方式简单,有直接/间接/相对共三种寻址方式。高性能精简指令集RISC,仅35条指令。运行速度快、功耗低、驱动能力强,高驱动电流I/O脚,可以方便地驱动LED显示,每根I/O口线最大灌电流20MA,每根I/O口线最大拉电流25MA。有8位定时器/计数器,可8位预分
18、频器。具备USART模块和MSSP模块,目前尚无其他办法对其直接进行解密拷贝。它一大特征是片内带有64、128或256字节EEPROM数据存储器,另外其程序存储器是FLASH型存储器,可以实现在电路板上直接擦/写程序。其微控制器特性为上电复位;四种可选择振荡方式;器件复位定时器DRT为低成本阻容RC;标准晶体/陶瓷XT振荡定时器保障其振荡稳定建立;自振式的看门狗;程序保密位为低频晶体LP;有低功耗睡眠状态33后向通道设计331MAX7219的介绍MAX7219是美国MAXIM公司推出的,它是多功能串行的串行输入/输出共阴极数码管显示驱动芯片。MAX7219能驱动8位七段数码管或者64个独立的L
19、ED。用它的3线串行接口传输数据,可方便的与单片机相连,并完成该装置的设计要求。该芯片内包括BCD译码器、多路扫描控制电路、段和位驱动器和一个88的静态RAM,用它来存放每一位数码管要显示的内容。MAC7219外部只需要接一个电阻就能设置所有LED显示器字段电流了。允许对每一位选择采用BCD译码方式显示或不译码方式来显示,还可以选择停机模式、数字亮度控制模式、从18选择扫描位数模式以及对所有的LED显示器的测试模式等。采用MAX7219芯片来实现LED数码显示,具有电更路紧凑、节省CPU的I/O接口、芯片功能更强大、编程更简单等优点,得到了广大电路设计者的认可。332MAX7219各引脚定义M
20、AX7219是24引脚DIP(DUALINLINE/SOSMALLOUTLINE封装。其引脚结构如图35所示。商丘师范学院2014届本科毕业论文(设计)图35MAX7219引脚图在该引脚图中,包括5V电源和2个GND引脚,其中DIG0DIG7引脚是8位数字驱动线,可以从数码管共阴极吸收电流,输出的是位选信号,SEGASEGG和SEGDP引脚为LED7段的驱动线和小数点的驱动线,来给显示器驱动电流,ISET引脚外接电阻,来调整LED显示亮度;DIN(数据输入端)、CLK(时钟输入端)、LOAD(锁存信号)引脚,分别与通用微处理器3线串行线相连,接收的数据和命令格式为16位的数据包,DOUT引脚是
21、串行数据的输出端口,用于多片MAX7219的级联扩展显示。MAX7219内部引脚结构如图36所示图36MAX7219内部引脚结构333MAX7219数据接收原理MAX7219能够接收数据和命令格式为16的数据包,如表31所示。其中前8位选择7219内部商丘师范学院2014届本科毕业论文(设计)寄存器地址,后8位是指令或数据的内容,高位(MSB)在前,低位(LSB)在后。表31串行数据格式D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0XXXXADDRESSMSBDATALSBMAX7129是SPI的一种总线驱动方式。它不仅仅要向寄存器内写入控制字,还需要读取相应寄存
22、器内的数据。想与MAX7129通信,首先要先了解MAX7129控制字。工作时,MAX7219规定一次性接收16位数据,这16位数据中,D15D12可以与操作无关,它们可以任意写入,D11D8决定了所选通的内部寄存器地址,D7D0做为待显示数据或初始化控制字。在CLK的脉冲作用下,DIN数据以串行的方式依次移入内部16位的寄存器,然后在一个LOAD上升沿的作用下,锁存到内部寄存器中。应该注意在接收时,先接收最高位D16,最后是D0。因此,在程序发送时必须要先送高位数据,在循环移位。工作时序图见图37。16位的数据采用串行移位接收方式,即单片机将16位二进制数逐位的发送到DIN端,在CLK的上升沿
23、到来前准备就绪,CLK每个上升沿将一位数据移入MAX7219的内移位寄存器,当16位数据移入完毕后,在LOAD引脚信号上升沿将16位数据装入MAX7219内的相应位置,在MAX7219内部硬件动态扫描显示控制电路作用下可以实现动态显示。MAX7219的控制操作很方便,片内具有8个位寄存器和6个控制寄存器。位寄存器对应LED具体显示内容,控制寄存器决定LED工作方式。控制寄存器有不工作方式的寄存器、译码方式的寄存器、亮度控制的寄存器、扫描个数的寄存器、关闭的寄存器、显示测试的寄存器。寄存器操作格式为2字节的串行数据,第一个字节为寄存器地址,第二个字节为控制命令或待显数据。图37数据读写时序334
24、MAX7219与PIC16F877的接口电路MAX7219驱动的七段数码管的接口电路如图38所示。其中CLK,LOAD,DIN分别接到单片机RC3,RC4,RC5对应位置上。在条件比较恶劣的背景下,干扰可能会通过3根信号线串入到显示电路,造成数码管显示不稳定。因此,我们在3根信号线上对地分别接入一个22PF的陶瓷电容,以消除因周围环境干扰引入的尖脉冲。为了减小尖峰位驱动电流导致的电源波动,在V和GND之间需接一个01UF的瓷片电容和一个10UF的电解电容。此外还需要注意对于MAX7219来说,连接到V和ISET端的电阻可以对数码管的亮度进行调节,但不得小于953千欧,本设计采用的是10千欧电阻
25、。商丘师范学院2014届本科毕业论文(设计)图38MAX7219驱动的七段数码管的接口电路4系统的软件设计软件部分的设计可分为两大部分主程序和子程序。主程序中完成软硬件初始化,判断按键的状态以及调用相应的子程序。子程序中主要完成数据的采集、码制的转换以及数码管显示等功能。该子程序包括初始化子程序、数码管的显示子程序、A/D转换子程序、双字节定点数转化成5位BCD码子程序、电压值采样结果处理程序、电流值采样结果处理程序以及一些四则运算程序等。由于每个功能的设计都是模块化的,因而给软件的调试和修改带来了很大的便利。41主程序模块遥控器检测装置的面板构图如图41所示商丘师范学院2014届本科毕业论文
26、(设计)3452678I空I载U复位电源负载1开关图41遥控检测装置面板构图在该面板中,右下角电源处为自行车电源输入端(面板上的电源开关和电源批示灯是指该检测装置的工作电源);负载处接入电动自行车;4个七段数码管显示当前采集的电压/电流值;电流校正旋钮和电压校正旋钮用来校正所测量的电流电压值。遥控器上共有A,B,C三个键,分别为复位键(KA)、选择键(KB)和采集键(KC)该装置的操作步骤如下(1)检测到该装置通电,此时电源指示灯LED1被点亮。(2)按下复位键KA,复位批示灯LED2点亮,表示准备好,可以采样了。(3)按下选择键KB,选择要采集的参数,对应的选择批示灯LED3/4/5D点亮,
27、连续按下KB,循环选择,(4)按下采集键KC,采集眼下选中的参数,对应的批示灯LED6/7/8被点亮,采集完毕后,并将参数值送数码管显示,再返回步骤(3),直至所有的参数被采集完毕。系统软件设计的主程序流程图如图42所示。商丘师范学院2014届本科毕业论文(设计)显示子程序LOAD端置低电平数据输出端置0返回DISP_DIG的第七位是否为1数据输出端置1DISP_COUNT为0吗数据输出端置1DISP_SEG的第七位是否为1DISP_COUNT置循环次数为8数据输出端置0DISP_COUNT是否为0LOAD端置高电平DISP_COUNT置循环次数8时钟端置低电平时钟端置高电平DISP_DIG减
28、1DISP_DIG左移一位时钟端置低电平时钟端置高电平DISP_SEG左移一位DISP_COUNT减1NYYNYNYN图42系统软件设计的主程序流程图42初始化子程序初始化程序是对寄存器、I/O端口、串口和MAX7219的初始化。其流程图如图43所示实现代码为初始化子程序INITIALMOVLW01HMOVWFSELECT给SELECT寄存器赋初值1初始化PORTABCFSTATUS,6选择BANK0BCFSTATUS,5CLRFPORTABSFSTATUS,5选BANK1MOVLWB00111111MOVWFTRISA设置PORTA均输入口MOVLWB10000100AN0,AN1,AN3位
29、模拟量输入,结果右对齐,参考电压为VDD,VSS。52MOVWFADCON1商丘师范学院2014届本科毕业论文(设计)显示子程序LOAD端置低电平数据输出端置0返回DISP_DIG的第七位是否为1数据输出端置1DISP_COUNT为0吗数据输出端置1DISP_SEG的第七位是否为1DISP_COUNT置循环次数为8数据输出端置0DISP_COUNT是否为0LOAD端置高电平DISP_COUNT置循环次数8时钟端置低电平时钟端置高电平DISP_DIG减1DISP_DIG左移一位时钟端置低电平时钟端置高电平DISP_SEG左移一位DISP_COUNT减1NYYNYNYN图43初始化子程序流程图初始
30、化PORTBBCFSTATUS,5初始化PORTB清零,为输出口CLRFPORTBBSFSTATUS,5CLRFTRISB初始化PORTCBCFSTATUS,5CLRFPORTCBSFSTATUS,5MOVLWB00000001RC0输入,其它输出MOVWFTRISC初始化PORTDRD47输入,RD03输出,驱动LEDBCFSTATUS,5CLRFPORTDBSFSTATUS,5商丘师范学院2014届本科毕业论文(设计)MOVLWB11110000MOVWFTRISDBCFSTATUS,5恢复到BANK0UART串行口初始化USART_INIBSFSTATUS,RP0BSFTRISC,7BS
31、FTRISC,6使RC6,RC7工作在串口状态MOVLW19HMOVWFSPBRG设置波特率为2400(由打印机决定)MOVLWB01100000使能UART发送,波特率发生器为低速方式MOVWFTXSTABRGH0,9位数据发送BCFSTATUS,RP0MOVLWB11010000允许串口工作,9位数据,使能连续接收MOVWFRCSTAMAX7219初始化MOVLW0CHMOVWFDISP_DIG选中寄存器“SHUTDOWN“,其地址为0CHMOVLW01HMOVWFDISP_SEG寄存器“SHUTDOWN“赋初值CALLDISPLAY设为正常显示状态MOVLW0FHMOVWFDISP_DI
32、G选中寄存器“DISPLAYTEST“,地址为0FHMOVLW00HMOVWFDISP_SEG寄存器“DISPLAYTEST“赋初值CALLDISPLAY设正常显示状态MOVLW0BHMOVWFDISP_DIG选中寄存器“SCANLIMIT“,其地址为0BHMOVLW03HMOVWFDISP_SEG寄存器“SCANLIMIT“赋初值CALLDISPLAY点亮03四个数码管MOVLW09HMOVWFDISP_DIG选寄存器“DECODEMODE“,其地址为09HMOVLW0FFHMOVWFDISP_SEG寄存器“DECODEMODE“赋初值CALLDISPLAY选B码的译码方式MOVLW0AHM
33、OVWFDISP_DIG选中寄存器“INTENSITY“,其地址为0AHMOVLW0FHMOVWFDISP_SEG寄存器“INTENSITY“赋初值CALLDISPLAY亮度选择最亮RETURN初始化程序结束43数码显示子程序数码管显示子程序完成PIC16F877和MAX7219之间的通信,数码显示子程序流程图如图44所商丘师范学院2014届本科毕业论文(设计)示显示子程序LOAD端置低电平数据输出端置0返回DISP_DIG的第七位是否为1数据输出端置1DISP_COUNT为0吗数据输出端置1DISP_SEG的第七位是否为1DISP_COUNT置循环次数为8数据输出端置0DISP_COUNT是
34、否为0LOAD端置高电平DISP_COUNT置循环次数8时钟端置低电平时钟端置高电平DISP_DIG减1DISP_DIG左移一位时钟端置低电平时钟端置高电平DISP_SEG左移一位DISP_COUNT减1NYYNYNYN、图44数码显示子程序流程图实现代码为数码管显示子程序DISPLAYBCFPORTC,4置7219LORD端低电平,允许接收MOVLW08H商丘师范学院2014届本科毕业论文(设计)MOVWFDISP_COUNT置循环次数为8LP1BCFPORTC,3时钟端置低电平,准备转换BTFSSDISP_DIG,7判断待传数据位是1吗GOTOPC5_CLR1如否,PORTC5清零BSFP
35、ORTC,5如是,PORTC5置1GOTOCLK_UP1转CLK_UP1PC5_CLR1BCFPORTC,5如否,待传数据置0NOPCLK_UP1BSFPORTC,3给时钟上沿启动一位传输RLFDISP_DIG,1下一位待传数据送DISP_DIG第7位DECFSZDISP_COUNT,1是否传完本字节GOTOLP1如否,循环MOVLW08H如是,传下一字节数据MOVWFDISP_COUNTLP2BCFPORTC,3时钟端置低电平,准备转换BTFSSDISP_SEG,7判断待传数据位是1GOTOPC5_CLR2如否,PORTC5清零BSFPORTC,5如是,PORTC5置1GOTOCLK_UP2
36、转CLK_UP2PC5_CLR2BCFPORTC,5如否,待传数据置0NOPCLK_UP2BSFPORTC,3给时钟上沿启动一位传输RLFDISP_SEG,1下一位待传数据送DISP_SEG第7位DECFSZDISP_COUNT,1是否传完本字节GOTOLP2如否,循环BSFPORTC,4如是,置7219LORD端高电平,禁止接收RETURN44A/D转换子程序在硬件设计中分别采用两个模拟量输入通道对电流和电压进行采样,在软件中也用了两个模/数转换的子程序,分别对电流和电压信号进行A/D转换。这样一来,虽然代码长度较长,但子程序独立性强。调用起来较为方便。电压通道A/D转换子程序与电流通道A/
37、D转换子程序大致相同,只是通道选择有别。下面只给出电流通道A/D转换子程序流程图。如图45所示实现代码为电流A/D转换子程序出口参数ADH(存放高两位),ADL(存放低八位)ADI_TRANSBCFSTATUS,5MOVLWB10001001MOVWFADCON0选择A/D时钟,选择采样通道1,NOP采样允许位延时,留出足够采样时间NOPNOPNOPNOP商丘师范学院2014届本科毕业论文(设计)NOPNOPNOPNOPNOPADI_STARTBSFADCON0,GO开始A/D转换LOOP_ADINOPBTFSCADCON0,2转换是否结束GOTOLOOP_ADI如否,转LOOP_ADISTO
38、REIMOVFADRESH,0如是,读取采样结果MOVWFADHBSFSTATUS,5在BANK1读取ADRESL的值MOVFADRESL,0BCFSTATUS,5ADL在BANK0。故到BANK0,写ADLMOVWFADLRETURN电压A/D转换子程序出口参数ADH(存放高两位),ADL(存放低八位)ADU_TRANSBCFSTATUS,5MOVLWB10000001MOVWFADCON0选择A/D转换时钟,采样通道0,采样允许位NOP开始采样后,有一定的延时才能开始进NOP行AD转换NOPNOPNOPNOPNOPNOPADU_STARTBSFADCON0,GO开始转换LOOP_ADUNO
39、PBTFSCADCON0,2转换是否结束GOTOLOOP_ADU如否,转LOOP_ADSTOREUMOVFADRESH,0如是,读取转换结果MOVWFADHBSFSTATUS,5在BANK1读取ADRESL的值MOVFADRESL,0BCFSTATUS,5注意,ADL在BANK0。故到BANK0,写ADLMOVWFADLRETURN子程序的返回商丘师范学院2014届本科毕业论文(设计)ADI_CON选择A/D转换时钟,选择采样通道1,开采样允许延时开始A/D转换转换完毕读取转换结果,存入ADH和ADL中返回NY图45A/D转化子程序流程图45电压电流采样值处理子程序之所以要对电流和电压采样结果
40、进行一系列的转化,是因为在显示时这些数值必须是BCD码才能被显示器显示出来。电流和电压采样结果的处理过程是相同,只是测量范围的取值不同。这里只电流采样结果的处理过程。该电流值的测量范围为0A1800A(1800用十六进制表示为708H),A/D转换结果为XXXH(10位),处理过程如下首先用公式(XXX708)/3FF对电流的A/D转换结果进行标度变换,然后再转化为可被显示器识别的5位BCD码。其中用到的双字节的加法、双字节的乘法、24/16位定点数除法、双字节BCD码的转换等子程序,其实现代码程序如下所示。双字节的加法子程序实现代码为双字节加法子程序入口被加数DADDBHI,DADDBLO加
41、数DADDAHI,DADDALO出口和DADDBHI,DADDBLO。进位标志位STATUSCDD_ADDMOVFDADDALO,0DADDA和DADDB低半字节相加ADDWFDADDBLOBTFSCSTATUS,C是否有进位商丘师范学院2014届本科毕业论文(设计)INCFDADDBHI如有,DADDB高字节加1,再加DADDAMOVFDADDAHI,0DADDA和DADDB高半字节相加ADDWFDADDBHIRETURN双字节的减法子程序实现代码为双字节减法子程序入口被减数SUBBHI,SUBBLO减数SUBAHI,SUBALO出口差SUBBHI_TEM,SUBBLO_TEM(计算结果放暂
42、存寄存器中)。DD_SUB_TEMPMOVFSUBALO,0将减数放寄存器SUBAHI_TEM,SUBALO_TEMMOVWFSUBALO_TEMMOVFSUBAHI,0MOVWFSUBAHI_TEMMOVFSUBBLO,0将被减数放寄存器SUBBHI_TEM,SUBBLO_TEMMOVWFSUBBLO_TEMMOVFSUBBHI,0MOVWFSUBBHI_TEMCOMFSUBALO_TEMSUBALO_TEM取反加1INCFSUBALO_TEMBTFSCSTATUS,Z低8位是否有进位吗DECFSUBAHI_TEM如有,SUBAHI_TEM减1,再取反COMFSUBAHI_TEM如否则SUB
43、AHI_TEM直接取反MOVFSUBALO_TEM,0SUBALO_TEM和SUBBLO_TEM相加ADDWFSUBBLO_TEMBTFSCSTATUS,C有进位否INCFSUBBHI_TEM如有,SUBBHI_TEM加1,再加SUBAHI_TEMMOVFSUBAHI_TEM,0如无,SUBBHI_TEM加SUBAHI_TEMADDWFSUBBHI_TEMRETURN双字节的BCD码转换子程序实现代码为双字节的定点数至5位的BCD码转换子程序入口条件BCDBHI,BCDBLO出口条件BCDDHI低半字节,BCDCHI,BCDCLOB2BCDCLRFBCDSIGNBTFSSBCDBHI,7GOT
44、OLOOP1BSFBCDSIGN,7CALLBCD_NEG_BLOOP1BCFSTATUS,CMOVLW16MOVWFBCDCOUN商丘师范学院2014届本科毕业论文(设计)CLRFBCDDHICLRFBCDCHICLRFBCDCLOLOOP16RLFBCDBLORLFBCDBHIRLFBCDCLORLFBCDCHIRLFBCDDHIDECFSZBCDCOUNGOTOADJDECRETLW0ADJDECMOVLWBCDCLOMOVWFFSRCALLADJBCDMOVLWBCDCHIMOVWFFSRCALLADJBCDMOVLWBCDDHIMOVWFFSRCALLADJBCDGOTOLOOP16
45、BCD码校正子程序ADJBCDMOVLW0X03ADDWFINDF,0MOVWFBCDTEMBTFSCBCDTEM,3MOVWFINDFMOVLW0X30ADDWFINDF,0MOVWFBCDTEMBTFSCBCDTEM,7MOVWFINDFRETLW0BCD_NEG_BDECFBCDBLOCOMFBCDBLOBTFSCSTATUS,ZDECFBCDBHICOMFBCDBHIRETURN商丘师范学院2014届本科毕业论文(设计)5结语在该课题的设计过程中,最重要的是掌握设计思路,有了总体设计思路的情况下,再分别对各个子系统进行构思,采用总分的结构使得设计有条不紊,仅仅有条。电动自行车性能无线检
46、测装置的设计的核心是PIC单片机,它具有速度快、功耗低、控制能力强等优点,而且使用方便、灵活,易于学习,是实现中小规模工业检测自动化的有力工具。本实验利用单片机完成了对电动车欠压值、空载电流和堵转电流的测量,使得电动车性能检测不仅仅局限于手工测量,而是一种更高效快速的便捷方法。在进行系统软件设计时,遇到的最大困难是各子程序的实现代码,需要在查看大量资料以及深入学习后才能完成,这个过程我受益匪浅,从一无所知到慢慢学会,这个个过程很有意义。总的来说,该课题的实现在现实生活中有很大作用,对于自行车生产厂家不仅可以节省手工检测的时间,还提高了结果的可靠性。参考文献1王晓伟电动自行车自动检测系统及相关技
47、术研究D,杭州浙江大学,20032日本工业标准调查委员会JISD92012001BICYCLEMETHODOFBRAKINGTESTS,日本日本规格协会20013英国标准协会BS610211992CYCLESPECIFICATIONFORSAFTYREQUIREMENTSFORBICYCLESS英国英国标准协会19924武二永等电动自行车整车性能检测系统的设计J,机械科学与技术,2004,2367177195何信龙等PIC16F87X快速上手M,北京清华大学出版社,20026FANGCHENCHENGHOLTZMAN,JMWIRELESSINTELLIGENTATMNETWORKANDPROT
48、OCOLDESIGNFORFUTUREPERSONALCOMMUNICATIONSYSTEMS,IEEEJOURNALONSELECTEDAREASINCOMMUNICATIONS,VOLUME15,ISSUE7,SEPT1997PAGES128913077GOODMAN,DJTHEWIRELESSINTERNETPROMISESANDCHALLENGES,COMPUTER,VOLUME33,ISSUE7,JULY2000PAGES36418刘和平等PIC16F8XX单片机程序设计及应用M,北京北京航空航天大学出版社,20059PIC16F87X数据手册M北京北京航天航空大学出版社200710
49、黄继战。循环冗余校验软件在无线检测系统中的应用(J),机械与电子,200425(12)474811曾健平。多路地震波无线检测系统(J),湖南大学学报自然科学版,2000,27(6)6568。12罗翼,张宏伟编著,PIC单片机应用系统开发典型实例。中国电力出版社199231页致谢在毕业设计完成之际,我要特别感谢老师,从任务书、开题报告到本设计完成,老师给于我很大的帮助,耐心地讲解设计中的重点、难点,并搜集了大量资料。刘老师认真负责的态度,一丝不苟的工作作风,严谨细致的治学精神深深感染了我,使我受益匪浅,感触颇多。在此,谨向老师表示诚挚的感谢和敬意。同时我还要感谢同小组中伙伴们的热心帮助,帮我查找资料,互相讨论。商丘师范学院2014届本科毕业论文(设计)附录A硬件设计电路SCH截图