




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、单片机原理及应用课程设计 题 目 自行车里程计/速度计 二级学院 电子信息与电气工程学院班 级 姓 名 学 号 指导教师 设计时间 2010-6-212010-7-2 目录一、概述1、设计目的 12、课题简介 1 二、系统设计 1、总体设计方案 2 2、硬件部分简介 3 (a)at89c51芯片简介 3 (b)硬件设计 4 3、软件部分 5 (a)初始化程序6 (b)主程序8 (c)中断程序9 (d)里程、速度处理程序11 (e)显示子程序14 (f)延时子程序16 三、调试17 1、硬件调试 17 2、软件调试 17 四、操作说明19五、参考文献20六、心得体会21七、附录22 1、元器件清
2、单 22 2、整体原理图 23 3、完整程序 24 4、实物图 33 自行车里程计/速度计的设计一、 概述1、 设计目的本设计采用at89c51单片机作控制,利用霍尔元件等器件设计一个可用led数码管显示当前自行车行驶的距离及速度并具有超速报警功能的自行车里程/速度表,使其作为自行车的一种辅助工具,让自行车的功用更强大,给人们带来更多的方便。2、 课题简介 自行车被发明及使用到现在已有两百多年的历史,在这两百年间人类在不断的尝试与研发过程中,自行车发展的目的也从最早的代步工具转换成休闲娱乐的用途,随着生活水平的提高,人们希望自行车的功能更强大,而里程计/速度计正满足了这个需求。现在先进的里程/
3、速度计不仅能显示实时的速度和里程,还显示时间,甚至具有测量骑车人的心跳、显示骑车人热量消耗等功能。 由于时间有限,本设计完成的功能减为两个,即测量并通过led数码管进行动态显示当前的速度和里程,并在超速时发出警报。 要求达到的各项指标及实现方法如下:1. 利用霍尔传感器产生里程数的脉冲信号。2. 对脉冲信号进行计数。实现:利用单片机自带的计数器t1对霍尔传感器脉冲信号进行计数。3. 对数据进行处理,要求用led显示里程总数和即时速度。实现:利用软件编程,对数据进行处理得到需要的数值。最终实现目标:自行车的速度里程表具有里程、速度测试与显示功能,采用单片机作控制,显示电路可显示里程及速度。 1二
4、、系统设计1、总体设计方案 采用at89c51芯片,用霍尔元件将车轮的转速转换成电脉冲,经过处理后送入单片机。里程及速度的测量,是经过at89c51的定时/计数器测出总的脉冲数和每转一圈的时间,再经过单片机的计算得出,计算结果通过led显示器显示出来。传感器是获取自然或生产领域中信息的关键器件,是现代信息系统和各种设备不可缺少的信息采集工具。磁传感器是一种将磁学量信号转变为电信号的器件或装置。随着信息产业、工业自动化、医疗仪器等的飞速发展和计算机应用的普及,需要大量的传感器将被测或被控的非电信号转换成可与计算机兼容的电信号。作为输入信号,这就给磁传感器的快速发展提供了机遇,形成了磁传感器的产业
5、。其中最具代表的磁传感器就是霍尔传感器,在自动检测系统中,利用霍尔传感器测转数是一种最基本的测量工作。单片机是本次设计的核心部件,它是信号从采集到输出的桥梁,而且包括计算、定时、信息处理等功能当轮子每转一圈,通过开关型霍尔元件传感器采集到一个脉冲信号,并从引脚12即p3.2外部中断0端输入,传感器每获取一个脉冲信号即对系统提供一次计数中断。每次中断代表车轮转动一圈,中断数n轮圈的周长为l的乘积为里程值。计数器t1计算每转一圈所用的时间t,就可以计算出即时速度v。当里程键按下时,里程指示灯亮,led切换显示当前里程,与当速度键按下时,速度指示灯亮,led切换显示当前速度,若自行车超速,系统发出报
6、警信号,指示灯闪烁。里程数据自动记忆,也可用于电动自行车、摩托车、汽车等机动车仪表上。设计包括硬件、软件两部分,硬件电路包括at89c51单片机的外围电路以及led显示电路等,这里对硬件部分只做简单介绍,主要阐述的是软件部分的设计,包括数据初始化程序的设计、主程序的设计、处理子程序的设计、显示子程序的设计;最后针对仿真过程遇到的问题进行了具体说明与分析,对本次设计进行总结。 22、 硬件部分介绍(a)at89c51芯片简介 at89c51是一种带4k字节闪存可编程可擦除的只读存储器即为(fperomflash programmable and erasable read only memory
7、)的低电压、高性能cmos 8位微处理器,俗称单片机。管脚说明:vcc:供电电压。 gnd:接地。 p0口:p0口为一个8位漏级开路双向i/o口,每脚可吸收8ttl门电流。当p1口的管脚第一次写1时,被定义为高阻输入。p0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在fiash编程时,p0 口作为原码输入口,当fiash进行校验时,p0输出原码,此时p0外部必须被拉高。p1口:p1口是一个内部提供上拉电阻的8位双向i/o口,p1口缓冲器能接收输出4ttl门电流。p1口管脚写入1后,被内部上拉为高,可用作输入,p1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在f
8、lash编程和校验时,p1口作为第八位地址接收。 p2口:p2口为一个内部上拉电阻的8位双向i/o口,p2口缓冲器可接收,输出4个ttl门电流,当p2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。 p3口:p3口管脚是8个带内部上拉电阻的双向i/o口,可接收输出4个ttl门电流。p3口也可作为at89c51的一些特殊功能口,如下表所示: p3.0 rxd(串行输入口) p3.1 txd(串行输出口) p3.2 /int0(外部中断0) p3.3 /int1(外部中断1) p3.4 t0(记时器0外部输入) p3.5 t1(记时器1外部输入) p3.6 /wr(外部数据存储器写选通) p
9、3.7 /rd(外部数据存储器读选通) rst:复位输入。当振荡器复位器件时,要保持rst脚两个机器周期的高电平时间。 ale/prog:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在flash编程期间,此引脚用于输入编程脉冲。/psen:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/psen有效。但在访问外部数据存储器时,这两次有效的/psen信号将不出现。 3(b)硬件设计自行车里程计/速度计电路原理图见附录。本次设计信号的捕获采用的是霍尔传感器。霍尔器件具有许多优点,它们的结构牢固、体积小、重量轻、寿命长、安装方便、功耗小、频率高(可达1m
10、hz)、耐震动、不怕灰尘、油污、水汽及烟雾等的污染或腐蚀。霍尔线性器件的精度高、线性度好;霍尔开关器件无触点、无磨损、输出波形清晰、无抖动、无回跳、位置重复精度高。取用各种补偿和保护措施的霍尔器件工作温度范围宽,可达55150。xtal1和xtal2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,xtal2应不接。由于输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。p0口作为输出口用于显示历程状态和速度状态。由于p0口没有上拉电阻,因此作为输出口时要加上上拉电
11、阻来驱动led数码管的点亮。接于引脚10即p3.2、rxd的开关用于控制改变显示的方式,当开关闭合时,显示速度;开关打开时显示里程。第12脚即外部中断0用于对轮子圈数的计数输入,轮子每转一圈,霍尔传感器输出一个低电平脉冲。第十三脚即外部中断1用于控制定时器t1的启停,当输入为0时关闭定时器。此控制信号是将轮子圈数的计数脉冲经二分频后形成,这样,每次定时器t1的开启时间刚好为转一圈的时间,根据轮子的周长就可以计算出自行车的速度。p1.4口和p1.5口用于eeprom存储器24c01的存取控制。11脚输出用于超速时的报警,此时蜂鸣器发出声音,同时led灯闪烁。led数码管采用四位相连的共阴极数码管
12、,片选信号分别通过三极管接至21-24管脚即p2.0-p2.4口,从而实现里程和速度的动态显示。自行车的速度里程表的硬件电路设计是基础部分,它包括信号的捕获、放大、整形,单片机的计算处理,数码管的实时显示和单片机外围基本电路的设计,两大主要器件就是传感器和单片机。 43、 软件部分 模块化结构设计即是根据要求和硬件设计的结构,将整个系统的功能分成许多小的功能模块,再根据这些小的功能模块进行程序编写的过程。这样的设计方法,使得系统的整个功能和各部分的功能趋于明朗化。当系统出现问题,就可以根据功能设置找出问题的根源,从而更快地解决问题。所以说,在整个设计过程中,软件设计必须与硬件设计紧密地结合在一
13、起。软件设计包括初始化程序、主程序、行车过程中里程和速度计算子程序、延时子程序、中断服务子程序、显示子程序等。 系统软件总体流程图如图3.1所示 总体设计思路:首先进行初始化,选择车轮周长,p3.0是用于里程和速度切换的,低电平为显示速度,高电平为显示里程。根据p3.0的状态来决定显示内容,p3.0=1时,转到计算速度子程序并进行显示;p3.0=0时,转到计算里程子程序并进行显示。p1.0和p1.1口分别用于显示里程状态和速度状态。p1.2、p1.3、p1.6和p1.7口分别用于设置轮圈的大小,低电平有效。中断0用于对轮子圈数的计数输入,轮子每转一圈,霍尔传感器输出一个低电平脉冲。将根据里程寄
14、存器中的内容计算和判断出行驶里程数。中断1用于控制定时器t1的启/停,当输入为0时关闭定时器。此控制信号是将轮子圈数的计数经二分频后形成。这样,每次定时器t1的开启时间刚好为转一圈的时间,根据轮子的周长就可以计算出自行车的速度。初始化p3.0=1?计算里程显示里程计算速度显示速度n开始y 图 3.1 系统整体流程图 5主要内存单元及用处:50h:eeprom器件寻址字节存放单元51h:eeprom传送字节数存放单元30h:eeprom发送数据缓冲单元40h:eeprom读出数据存放单元0a0h:eeprom寻址字节写入0a1h:eeprom寻址字节读出62h:dptr计数扩展高8位6ch:定时
15、器t1计数扩展高8位6dh:定时器t1计数扩展高816位60h、61h、62h:里程计数单元68h、69h、6ah、6bh:存放自行车每圈时间数70h、71h、72h、73h:显示bcd码数据存放用11h-15h:存放被除数16h19h:存放除数(a)初始化程序初始化程序主要完成以下工作:将t1设为外部控制定时器方式;外部中断0及外部中断1设为边沿触发方式;将部分内存单元清0;设置轮子周长;开中断及定时器;将eeprom中的数据调入内存。clearmen:mov tmod,#90h ;t1为16位外部控制定时器 mov sp,#75h ;堆栈从75h开始 setb px0 ;外部中断0优先级为
16、1 setb it0 ;外部中断0用边沿触发 setb it1 ;外部中断1用边沿触发 clr a ;清a mov 20h,a ;清内存中特定单元 mov 6ch,a ;清内存中特定单元 mov 6dh,a ;清内存中特定单元 mov 70h,a ;清内存中特定单元 mov 71h,a ;清内存中特定单元 mov 72h,a ;清内存中特定单元 mov 73h,a ;清内存中特定单元 mov 60h,a ;清内存中特定单元 mov 61h,a ;清内存中特定单元 6 mov 62h,a ;清内存中特定单元 mov 63h,a ;清内存中特定单元 dec a ;a为0ffh mov 68h,a
17、;内存置数据0ffh mov 69h,a ;内存置数据0ffh mov 6ah,a ;内存置数据0ffh mov 6bh,a ;内存置数据0ffh mov p1,a ;p1口置1clear1: jb p1.2,key1 ;根据p1.2设置状态 mov 21h,#0fh ljmp clear2 ;转clear2key1: jb p1.3,key2 ;根据p1.3设置状态 mov 21h,#12h ljmp clear2key2: jb p1.6,key3 ;根据p1.6设置状态 mov 21h,#14h ljmp clear2key3: jb p1.7,err ;根据p1.7设置状态 mov 2
18、1h,#19hclear2: setb tr1 ;开定时器t1 setb ea ;开中断允许 setb ex0 ;开外中断0 setb et1 ;开定时中断t1 setb p3.1 ;关报警器 lcall viicread ;将eeprom中原里程数据调入内存 reterr: cpl p3.1 ;未设置车轮周长,开始报警 lcall dl5s ;延时5s ljmp clear1 ;重新初始化初始化具体过程:首先对p1.2口的内容进行查询,若p1.2=0,则说明p1.2口接的按钮被按下,即选择第一种车轮周长,同时将周长存入21h单元内;若p1.2=1,则第一个按钮没被按下,再对p1.3口的内容进
19、行查询,内容为0则将其周长值存入21h中,不为0则扫描p1.6,内容为0则将其周长值存入21h中,不为0则扫描p1.7,若p1.7为0则将其周长值存入21h中,不为0则说明没有选择车轮直径,此时开始报警,并调用延时子程序。接着再从p1.2口扫描,如此循环,直到有键按下后停止报警。 7初始化p1.2=1?np1.3=1?p1.6=1?p1.7=1?出错提示将车圈周长调入21h开中断,启动定时器nnnyyyy开报警器并延时关报警器图 3.2 初始化程序流程图(b)主程序主程序根据p3.0口的开关状态选择里程速度显示。start: lcall clearmen ;上电初始化start1: jb p3
20、.0,displays ;p3.0=1,显示里程 lcall displayv ;p3.0=0,显示速度start2: sjmp start1 ;循环 8初始化开始p3.0=1?调用里程处理子程序y调用速度处理子程序n 图3.3 主程序流程图(c)用外部中断0实现的里程计数程序定时中断是为满足定时或计数的需要而设置的。在单片机内部有两个定时/计数器,以对其中的计数结构进行计数的方法,来实现定时或计数功能。当结构发生计数溢出时,即表明定时时间或计数值已满,这时就以计数溢出信号作为中断请求,去置位一个溢出标志,作为单片机接受中断请求的标志。这种中断请求是在单片机芯片内部发生的,因此无须在芯片上设置
21、引入端。定时/计数器控制寄存器tcon是8位寄存器,地址为88h,可以位寻址。其高4位用于定时/计数器中断控制,低4位借给外部中断,用做中断标志和触发方式选择位。本设计采用定时中断,对自行车的里程和速度进行计数。intex0: push acc ;累加器堆栈保护 push psw ;状态字堆栈保护 inc 60h ;圈数加1 clr a ;清a cjne a,60h,intex0out ;计数器没溢出转intex0out inc 61h ;溢出进位(61h加1) cjne a,61h,intex0out ;计数器没溢出转intex0out inc 62h ;溢出进位(62h加1)intex0o
22、ut:lcall viicwrite ;里程数据存入eeprom setb ex1 ;开外部中断1 pop psw ;状态字恢复 pop acc ;累加器恢复 9 reti ;中断返回;每转一圈时间计数处理程序,每圈时间放在68h6bh单元中intex1: push acc ;累加器堆栈保护 push psw ;状态字堆栈保护 clr ex1 ;关外部中断1 jnb 00h,intex11 ;溢出标志为0转intex11 mov tl1,#0ffh ;溢出时计时单元赋#0ffh(显示速度为零) mov th1,#0ffh mov 6ch,#0ffh mov 6dh,#0ffhintex11:
23、mov 68h,tl1 ;将时间计数值移入暂存单元68h-6bh mov 69h,th1 mov 6ah,6ch mov 6bh,6dh clr a ;清a mov tl1,a ;计数单元置零 mov th1,a mov 6ch,a mov 6dh,a clr 00h ;清溢出标志 pop psw ;状态字堆栈恢复 pop acc ;累加器堆栈恢复 reti ;中断返回;t1计数器中断服务程序。(计数器t1由外部中断1输入控制,当为高电平时计时开始)intt1: push acc ; 累加器堆栈保护 push psw ;状态字堆栈保护 inc 6ch ;6c计时单元加1 mov a,6ch ;
24、6c单元内容移入a jnz intt11 ;不为0,转intt11 inc 6dh ;进位,6dh单元加1 mov a,6dh ;移入a jnz intt11 ;不为0,转intt11 setb 00h ;计时器溢出,置溢出标志位intt11: pop psw ;状态字堆栈恢复 pop acc ;累加器堆栈恢复 reti ;中断返回 10 关中断开始现场保护开中断中断处理关中断现场恢复开中断中断返回图 3.4 中断流程图(d)里程、速度处理程序里程处理程序外中断0服务程序用于对单片机p3.2口输入的圈脉冲进行计数,为十六进制计数器。60h为低位,62h为高位。每次计数一次后,对里程数据进行一次
25、存储操作。当车轮每转一圈,通过霍尔元件将脉冲数输入单片机内,通过计数器计出脉冲数,再用乘法子程序算出里程数。sss: mov 19h,#64h ;除数最高位赋值 mov 18h,#00h ;除数赋值 mov 17h,#00h ; 除数赋值 mov 16h,#00h ; 除数赋值 mov 11h,#00h ; 被除数赋值 mov 12h,#00h ; 被除数赋值 mov 13h,62h ; 被除数赋值 mov 14h,61h ; 被除数赋值 mov 15h,60h ; 被除数赋值 lcall divst ;调除法程序 11 lcall bcdst ; 跳到二进制转bcd码程序 mov a,25h
26、 ;将25h内容移入a anl a,#0fh ; 高四位为0 mov 70h,a ;移入70h mov a,25h ; 将25h内容移入a swap a ;交换高低字节 anl a,#0fh ; 高四位为0 mov 71h,a ; 移入71h mov a,24h ; 将24h内容移入a anl a,#0fh ; 高四位为0 mov 72h,a ; 移入72h mov a,24h ; 将24h内容移入a swap a ; 交换高低字节 anl a,#0fh ; 高四位为0 mov 73h,a ; 移入73h ret点亮里程指示灯开始将车圈数转换成里程显示里程值返回图 3.5 里程处理程序流程图速
27、度处理程序外中断1服务程序用于处理轮子转动一圈后的计时数据。当标志位(00h)为1时,计数溢出,放入最大时间值(为#0ffh);当标志位为0时,将计数单元(tl1、th1、6ch、6dh)的值放入68h6bh单元。定时器计出每转一圈所用的时间,用自行车车轮的周长除以时间就得出自行车的速度。vvv: mov 18h,68h ;除数赋值 mov 17h,69h ;除数赋值mov 16h,6ah ;除数赋值 12mov 11h,#00h ;被除数赋值mov 12h,#00h ;被除数赋值mov 13h,#36h ;被除数赋值mov 14h,#0eeh ;被除数赋值mov 15h,#80h ;被除数赋
28、值lcall divst ;调除法程序mov 14h,#00h ;舍去一位lcall bcdst ;跳到二进制转bcd码程序mov a,25h ;以下将速度值放入显示单元anl a,#0fh ;高四位为0mov 70h,a ;放入70h内mov a,25h ;再取数swap a ;高低字节交换anl a,#0fh ;高四位为0mov 71h,a ;放入71h内mov 72h,#00h ;72h为0mov 73h,#00h ;73h为0ret ;子程序返回开始开速度指示灯计算速度报警显示速度ny返回p3.0=1? p3.0=1?22速?图 3.6速度处理程序流程图 13(e)显示子程序采用动态扫
29、描显示接口电路,动态显示接口电路是把所有显示器的8个笔划段a-h同名端连在一起,而每一个显示器的公共极com各自独立地受i/o线控制。cpu向字段输出口送出字型码时,所有显示器接收到相同的字型码,但究竟是哪个显示器亮,则取决于com端。可以采用分时的方法,轮流控制各个显示器的com端,使各个显示器轮流点亮。在轮流点亮扫描过程中,每位显示器的点亮时间是极为短暂的(约1ms),由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位显示器并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感。本设计p2.0、p2.1、p2.2、p2.3信号一起组成位选通的位选信号,
30、p0.0p0.7信号一起组成段码选通的段选信号,通过软件编程,先把所要显示的数据放入存储单元,然后把数据送入段选通对应的地址,再选通某一个led,逐步完成四个led的显示。;里程显示控制程序displays:setb p1.0 ;点亮led1 clr p1.1 ;关闭速度指示灯 setb p3.7 lcall sss ;将圈数转为公里数 lcall display ;显示公里数据 ljmp start1 ;跳回start1;速度显示程序displayv:clr p1.0 ;关闭led1(里程指示灯) setb p1.1 ;点亮led2(速度指示灯) clr p3.7 lcall vvv ;每圈
31、时间换算为km/h程序 mov a,71h ;将十位数(bcd码)值植入a subb a,#04h ;与预定报警值比较 jnc waring ;时速超过40时报警 setb p3.1 ;关报警灯v1: lcall display ;显亮一次 ret ;子程序返回display: mov r1,#70h ;显示单元首址 mov r2,#0feh ;扫描字play: mov a,r2 ;扫描字送入a mov p2,a ;放到端口p2 mov a,r1 ;取显示数据 anl a,#0fh ;高四位清0 mov dptr,#tab ;取段码表首址 movc a,a+dptr ;查显示数据对应段码 14
32、 mov p0,a ;段码输出 lcall dl1ms ;点亮1ms inc r1 ;指向下一显示数据地址 mov a,r2 ;取扫描字 jnb acc.3,endout ;已扫描到第四位,转endout退出 rl a ;循环左移 mov r2,a ;放回r2 ajmp play ;转play循环endout: setb p2.0 ;关扫描 setb p2.1 ;关扫描 setb p2.2 ;关扫描 setb p2.3 ;关扫描 ret ;子程序返回;共阴极段码表tab: db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h db 7fh,6fh,77h,7ch,39h,5eh
33、,79h,71h db 00h 15开始显示单元首址取显示数据送段码到p0口取段码表首址调用延时送位选到p2口4位显示结束返回yn修改显示单元地址求下一位位选码图 3.5 显示程序流程图(f)延时子程序;1ms延时程序 利用循环实现延时dl1ms: mov r6,#14hdl1: mov r7,#19hdl2: djnz r7,dl2 ;循环19h次 djnz r6,dl1 ;循环14h次 ret;出错闪烁利用延时255msdl5s: mov r5,#0ffh dl3: lcall dl1ms ;调用1ms延时 djnz r5,dl3 ;循环255次 ret 16三、调试1.硬件调试硬件调试时
34、,我们首先检查了接线,对照电路原理图,确保准确无误。其次是检查各个焊点是否有虚焊的情况,检查无误后,接通经稳压后的5v电源。硬件的修改可在元器件参数方面调整,如电阻的阻值等。2.软件调试先用keil软件输入完整的程序,进行编译。首先,新建一个项目选择at89c51,新建一个文件,将程序输入,输完后保存,保存时需加后缀名.asm。然后将文件添加到新建的工程下。进行检错和编译,窗口如图3.2所示。 图 3.1 keil编译窗口编译无误后即可运行,运行时可从peripherals中调出输出口p0p3来观察输出情况。运行时窗口如图3.1所示。 图 3.2 keil运行窗口 17接着再使用proteus
35、仿真软件进行仿真。首先新建一个文件,选择所需的元件并排列好,根据电路原理图进行布线。当完成原理图布线后,利用proteus isis编辑环境所提供的电器规则检查命令对设计进行检查,并根据系统提供的错误检查报告修改原理图。直到通过电器规则检查为止。然后在keil中生成hex文件,双击at89c51芯片,将完整的程序灌入芯片,单击左下角的开始箭头即可开始模拟仿真。在仿真过程中遇到过一些问题,针对这些问题做了些软件方面的调整。 刚开始仿真时,p0口是灰色的,数码管没有点亮。经检查是由于p0口内部没有上拉电阻,因此,必须另外加上,上拉电阻一段接p0口,另一端直接接到电源的正集。接上后数码管点亮,但显示
36、的是乱码经过仔细的检查,发现了程序中的错误,硬件中选用的是共阴极数码管,而程序中错用了共阳极的段码表,从而造成了应该点亮的部分没亮,而不该点亮的部分反而亮了的错误情况。 18四、操作说明 本设计为自行车里程计/速度计,实现了里程速度计的基本功能。接通电源后,由于未选择车轮周长,蜂鸣器报警提示,同时led灯d3闪烁,直到有键按下。当按下p1.2口所接开关sw2时选择车轮周长1,按下p1.3口所接开关sw3时选择车轮周长2,按下p1.6口所接开关sw4时选择车轮周长3,p1.7口所接开关sw5时选择车轮周长4,选择周长后,每按下开关sw6一次表示车轮转了一圈,此时数码管显示当前的里程值,此时若按下
37、开关sw7则数码管显示当前的速度值,当超速时蜂鸣器报警。 19五、参考文献1单片机原理及应用技术 范力旻 主编 电子工业出版社2单片机原理及其接口技术(第二版) 胡汗才编著 北京大学出版社351系列单片机设计实列 楼然苗 李光飞编著 北航出版社4单片微机测控系统设计大全 王福瑞编著 北航出版社5例说8051 张义和 编著 人民邮电出版社6传感器应用技术141例松井邦彦, 梁瑞林 编著 科学出版社,7单片机设计教程 孙惠芹 编著 电子工业出版社8单片机及应用系统设计原理与实践 刘海成编著 北京航空航天大学出版社9单片机原理与应用系统设计 欧伟明 编著 电子工业出版社10单片机原理与应用实例仿真
38、李泉溪主编 北京航空航天大学出版社11单片机原理与应用技术实践卢胜利 编著 机械工业出版社12单片机实践应用与技术 马长林,陈怡,程利民 编著 清华大学出版社 20六、心得体会 通过两周的时间,我们较成功的完成了这次课程设计。 刚开始选课题的时候,对各个课题都不了解,难易程度也不太清楚,前面选的几个课题有的比较简单,有的又和其他的组冲突,所以课题定的比较晚,后来感觉对这个方面还是比较感兴趣的,而且它的实际用途也比较大。通过查阅一些资料,我们确定了总体方案。接下来就是采购元器件了,因为以前没买过,没什么经验,买的时候也没仔细看,回来后发现元器件都比较旧,特别是89c51芯片,引脚都发黑了,只好去换了一个。接下来的几天就是焊接电路了,由于我们选的电路比较复杂,所以焊接也是一项大工程。开始
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025房地产交易合同范本
- 2025合作伙伴咖啡店合作合同
- 2025国内买卖合同索赔期
- 医学病理学知识点习题及解答
- 2025标准合同模板:商业店铺授权经营管理协议样本
- 我的小狗宠物成长记写物(4篇)
- 农村电力灌溉系统安装合同书
- 个人房屋改造装修合同范本
- 历史文化与考古学的案例分析题
- 2024-2025学年西北四省(陕西山西青海宁夏)高三下学期第一次联考地理试题(解析版)
- 农场转让合同协议书模板
- 2024-2025学年人教版数学一年级下学期期末模拟试卷(含答案)
- 2025-2030中国共享单车服务行业市场现状供需分析及投资评估规划分析研究报告
- 安徽省合肥一中2025届高三最后一卷英语试题及答案
- 有关工厂实习心得体会模版
- 2025年法律职业资格(客观题)重点考点大全
- 2025年组织行为学专业考试试题及答案
- 不寐的中医护理常规
- 2024年直播电商高质量发展报告
- 创新设计思维
- 客诉处理培训课件
评论
0/150
提交评论