电动自行车数显车头设计说明书Word下载.docx

上传人:b****2 文档编号:4507358 上传时间:2023-05-03 格式:DOCX 页数:26 大小:453.25KB
下载 相关 举报
电动自行车数显车头设计说明书Word下载.docx_第1页
第1页 / 共26页
电动自行车数显车头设计说明书Word下载.docx_第2页
第2页 / 共26页
电动自行车数显车头设计说明书Word下载.docx_第3页
第3页 / 共26页
电动自行车数显车头设计说明书Word下载.docx_第4页
第4页 / 共26页
电动自行车数显车头设计说明书Word下载.docx_第5页
第5页 / 共26页
电动自行车数显车头设计说明书Word下载.docx_第6页
第6页 / 共26页
电动自行车数显车头设计说明书Word下载.docx_第7页
第7页 / 共26页
电动自行车数显车头设计说明书Word下载.docx_第8页
第8页 / 共26页
电动自行车数显车头设计说明书Word下载.docx_第9页
第9页 / 共26页
电动自行车数显车头设计说明书Word下载.docx_第10页
第10页 / 共26页
电动自行车数显车头设计说明书Word下载.docx_第11页
第11页 / 共26页
电动自行车数显车头设计说明书Word下载.docx_第12页
第12页 / 共26页
电动自行车数显车头设计说明书Word下载.docx_第13页
第13页 / 共26页
电动自行车数显车头设计说明书Word下载.docx_第14页
第14页 / 共26页
电动自行车数显车头设计说明书Word下载.docx_第15页
第15页 / 共26页
电动自行车数显车头设计说明书Word下载.docx_第16页
第16页 / 共26页
电动自行车数显车头设计说明书Word下载.docx_第17页
第17页 / 共26页
电动自行车数显车头设计说明书Word下载.docx_第18页
第18页 / 共26页
电动自行车数显车头设计说明书Word下载.docx_第19页
第19页 / 共26页
电动自行车数显车头设计说明书Word下载.docx_第20页
第20页 / 共26页
亲,该文档总共26页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

电动自行车数显车头设计说明书Word下载.docx

《电动自行车数显车头设计说明书Word下载.docx》由会员分享,可在线阅读,更多相关《电动自行车数显车头设计说明书Word下载.docx(26页珍藏版)》请在冰点文库上搜索。

电动自行车数显车头设计说明书Word下载.docx

电路板设计

10.1前

制样

试验鉴定

工艺制定

12.30前

三、项目进度及人员安排:

2002年8月1日

1/*需求分析-接口特性(8月3日)

速度信号的电气特性

传感器:

电压型霍耳元件,5V电源,低电位有效。

测试方法:

用现有邮电车的电路

拔下前轮电机线,接到稳压稳流电源。

装上后一组电池,开启邮政车电源。

用示波器测量传感器的输出波形。

调整稳压稳流电源,使车头速度显示为8Km/h,记录示波器的波形,调整速度为12Km/h、18Km/h、24Km/h、28Km/h,记录示波器输出波形。

测试结果:

表1.1

速度(Km/h)

波口宽度(ms)

波底宽度(ms)

8

4

2.4

12

3.8

2

16

3

1.5

20

2.2

1.1

24

1

28

0.8

结论:

信号检测防抖动延时时间取300us可满足要求。

2/*需求分析-总体设计-系统框图、资源分配、说明书(8月9日)

2.1总结构框图、McuI/O资源分配(图2.1)

图2.1

2.2软件总框图

2.2.1主程序

2.2.2读/写子程序

2.2.3中断服务程序

T0中断服务:

里程显示/喇叭信号、转向灯信号产生。

主程序默认调用

图2.5

T1中断服务:

INT0中断服务:

2.3系统资源细分

2.3.1端口资源:

表2.1:

功能

端口

地址

EEPROM数据输入/输出(SDA)

P3.0

B0H

EEPROM时钟输入(SCL)

P3.1

B1H

里程显示数据第3位

P1.6

96H

里程显示数据第2位

P1.5

95H

里程显示数据第1位

P1.4

94H

里程显示数据第0位

P1.3

93H

里程显示选通第1位

P1.2

92H

里程显示选通第0位

P1.1

91H

速度显示数据第2位

P3.7

B7H

速度显示数据第1位

P1.7

97H

速度显示数据第0位

P1.0

90H

转向信号输出

P3.4

B4H

清零/喇叭信号输出

P3.3

B3H

小数点显示控制

P3.5

B5H

速度传感器信号输入(INT0)

P3.2

B2H

2.3.2中断资源

参考2.2.3

2.3.3工作寄存器/RAM资源(*需在具体设计时进行优化)

代号

特征

说明

作用域

STATM_RD

24H.0(20H)

读标签

读写操作

STATM_WR

24H.1(21H)

写标签

PWR

24H.2(22H)

伪写标签

SCL0

24H.3(23H)

SCL(P3.1)镜象

COUNT

24H.4(24H)

辅助读写标签

表2.2:

续表2.2:

PCOUNT

R5

REG

基本读写操作时钟序号

N

R6

基本读写操作序号

M

R7

基本读写操作累计序号

OK

24H.5(25H)

读写结束标签

WR

24H.6(26H)

内部读写标签

WRB(0~4)

40H~44H

5个连续字节

读写数据区

WR0

24H.7(27H)

内部辅助读写标签

WRB0

20H(00~07H)

1个字节,可位寻址

读写缓冲字节

DELAY(0~1)

Rj、Rj+1

2个连续的REG.

DELAY计数器

清零确认

SC(0~1)

21H、22H(08H~17H)

2个连续可位寻址字节

数显、方向、喇叭软计数器

T1服务

F_OPEN

25H.0(28H)

里程显示转换标签

DISF(1~2)

45H、46H

2个连续字节

显示缓冲

SEL0

25H.1(29H)

传感器信号标签

SCOUNT(0~1)

47H、48H

速度计算计数器

CD(0~3)

50H~53H

4个连续字节

存储本次里程

PDOWN

25H.2(2AH)

掉电标签

3/*需求分析-总体设计-安装尺寸/布局规划(9月20日)

说明:

数码LED采用40*14mm,4位带小数点共阴动态显示型。

其他指示灯采用5mm高亮度LED。

面板和电路板装配后总厚度不大于13mm。

面板的尺寸/布局如图3.1及图3.2所示。

图3.1面板尺寸(背面)

35

36

37

34

33

32

31

18

22

15

9

6

电压V

速度Km/h

总里程/当前里程

EUROBIKE

欠压

过流

电源

右转

左转

图3.2面板布局(正面)

/***以下对外保密!

***/

4/*具体设计-硬件设计

4.1电源电路(图4.1)

5V电源提供2051及其他TTL电路的电源,C10,D22在掉电时提供对5V的延时,使2051有足够的时间保存里程。

5V*电源提供传感器电源,并作为掉电判断辅助电源,即系统检测到该电源为低电位时置位掉电标签,保存里程。

D22防止C10在掉电时反向放电过快。

4.2MCU(U1)相关电路(图4.2)

4.2.1里程显示:

由MCU向七段BCD译码器(LS48)顺序依次提供4个BCD里程码,并提供2线选通控制,通过2-4线译码器(LS156)产生4个选通信号,依次选通相应的4位里程码,实现里程的动态分时显示。

P3.5(U1第9脚)在显示当前里程时,控制数码管第二位小数点的显示。

4.2.2速度显示:

MCU按计算的速度值输出3位二进制码,从000~111表示8个档位输出给U4(LS156),U4接成3-8线译码器,可实现D1~D7(LED)随档位的增加依次点亮。

4.2.3速度信号的输入:

速度信号通过INT0(U1第6脚)输入给MCU,J2是霍耳传感器的接口,车轮每转一圈传感器就给INT0一个低电平,触发MCU中断。

要求低电平的宽度不小于300uS。

4.2.4掉电判断:

R1确保掉电时INT0脚为低电位,触发INT0中断后,检测U1第12脚电平,如也为低电平则置位掉电标签。

4.2.5里程存储电路:

由P3.1(U1第3脚)提供同步时钟信号,P3.0(U1第2脚)作为数据的输入输出及命令的输出串行I/O。

时钟信号由T0中断产生。

U2的1~3脚接地,将U2的硬地址置为000。

选通则通过P3.0发出的选通命令来实现。

4.2.6其他电路:

里程清零/喇叭电路:

启动时P3.3(U1第7脚)作为清零的判断端口,如在上电前按下AN,上电1秒后放开则里程清零。

之后P3.3复用为喇叭音频信号的输出,这时禁止按下AN。

AN应内置在电路板上不易触到之处。

J3为喇叭按键把接口。

Q1为喇叭音频信号放大器。

J4为喇叭接口。

转向灯信号电路:

由P3.4(U1第8脚)输出频率约0.8~1Hz的方波,经Q2放大。

J5为转向开关接口,J6为转向灯接口,D8/D9(LED)为面板转向指示灯。

复位电路:

C2/R3构成上电自动复位电路。

4.3电量指示电路:

图4.3

12V、36V电源由9芯接口提供。

R17~R24构成分压基准电路,分别提供7.75V/8V/8.25V/8.5V/8.75V/9V/9.25V的基准电压。

分别对应电源电压:

31/32/33/34/35/36/37V。

W1按如下方法调整:

电源电压调到36.0V,调整W1使分压输出为9.0V即可。

4.4接口及其他电路:

图4.4所示。

J1为9芯线接口(即与控制主板PT0236、SQ0236-D/T的接口);

J7为尾灯接口;

J12为转把接口,1脚为电源,3脚输出;

J13、J14为刹把接口,刹车时输出高电位;

J10、J11为大灯和大灯开关接口;

D19、D20、D21分别为欠压、过流及电源指示灯。

5/*具体设计-软件设计

5.1读写子程序(READ_WRITE)

5.1.1AT24C02的特性及读写操作

AT24C02是2K位(即256字节)电可擦写串行只读存储器(EEPROM),共8个引脚。

5.1.1.1引脚说明:

1~3:

A0~A2:

存储器的硬件地址设置引脚,由外部直接接高电位或低电位来设置,可选择000~111八个地址中的一个,当MCU读写命令中的串行地址和芯片硬件地址相符时可选通该芯片,本应用中将芯片硬件地址设置为000。

4脚:

地。

5脚:

SDA:

串行数据输入/输出,作为输出时为集电极开路(OC)。

6脚:

SCL:

串行时钟输入,芯片只在上升沿可接受数据,在下降沿可输出数据。

7脚:

WP:

写保护脚,接高电位时保护,低电位时可正常读写,本应用中WP硬接地,不设保护状态。

8脚:

电源脚。

5.1.1.2参数要求:

表5.1

参数说明

5V电源电压时

单位

最小值

最大值

fSCL

时钟频率

400

kHz

tLOW

时钟方波低电位的宽度

1.2

us

tHIGH

时钟方波高电位的宽度

0.6

tBUF

上一数据结束到下一数据开始的空闲时间

tHD.STA

开始信号保持时间

tSU.STA

开始信号设置时间

tSU.STO

结束信号设置时间

tWR

在写系列的有效结束信号之后,芯片的内部写操作时间

10

ms

Endurance

在5V25℃下的擦写次数

1M

5.1.1.3芯片读写操作

时钟和数据的传输:

SDA脚常需外部元件上拉到高电位。

本应用中由于MCU的I/O有内部上拉电阻,所以省去外部的上拉元件。

SDA脚上的数据只能在SCL为低电位期间改变(参考图5.1/5.2数据输入时序)。

数据在SCL为高电位时改变将引发一个开始或结束信号(如下定义)。

开始信号:

在SCL为高电位时,SDA由高电位跳变到低电位便会产生一个开始信号,在任何操作之前必须要先产生一个有效的开始信号(图5.2)。

结束信号:

在SCL为高电位时,SDA由低电位跳变到高电位便会产生一个结束信号,在一个读系列之后产生一个结束信号(由外部产生)芯片将被置为低功耗模式(图5.2)。

应答信号(ACK):

所有的串行输入输出数据或地址都是以8位字节为单位的。

每接收一个字节EEPROM将发回一个“0”信号作为应答,这个过程在第9个时钟周期完成(图5.2)。

 

低功耗模式:

在上电时以及在接收到结束信号并完成所有内部操作之后EEPROM转入低功耗模式。

芯片寻址:

在读写操作前必须先向EEPROM发送一个开始信号及8位的寻址字节(图5.3)以选通芯片。

寻址字节包括:

前四位固定的“1”、“0”系列(图5.3示)(对所有AT24CXX系列芯片都是一样的);

接下来三位是与芯片硬地址A2、A1、A0相对应的寻址地址位;

第八位是读/写选择位,“1”为读,“0”为写。

发送寻址字节后,如寻址地址与硬地址相符时,EEPROM将返回一个“0”信号作为应答(ACK);

如果地址不符,EEPROM转入低功耗模式。

写操作:

字节写操作:

MCU在发送了寻址字节并收到EEPROM的ACK信号后,再向EEPROM发送数据要存储的地址(8位),EEPROM将再次返回“0”作为应答(ACK),并按时钟接受后面的8位数据,之后又返回一个ACK信号,然后MCU产生一个停止信号,完成本次字节写操作。

这时EEPROM进入内部写周期tWR(图5.2)。

tWR完成前EEPROM不会对任何输入作出响应。

(图5.4)

段页写操作:

该EEPROM允许不大于8字节的段页写操作。

初始化操作和字节写操作的相同。

但在第一个数据输入并收到ACK后MCU不产生停止信号,而是继续向EEPROM发送1~7个字节,在每收到一个字节后EEPROM依然会返回一个ACK,段页写操作必须由MCU产生停止信号来终止。

在接收到每一数据后,数据地址自动加一(图5.5)。

应答信号(ACK)的检测:

由于EEPROM在进行内部写操作时(tWR期间)将不对外部输入作出响应,为了可靠地进行读写,MCU必须不断发送开始信号及寻址字节,并在第9时钟周期检测ACK,直到EEPROM完成内部写操作后,才会返回ACK,MCU才可以进行下一步的读写操作。

读操作:

读操作的初始化与写操作一样,只是寻址字节的第八位,即读写选择位要置为“1”。

有3种读操作:

当前地址读操作、指定地址读操作、系列读操作。

当前地址读操作:

当前数据指针为最后一次读写操作的数据指针加1。

除非掉电,否则该指针保持有效。

但在数据地址出界时该指针将转回到开头,这时写操作将复盖前面的数据。

当MCU发送读初始化操作后,EEPROM将返回ACK信号,并接着串行输出一个当前地址内的数据。

之后MCU不需要产生ACK而是产生一个结束信号。

(图5.6)

指定地址读:

指定地址读需要一个“伪”写操作来输入指定的地址,即在开始信号后输入寻址字节(第八位设置为“写”),再输入数据地址字节(即指定地址)。

MCU收到ACK信号之后进行一次当前地址读操作即可读指定地址数据。

(图5.7)

系列读操作:

系列读可以顺序读出一系列的数据,可以用当前地址读或指定地址读方式。

当MCU接收到一字节数据后,将给EEPROM发送一个ACK信号,EEPROM则继续增加地址指针并串行输出数据,到达地址上限后指针回零,系列读仍可继续。

如果在接收到数据后MCU不返回ACK,并在下一时钟周期产生一个停止信号,则终止系列读操作。

(图5.8)

*需要注意:

哪些ACK由EEPROM产生哪些由MCU产生。

5.1.2读写程序设计思想

根据要求总里程只需要3个字节以BCD码的方式存储,前1字节存储小数点后的1、2位,后2字节分别存储小数点前的2、1、4、3位。

读出的里程或要写入的里程均放在读写数据区WRB(0~4)的后3位即42~44H(参考表2.2)。

40H、41H则用来存放寻址字节或数据地址字节。

(表5.1)

表5.1读写数据区的存储结构:

SCL系列

5

7

RAM地址

WRB(0):

40H

A2

A1

A0

R/W

寻址字节

WRB

(1):

41H

X

数据地址字节

WRB

(2):

42H

小数1、2位

WRB(3):

43H

整数2、1位

WRB(4):

44H

整数4、3位

程序设一缓冲字节WRB0,保存当前要发送或接收的WRB(i)。

设置3个标签:

STATM_RD:

当前地址系列读操作标签

STATM_WR:

段页写操作标签

PWR:

“伪”写操作标签

调用读写子程序(READ_WRITE)前预设这3个标签以实现相应的功能。

如指定地址读实现如下:

SETBPWR

SETBSTATM_WR

ACALLREAD_WRITE

SETBSTATM_RD

40H、41H中的内容在子程序中根据标签赋值。

子程序返回前将这3个标签清零。

SCL的产生通过T0中断服务实现,因T0中断服务程序有多个功能块,必须根据相关标签确定功能块入口(参考图2.4)。

相关标签的设置及T0的初始化、开启均在READ_WRITE子程序中进行。

中断的定时取SCL周期的1/4,每2次中断SCL进行一次取反操作,如图5.9示:

第1次中断,SCL为低电位,可对SDA引脚进行读/写操作;

第2次中断对SCL引脚取反;

第3次中断SCL为高电位,可对SDA取反产生开始或停止信号。

第4次中断再对SCL取反。

根据读写时序特性,定义基本读写操作:

最多包含10个SCL周期,并依次编号为0~9SCL周期,第0周期只产生开始或结束信号,第1~8周期对SDA引脚读或写,第9周期对ACK检测或发送ACK。

一次READ_WRITE的调用是基本读写操作的多次重复,只有第1个基本读写操作包含10个SCL周期,最后一个基本读写操作可能只包含第0SCL周期(即只产生一个结束信号),中间的基本读写操作只包含第1~9SCL周期。

T0中断中用PCOUNT(取0~9)对一个基本操作中的SCL进行序号标识;

用N对基本读写操作进行序号标识;

用M累计基本操作总次数。

STATM_RD、STATM_WR、PWR、SCL0、COUNT、PCOUNT、N、M唯一决定本次中断要执行的动作。

5.1.3读写子程序流程图(图5.10)

5.1.4读写中断服务程序流程图(图5.11)

5.2转向灯、喇叭信号发生及数字显示程序(T1中断服务)

5.2.1程序设计思想

T1中断服务程序定时向喇叭信号端口(P3.3)、转向信号端口(P3.4)发送占空比50%的方波信号,其中喇叭信号频率取值在800~1000Hz之间,转向信号频率取值约0.6~0.8Hz,分别符合人的听觉、视觉一般要求。

数字显示采用动态显示方式,以节省MCU端口。

P1.3~P1.6提供当前需要显示的一位BCD码,P1.1、P1.2选通信号指定该BCD码需要在第几位(即数码管的第0~3位)显示,P3.5控制小数点的显示。

从0~3位依次显示一个完整的里程数据为一个动态显示周期,其倒数为动态显示频率,该频率取值在60~100Hz之间。

程序采用软、硬计数器相结合的方法将上述3个功能集成到一起。

T1计数器的重装值按喇叭信号频率的取值要求计算,转向信号的周期取喇叭信号周期适当的整数倍。

在T1中断服务中再设置一个两字节软计数器SC

(1)、SC(0),中断发生一次P3.3求反一次,产生喇叭信号,同时软计数器加一,当软计数器的值等于设计的整数倍时,P3.4求反一次,产生转向信号,同时软计数器清零。

在主程序中预先将要显示的里程数据存储到显示缓冲RAM中(DISF

(2)、DISF

(1)),根据P1.2、P1.1的选通值00、01、10、11分别往P1.3~P1.6输送DISF

(1)的低四位、高四位、DISF

(2)的低四位、高四位。

根据显示频率的要求,P1.2、P1.1可直接取值软计数器的恰当的相邻两位,如取SC

(1).3、SC

(1).2就可满足要求。

小数点的显示由标签F_OPEN控制,该标签为1时显示小数点,否则不显示。

由此实现了里程的动态显示。

5.2.2T1服务程序框图(图5.12)

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 文学研究

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2