




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、黄河科技学院单片机设计(论文)黄河科技学院课程设计任务书工学院机械系机械设计制造及其自动化专业 x级工班学号 xxxx 姓名 xxxx指 导教师 xxxx题目: AT89C51数字频率计设计课程:单片机课程设计课程设计时间2013年10 月28 日 至2013年11月10日 共2周课程设计工作内容与基本要求(设计要求、设计任务、工作计划、所需相关 资料)(纸张不够可加页)基本要求:利用单片机AT89C51设计数字频率计,能将所测量的频率在 LED显示器上显示。 创新设计:可采用不同方法进行频率测量;具有键盘操作功能等。2 .设计任务与要求2.1 系统硬件电路设计根据该系统设计的功能要求选择所用
2、元器件,设计硬件电路。要求用 Proteus绘制 整个系统电路原理图。2.2 软件设计根据该系统要求的功能进行软件设计,绘制整个系统的软件流程图;根据流程图编 写程序并汇编调试通过;列出软件清单,软件清单要求逐条加以注释。2.3 Proteus 仿真用Proteus对系统软硬件进行仿真调试并通过。2.4 编写设计说明书内容包括任务书、设计方案分析、硬件部分设计、软件部分设计、调试结果整理分析、设计调试的心得体会等,字数不少于5000字;硬件部分设计要绘制整个系统电路原理图,对各部分电路设计原理做出说明;软件设计部分要(用 visio2002画图 软件)绘制整个系统及各部分的软件流程图,列出程序
3、清单,逐条加以注释,并注 明各程序功能块的功能。3 .工作计划序号设计内容所用时间1布置任务及调研4天3制作与调试8天4撰写设计报告书2天合计14天4 .主要参考资料单片机课程设计指导书皮大能北京理工大学出版社2012.78051单片机实践与应用吴金戎清华大学出版社2003.8单片机技术基础教程与实践夏路易电子工业出版社2008.1单片机原理及应用张毅刚高等教育出版社2012.11基于Proteus的单片机系统设计与仿真实例蒋辉平机械工业出版社2007.7指导老师签字:日期:-6 -目 录1 绪论 .11.1 课题背景及目的11.2 国内外研究状况 11.3 课题研究方法 12测量方案的论证与
4、分析 .22.1 测量方法的分析 .22.1.1 直接测频法 .22.1.2 间接测量法(测周期法) .22.1.3 直接与间接相结合的方法 .32.2 硬件电路设计方案分析 .32.2.1 中小规模数字集成电路 .32.2.2 单片机 AT89C51 43基于单片机的数字频率计的设计 .53.1 系统硬件的构成.73.1.1 AT89C51单片机及其引脚说明 83.1.2 信号输入放大和整形电路 93.1.3 时基信号产生电路 103.2 数字频率计软件设计 .113.2.1 主程序设计 .113.2.2 子程序设计.124系统调试 174.1 硬件调试 .174.2 软件调试 .174 .
5、 2.1软件调试的步骤.17205 .2.2调试过程中遇到的问题及解决方法 .20结论致谢 .20参考文献 .21附录 .21附录A 21附录B 301绪论频率计又称为频率计数器,是一种专门对被测信号频率进行测量的电子测量仪 器。其最基本的工作原理为:当被测信号在特定时间段 T内的周期个数为N时,则被测 信号的频率f=N/T。频率计主要由四个部分构成:时基(T)电路、输入电路、计数显示 电路以及控制电路。在一个测量周期过程中,被测周期信号在输入电路中经过放大、整形、微分操作之后形成特定周期的窄脉冲,送到主门的一个输入端。主门的另外一个输 入端为时基电路产生电路产生的闸门脉冲。在闸门脉冲开启主门
6、的期间,特定周期的窄 脉冲才能通过主门,从而进入计数器进行计数,计数器的显示电路则用来显示被测信号 的频率值,内部控制电路则用来完成各种测量功能之间的切换并实现测量设置。1.1 课题背景及目的本次课程设计的内容是使用 AT89C5俾片机最小系统设计频率计系统,系统以单片 机为主控单元,主要用于对方波频率的测量,51系列单片机是国内目前应用最广泛的一种8位单片机之一,随着嵌入式系统、片上系统等概念的提出和普遍接受及应用。51系列及其衍生单片机还会在继后很长一段时间占据嵌入式系统产品的低端市场,因此,作为新世纪的大学生,在信息产业高速发展的今天,掌握单片机的基本结构、原理和使用是非常重要的。本次课
7、程设计的内容是使用AT89C51单片机最小系统设计频率 计系统,系统以单片机为主控单元,主要用于对方波频率的测量1.2 国内外研究状况在传统的电子测量仪器中,示波器在进行频率测量时测量精度较低,误差较大。频 谱仪可以准确的测量频率并显示被测信号的频谱,但测量速度较慢,无法实时快速的跟 踪捕捉到被测信号频率的变化。正是由于频率计能够快速准确的捕捉到被测信号频率的变化,因此,频率计拥有非常广泛的应用范围。在传统的生产制造企业中,频率计被广泛的应用在产线的生产测试中。频率计能够快速的捕捉到晶体振荡器输出频率的变 化,用户通过使用频率计能够迅速的发现有故障的晶振产品,确保产品质量。在计量实 验室中,频
8、率计被用来对各种电子测量设备的本地振荡器进行校准。在无线通讯测试中,频率计既可以被用来对无线通讯基站的主时钟进行校准,还可以被用来对无线电台的跳频信号和频率调制信号进行分析。1.3 课题研究方法本论文主要阐述了以AT89C5惮片机为核心,利用它内部的定时/计数器完成待测 信号频率的测量。单片机 AT89C51内部具有2个16位定时/计数器,定时/计数器的 工作可以由编程来实现定时、计数和产生计数溢出时中断要求的功能。其基本模块包括 输入、切换逻辑、计数、单片机控制及显示模块,采用汇编语言。2测量方案的论证与分析2.1 测量方法的分析测量方法通常有三种:直接测量法、间接测量法、直接与间接测量结合
9、法。2.1.1 直接测频法这种方法的测量原理是:由于频率是单位时间内信号发生周期变化的次数,使得我 们可以在给定的单位时间1S内(称为闸门)对被测信号的脉冲数计数,得到的脉冲个 数就是被测信号的频率。1S基准闸门信号.1s 4被测信号JWWWWWWUBI实际检出信号直接新J频法时序图+经分析,本测量法在低频段的相对测量误差较大,即在低频段不能满足本设计的要 求2.1.2 间接测量法(测周期法)黄河科技学院单片机设计(论文)虽然直接测频法可以测出单位时间内脉冲的个数即频率,但是对于较低频率的信号其检测误差会大大增大,例如1.8Hz的信号,在通过1秒的闸门时间内其0.8会被淹没, 这是在设计中所不
10、允许的。解决这种现象的办法就是改直接测频法为测周期法。其原理 是用被测信号的周期作为闸门,在该闸门时间内允许已知标准的短周期间隔的较高频率 的信号通过,通过数字电路或微型计算机的运算,通过闸门的已知信号频率的个数越多, 其被测频率就越低。被测闸门信号.未知高频基准信号实际检出已知信号测周期法时序图误差分析,可得结论:用该测量法测量时,被测信号的频率越高,测量误差越大。2.1.3 直接与间接相结合的方法该方法的出发点是避开土 1量化误差的影响较大的频段,寻找有利因素而产生的。 对信号不采用直接测频法,而是改为测周期,并通过切换求得频率。该方法可以满足测 量误差的要求。由此可见,为了获得较高的测量
11、精度,在高频段,宜采用直接测频法;在低频段, 宜采用测周期法。把测量工作分为两种方法:(1)当待测信号的频率100 Hz时,定时/计数器构成为计数器,以机器周期为 基准,由软件产生计数闸门,计数闸门宽度1 s时,即可满足频率测量结果为 4位有效数字;(2)当待测信号的频率 100 Hz时,定时/计数器构成为定时器,由频率计的予 处理电路把待测信号变成方波,方波宽度等于待测信号的周期。2.2 硬件电路设计方案分析2.2.1 中小规模数字集成电路系统测频部分采用中小规模数字集成电路,用机械式功能转换开关换档,完成测频率、测周期及测脉宽等功能。该方案的特点是中小规模集成电路应用技术成熟,能可靠 的完
12、成频率计的基本功能,但由于系统功能要求较高,所以电路过于复杂,而且多量程 换档开关使用不便。原理框图如 2.1所示。2.1原理框图2.2.2 单片机 AT89C51系统采用51系列单片机AT89C51作为控制核心,实现整个电路的测试信号控制、 数据运算处理、键盘扫描和控制数码管的显示输出完成各种时序逻辑控制、计数功能。系统组成框图如图2.2所示,所有信号包括基准频率信号、被测信号 AT89C51单片 机的控制下进行计数或定时,单片机将每次测试结果经运算处理后,以十进制的形式送 到4位数码管显示电路显示。按键接口电路,因为按键数量较少,所以采用独立式按键 结构,实现测频、测周功能。-9 -图2.
13、2 原理框图显然,单片机AT89C51的电路简洁、新颖,数字集成电路从系统要实现的指标上 看,要实现频率的测量范围10Hz10KHz实现比较困难,还要进行周期换算频率,因 此采用单片机AT89C51系统。3.基于单片机的数字频率计的硬件设计3.1 系统硬件的构成本频率计的数据采集系统主要元器件是单片机AT89C51由它完成对待测信号频率的计数和结果显示等功能,外部还要有以下几个模块:放大整形模块、时钟脉冲产生模块、按键模块、单片机系统、LED显示模块。各模块关系图如图2所示:黄河科技学院单片机设计(论文)总电9各图时钟电路20pF20pFRSTVSSEA/VPP2.0/A8AT89C51u T
14、。一 12MH z9 10DPAA6M1 31-311410< -60 -5-4-3<QH QG QF QEQD QC QB QAGNDCL KCLR74LS164VCC8P2.72P5P2AI/A32PAi1/A9 P1.71CEC5I/II6按键电路(中断扫描方式)6AN113t> 12<1 I"1 l"0<6<小37T0"-6-A403<54r3oTT''3DPA JDPA 丁AA QH QG QF QE QD QC QB QAGNDCL KCLR74LS164VCC电路显示方式)GND7A QHQG
15、 QF QE QD QC QBQAGNDCL K .TTR74LS164VCC749 10DP1AAA QH QG QF QE QD QC QB QAGNDCL K .CLR74LS164VCC+5v黄河科技学院单片机设计(论文)3.1.1 AT89C51单片机及其引脚说明89C51是一种高性能低功耗的采用 CMOS:艺制造的8位微控制器,它提供下列标准 特征:4K字节的程序存储器,128字节的RAM,32条I/O线,2个16位定时器/计数器,一 个5中断源两个优先级的中断结构,一个双工的串行口 ,片上震荡器和时钟电路。引脚说明: Vx:电源电压 GNDM P0 口: P0 口是一组8位漏极开
16、路型双向I/O 口,作为输出口用时,每个引脚能 驱动8个TTL逻辑门电路。当对0端口写入1时,可以作为高阻抗输入端使用。当P0 口访问外部程序存储器或数据存储器时,它还可设定成地址数据总线复用的 形式。在这种模式下,P0 口具有内部上拉电阻。在EPROMS?时,P0 接收指令字节,同时输出指令字节在程序校验时。 程序校验 时需要外接上拉电阻。 P1 口: P1 口是一带有内部上拉电阻的8位双向I/O 口。P1 口的输出缓冲能接受 或输出4个TTL逻辑门电路。当对P1 口写1时,它们被内部的上拉电阻拉升为高电平, 此时可以作为输入端使用。当作为输入端使用时,P1 口因为内部存在上拉电阻,所以当
17、外部被拉低时会输出一个低电流(I IL)。 P2 口: P2是一带有内部上拉电阻的8位双向的I/O端口。P2 口的输出缓冲能驱 动4个TTL逻辑门电路。当向P2 口写1时,通过内部上拉电阻把端口拉到高电平,止匕 时可以用作输入口。作为输入口,因为内部存在上拉电阻,某个引脚被外部信号拉低时 会输出电流(I IL)oP2 口在访问外部程序存储器或16位地址的外部数据存储器(例如 MOVX DPTR 时,P2 送出高8位地址数据。在这种情况下,P2 口使用强大的内部上拉电阻功能当 输出1时。当利用8位地址线访问外部数据存储器时(例 MOVXR1) ,P2 口输出特殊 功能寄存器的内容。当EPRO褊程
18、或校验时,P2 口同时接收高8位地址和一些控制信号。 P3 口: P3是一带有内部上拉电阻的8位双向的I/O端口。P3 口的输出缓冲能驱 动4个TTL逻辑门电路。当向P3 口写1时,通过内部上拉电阻把端口拉到高电平,止匕 时可以用作输入口。作为输入口,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出电流(I IL )P3 口同时具有AT89C51的多种特殊功能,具体如下表1所示:端口引脚第二功能P3.0RXD (串行输入口)P3.1TXD (用行输出口)P3.2INT0 (外部中断0)P3.3INT1 (外部中断1)P3.4T0 (定时器0)P3.5T1 (定时器1)P3.6WR (外部数
19、据存储器写选通)P3.7RD (外部数据存储器都选通)表1 P3 口的第二功能 RST复位输入。当振荡器工作时,RST引脚出现两个机器周期的高电平将使单片 机复位。 ALE/PROG:当访问外部存储器时,地址锁存允许是一输出脉冲,用以锁存地址的低8位字节。当在Flash编程时还可以作为编程脉冲输出(PROG)。一般情况下,ALE是以晶振频率的1/6输出,可以用作外部时钟或定时目的。但也 要注意,每当访问外部数据存储器时将跳过一个ALE脉冲。 PSEN:程序存储允许时外部程序存储器的读选通信号。当AT89C5纵行外部程序存储器的指令时,每个机器周期PSEN两次有效,除了当访问外部数据存储器时,P
20、SEN将跳过两个信号。 EA/Vpp:外部访问允许。为了使单片机能够有效的传送外部数据存储器从0000H到FFFH元的指令,EA必须同GN目连接。需要主要的是,如果加密位1被编程,复位时EA端会自动内部锁存。当执行内部编程指令时,EA应该接到Vcc端。 XTAL1振荡器反相放大器以及内部时钟电路的输入端 XTAL2振荡器反相放大器的输出端。O&<1®&VCCP0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4,P2.0/A8P0.5/AD5P0.6/AD6EA/VppP0.7/AD7RSTP1.0/T2PSENP1.1/T2EX,al
21、e/PROGP1.2/ECIP1.3/CEX0AT89C51P1.4/CEX1P3.0/RxDP1.5/CEX2P3.1/TxDP1.6/CEX3P3.2/INT0P1.7/CEX4P3.3/INT1P3.4/T0P3.5/T1P2.1/A9P3.6/WRP2.2/A10DQ 7/pnP2.3/A11P2.4/A12P3.7/RDXTAL1P2.5/A13I XTAL2P2.6/A14VSSP2.7/A153.1.2 信号输入放大和整形电路放大整形系统包括衰减器、放大器、施密特触发器。它将正弦输入信号Vx整形成同频率方波Vo,幅值过大的被测信号经过分压器分压送入后级放大器,以避免波形失真。 由
22、运算放大器构成的射级跟随器起阻抗变换作用,使输入阻抗提高。同相输入的运算放 大器的放大倍数为(R1+R2 /R1,改变R1的大小可以改变放大倍数。系统的整形电路 由施密特触发器组成,整形后的方波送到闸门以便计数。-15 -由于输入的信号幅度是不确定、可能很大也有可能很小,这样对于输入信号的测量就不方便了,过大可能会把器件烧毁,过小可能器件检测不到,所以在设计中采用了这 个信号调理电路对输入的波形进行阻抗变换、放大限幅和整形,信号调理部分电路具体 实现电路原理图和参数如下图 4所示:3.1.3 时基信号产生电路时钟是一切微处理器、微控制器内部电路工作的基础。单片机内部有一个自激振荡 电路,它是定
23、时控制部件中的一部分,可以通过内部自激振荡或外部提供振荡源这两种 方式,驱动内部时钟电路产生系统时钟信号。内部方式:在XTAL1 XTAL2夸接定时元件和两个电容就构成了自激振荡器。C1、C2取5-30PF,起微调和稳定作用。晶振频率:f=1.212MHz 常用频率为 6、12、11.0592 MHz。外部方式:外部振荡脉冲信号直接由XTAL2端输入,此时,XTAL1应接地,而片内振荡电路不起作用,。常用于单片机同时工作,以便同步,要求信号低于12MHz时钟周期:振荡器输出的时钟脉冲频率的倒数。为单片机中最小、最基本的时间单位。状态周期:振荡信号经2分频后获得的信号周期,称 S,显然,S为时钟
24、周期的2 倍。机器周期:12个时周钟期为一个机器周期,对应计算机执行一个基本操作所需的时 问。指令周期:执行一条指令所需的时间,至少包含一个机器周期。指令字节:指令占用存储空间的字节数,有单字节、双字节、三字节三类。当时钟频率为12MH利6MHzM,时钟周期分别为1/12共和1/6 s ,机器周期分-16 -黄河科技学院单片机设计(论文)这里使用12MH磊振和两个电容就构成的自激振荡器。3.2 数字频率计软件设计3.2.1 主程序设计程序要求:要能实现量程切换,超量程指示,准确定时。mg)按例初始化中断初始化显示初始化量程预设测量程序主程序流程图3.2.2 子程序设计子程序主要包括:按键中断子
25、程序、定时中断子程序、计数中断子程序、周期中断子程序、超量程判断子程序、除法子程序、二进制转BCDF程序、显示程子序。按键中断子程序按键中断子程序流程图键中断子程序侬聊断子桂粉V咽下-18 -黄河科技学院单片机设计(论文)定时中断和计数中断子程序(定时中断子程序)停止定时T 口计数T1存储计数器数值(中断返回)周期中断子程序,定时器启停位取反I存储定时器裁值甲数中电子程0 讨数靛加1 -一断返回)周期中断子程序流程图0面中断手程庠)1-(中断返回)超量程判断子程序-19 -黄河科技学院单片机设计(论文)-21 -判断大小,小于量程输出“
26、0.”,大于量程输出“ .5除法子程序该子程序用于周期转换频率,因为周 期为两到三字节,所以使用移位除法。移位除法模拟手算方法:1)从被除数高位开始对齐除数,比 较。2)若前者大于或等于后者,商位为1, 并把被除数减除数,形成部分余数。若前 者小于后者,商位为0o3)部分余数左移一位,商也左移一 位。4)整个余数若小于除数,则退出。5)部分余数从高位开始与除数比 较。6)到第2)步。若被除数大于或等于除数,则溢出。除法0001101110)1001110J 110-22 -初始化;商=6余数="数转=除数位数C海hi处取也)C= I ;商二令h余数=全;1Y3.2.2.
27、6二进制转BCDT程序二进制转BC就为小数部分和整数部分。二进制转BCDF程序流程图黄河科技学院单片机设计(论文)显示程子序加上该位的权值位里加L先进行查码,然后由用行口发送到移位寄存器中程序:DISP:JB ALLOW,OU坪示更新是否允许MOV R2,#04H;位数MOV R1,#40H;显示数据首地址DL0:MOV A,R1MOV DPTR,#TAB2MOVC A,A+DPTRMOV SBUF,A;发送JNB TI,$CLR TIINC R1DJNZ R2,DL0RETTAB2:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FHGND黄河科
28、技学院单片机设计(论文)4.系统调试4.1 硬件调试硬件调试,由大到小,从整体到局部,进行调试。本设计电路简单,所以不一一调 试,就最复杂的显示电路进行调试。先由仿真器连接显示电路,循环发送四位(1-9)显示编码,如果四位都不能显示,检查信号传输电路,时钟电路,电源。如果四位都能显示,但有的位显示不正确,检查LED与移位寄存器的连线顺序是否正确。如果还显示不正确,与正常的位调换LED数码管。调换后,正常的位显示不正常, 则数码管坏了,换数码管。调换后,不正常的位显示不正常,则移位寄存器坏了,换移 位寄存器。4.2 软件调试4.2.1 软件调试的步骤(1)源文件的建立:使用菜单 “File-Ne
29、w”或者点击工具栏的新建文件按钮,即 可在项目窗口的右侧打开一个新的文本编辑窗口,在该窗口中输入汇编语言源程序(4.2小节所示)。保存该文件,加上扩展名(.asm或a51),这里将文件保存为examl.asm。(2)建立工程文件:点击“ Project-New Project ”菜单,出现以个对话框,要求 给工程起一个名字,我们输入examl,不需要扩展名,点击保存按钮,出现第二个对话框。 这个对话框要求选择目标 CPU即我们所使用的芯片型号80C5D点击ATME画面的“+” 号,展开该层,点击其中的80C51,然后点击确定按钮。回到主界面,此时,在工程窗 口的文件页中,出现了 “ Targ
30、et1 ”,前面有 “+”号,点击“ +”展开,可以看到下 一层的“Source Group1",这时的工程还是一个空工程,里面什么文件也没有,需要手 动把刚才编写好的源程序加入,点击“ Souce Group”使其反白显示,然后,点击鼠标 右键,出现一个下拉菜单。选中其中的“ Add file to Group ” Souce Group!",对话 框,要求寻找源文件,注意该对话框下面的“文件类型”默认为 C Souce file (*.c), 也就是以C为扩展名的文件,而我们的文件是以asm为扩展名的,所以在列表框中找不 到examl1.asm,要将文件类型该掉,点击对
31、话框中“文件类型后的下拉列表,找到并 选中“Asm Souce File(*.asm,*a51) ”,这样,在列表框中就可以找到 examl1.asm文 文件了。双examl1.asm文件,将文件加入项目,注意,在文件加入项目后,该对话框 并不消失,等待继续加入其他文件,但初学时常会认为操作没有成功而再次双击同一文件,这时会出现对话框,提示你所选的文件以在列表中,此时点击确定,返回前一对话 框,然后,点击" Close”即可返回主界面,返回后,点击“ Souce Goup 1”前的加号, 会发现examll.asm文件以在其中。双击文件名,即打开源程序。(3)工程的详细设置:首先点击
32、左边Project窗口的Target 1,然后使用菜单“Proget-Option for target 'target 1 ' ”即出现对工程设置的对话框,对这个对 话框可谓非常复杂,共有8个页面,要全部高清可不容易,好在绝大部分设置项取默认 值就行了。设置完成以后安确认返回主界面,工程建立、设置完毕。(4)编译、连接:在设置好工程后,既可以进行编译、连接。选择菜单Project-Build target,对当前工程进行连接,如果当前文件已修改软件会先对该文件进行比阿尼,然 后在连接以产生目标代码。编译过程中的信息将出现在输出窗口中的Build页中,如果源程序有语法错误,会有
33、错误报告出现,双击该行,可以定到出错的位置,对源程序反 复修改后,最终会得到如图5-1所示的结果,提示获得了名为examl.hex的文件,该文 件即可被编程器读入并写到芯片中,同时还产生了一些其他相关文件可被用于KEIL的仿真与调试。Bui1d target 1 Target 11 assembling examl.asm , 1inking.creating hex file £irom "s靠aiml” . "examl11 - 0 Error (s ) , 0 Warning (sI i 1山皿/75rmnn4 A Find i件 Ji危3 7正确编译之后的
34、结果4.2.2 调试过程中遇到的问题及解决方法在进入环境以后,遇到了很多问题,总结如下:(1)提示无asm文件编译时候提示:F:.XX.asmFile has been changed outside the editor, reload?解决方法:重新生成项目,产生 examl.asm即可。(2)在进入Keil的调试环境以后,发现程序有错解决方法:将光标定位于需要修改的程序上,用菜单,DebugInline Assambly即可出现对话框,Enter New后面的编辑框内直接输入需要修改的程序语句,输入完之 后键入回车将自动指向下一条语句,可以继续修改,如果不在需要修改,可以点击右上 角的关
35、闭按钮关闭窗口。(3)程序调试时,一些程序必须满足一定的条件才能被执行到解决方法:这些条件往往是异步发生或难以预先设定的,这类问题使用的单步实行 方法是很难调试的,这时就要使用发哦程序调试中的另一种非常重要是方法-断点设置。断点设置的方法有多种,常用的是在某一程序行设置断点,设置好断点后可以全速 运行程序,一旦执行到该程序行即停止,可在此观察有关变量值,以确定问题所在。在 程序行设置/移除断点的方法是将光标定位于需要设置断点的程序行,使用菜单 Debug/Insert/RemoveBreakPoint 设置或移除断点(也可以用鼠标在该行双击实现同样 的功能);Debug/Enable/Disa
36、ble BreakPoint是开启或暂停光标所在懂行的断点功能; Dubug/Disale All BreakPoint暂停所有断点;Debug/Kill All BreakPoint 清除所有的断点设置。这些功能也可以用工具条上的快捷键进行设置。(4)输入程序时,有中文标点,用 keil编译时出现错误解决方法:程序里有带中文标点,用英文重输入一遍(5)汇编出现数字、字母混淆解决方法:字母" O'和数字“0”。主要错在这里。注意细节!-27 -黄河科技学院单片机设计(论文)结论基于单片机设计的数字频率计具有原理简单、易于调试和测量方便等优点,主要用来测量低频信号的频率。由于其
37、测量范围会受单片机计数速率的限制,其测量量程 较小,所以可以从原理上进行改进以提高其测频范围,比如通过增加分频电路,就可实 现对高频信号的测量。致谢通过这三个月来的忙碌和学习,本次毕业论文设计已接近尾声,由于经验的匮乏, 难免有许多考虑不周全的地方,在这里衷心感谢指导老师的督促指导,以及一起学习的 同学们的支持,让我按时完成了这次毕论文设计。在论文设计过程中,我遇到了许许多 多的困难。在此我要感谢我的指导老师郭晓君老师给我悉心的帮助和对我耐心而细致的 指导,我的论文较为复杂烦琐,但是郭晓君老师仍然细心地纠正图中的错误。除了敬佩 老师的专业水平以外,他的治学严谨和科学研究的精神也是我永远学习的榜
38、样,并将积 极影响我今后的学习和工作,我才得以解决毕业设计中遇到的种种问题。 同时感谢我院、 系领导对我们的教导和关注;感谢大学三年传授我们专业知识的所有老师,谢谢你们呕 心沥血的教导。还有谢谢我周围的同窗朋友,他们给了我无数的关心和鼓励,也让我的 大学生活充满了温暖和欢乐。如果没有他们的帮助,此次论文的完成将变得困难。他们 在我设计中给了我许多宝贵的意见和建议。 同时也要感谢自己遇到困难的时候没有一蹶 不振,取而代之的是找到了最好的方法来解决问题。-40 -参考文献1李全利,单片机原理及应用技术。北京:高等教育出版社,20042王曙霞,单片机实验与实训指导。西安:西安电子科技大学出版社,20
39、073及力,Protel 2004 原理图与PC瞅计教程。北京:电子工业出版社,20074何利民,单片机高级教程。北京:航空航天大学出版社,20005李朝青,单片机原理与接口技术。北京:航空航天大学出版社,19996张毅刚,MCS-51单片机应用设计。哈尔滨:哈尔滨工业大学出版社,19977李华,MCS-51系列单片机实用接口技术。北京:航空航天出版社,20008陈光东,单片微型计算机原理接口技术。武汉:华中理工大学出版社,19999王福瑞,单片机测控系统大全,北京:航空航天大学出版社,1998附录附录A程序ORG 0000HAJMP MAIN ;主程序ORG 0003HLJMP KAYBOA
40、R键盘中断入口ORG 000BHLJMP TIME ;定时中断入口ORG 0013HLJMP ZHOU周期测量入口ORG 002BHLJMP JSH ;计数中断入口LC EQU 50H量程存放TO EQU 51H定时溢出次数存放NEW EQU 52Ht程切换状态存放CHAO EQU 53邮量程状态存放ENTER BIT 00H;确定按键位ALLOW BIT 01H显示更新允许位MAIN:MOV P1,#FFH 键初始化MOV IE,#83H; 允许定时T0,按键INT0中断SETB IT0 ;按键中断出发方式为下降沿触发CLR P2.0 ; 显示初始化SETB P2.0MOV SCON,#00
41、H中口工作方式0MOV 40H,#00H;显示缓存清零MOV 41H,#00HMOV 42H,#00HMOV 43H,#00HHOME:MOV LC,#03H量程初始化ACALL DISPLC;显示量程DOWN:JNB ENTER DOW叱量程?CLR ENTERCHOSE:CJNE LC,#01H,NEXT1AJMP ZQ ; 周期测量(量程1)NEXT1:CJNE LC,#02H,NEXT2AJMP JS1; 计数1 (量程2)NEXT2:CJNE LC,#03H,HOMEAJMP JS2; 计数2 (量程3)ZQ:CLR TR0 ; 定时停止MOV TL0,#00HMOV TH0,#00
42、HCLR ET1 ; 不允许T1中断SETB IT1 ;INT1下降沿触发MOV TO,#00H ;定时溢出次数清零MOV R6,#00H ;计时中断 数清零MOV 30H,#00H ;计时存储清零MOV 31H,#00HMOV 32H,#00HSETB EX1 ; 允许INT1中断A1:CJNE R6,#08H,A1 ;等待计时完成CLR EX1 ;停止INT1中断ACALL PINGJUNDJNZ NEW,CHOSE量程切换返回MOV 33H,#10H ;0.01S0.1S 计时最大最小值MOV 34H,#27HMOV 35H,#00HMOV 36H,#0A0HMOV 37H,#86HMO
43、V 38H,#01HACALLCHAOPANDJNZ CHAO,ZQACALL DAOSHU;1眼数DJNZ NEW,CHOSE量程切换返回ACALL BCD1 ;二进制转 BCDKDJNZ NEW,CHOSE量程切换返回ACALL DISPAJMP ZQJPINGJUN:MOV R6,#01海以 4LOOP: MOV A.32HRRC AMOV 32H,AMOV A,31HRRC AMOV 31H,AMOV A,30HRRC AMOV 30H,ADJNZ R6,LOOPRETdivdll data 39h;divdlh data 3Ah divdhl data 3Bh div0 data 3
44、0h ; divl data 31h divh data 32h templ data 26h;temph data 27h DAOSH Umov divdll,#40h ;1s mov divdlh,#42h mov divdhl,#0fh divd: push a push b mov a,divh ; orl a,divl orl a,div0 jnz divd0 setb ov ; pop b pop a ret divd0: mov templ,#00h ;mov temph,#00h mov b,#24h;divd1:clr c ;mov a,divdll;rlc a ;mov d
45、ivdll,a定义被除数单元定义除数单元定义余数单元判除数是否为零除数为零,置溢出标志除数不为零,进行运算置循环次数进位位、余数单元和被除数单元全体逐个向左循环移位mov a,divdlh rlc amov divdlh,a mov a,divdhl rlc amov divdhl,a mov a,templ rlc amov templ,a xch a,temph rlc a xch a,temph mov 04H,c;clr c subb a,divl ; mov r7,a mov a,temph subb a,divh anl c,/04H;jc divd2 ; mov templ,r7
46、;mov temph,a inc divdll ; divd2: djnz b,divd1 clr ov保存进位位用余数减去除数判断是否够减不够减,移下一位够减,刷新余数单元商上1pop b pop a retJBCD1:MOV A,3AH ;频率在 10.0099.99HzMOV B,#0AHDIV AB ; 整数MOV 43H,AMOV 42H,B尸=MOV R6,#00H ;小数LP2: MOV R0,#39HCLR CRLC AMOV 03H,C;为0时该所有数不相加MOV A,R6MOV B,#02HDIV ABMOV R1,A;小数的位数MOV DPTR,#TAB1MOV R5,#
47、00H;歹U表相对位置LP1: MOV A,R5MOVC A,A+DPTRJNB 03H,NOADDAD: ADDC A,R0DA AMOV R0,ANOADD:INC R0INC R5DJNZ R1,LP1CLR AJC ADINC R6CJNE R6,#08H,LP2MOV R0,#39H ; 拆开保存到显示缓存XCHD A,R0MOV 40H,AMOV A,39HSWAP AMOV 41H,ARETTAB1:DB 50H,25H,50H,12H,25H,06HDB 50H,12H,03H,25H,56H,01HDB 50H,12H,78H,00H,25H,06H,39H,00H尸=JS1
48、: SETB ET1 ; 允许 T1 中断CLR EX1 ; 不允许INT1中断MOV TCON,#05H停止 TR1 计数,TR0 定时MOV TL0,#0COH;定时初值,1000000=65535*15+16960MOV TH0,#0BDH; 65535-16960=48576=BDC0HMOV TL1,#00H ;计数期满零MOV TH1,#00HMOV 30H,#00H ;计数存储区清零MOV 31H,#00HMOV 32H,#00HMOV TO,#0FH ;定时溢出次数存MOV TCON,#55H启动 TR1 计数,TR0 定时A2:CJNE TO,#00HA2DJNZ NEW,C
49、HOSEM否有量程切换MOV 33H,#63H;量程 2MOV 34H,#00HMOV 35H,#00HMOV 36H,#0E7HMOV 37H,#03HMOV 38H,#00HACALL CHAOPANDJNZ CHAO,JS1MOV TL0,#0COHt 时初值MOV TH0,#0BDHMOV TL1,#00H ;计数期满零MOV TH1,#00HMOV TO,#0FH ;定时溢出次数存MOV TCON,#55H启动 TR1 计数,TR0 定时DJNZ NEW,CHOSE否有量程切换ACALL BCD2DJNZ NEW,CHOSE否有量程切换ACALL DISPAJMP A2JJS2: S
50、ETB ET1 ; 允许 T1 中断CLR EX1 ; 不允许INT1中断MOV TCON,#05H停止 TR1 计数,TR0 定时MOV TL0,#0COH;定时初值,1000000=65535*15+16960MOV TH0,#0BDH; 65535-16960=48576=BDC0HMOV TL1,#00H ;计数期满零MOV TH1,#00HMOV 30H,#00H ;计数存储区清零MOV 31H,#00HMOV 32H,#00HMOV TO,#0FH ;定时溢出次数存MOV TCON,#55H启动 TR1 计数,TR0 定时A3:CJNE TO,#00HA3DJNZ NEW,CHOS
51、EM否有量程切换MOV 33H,#0E7H;量程 3MOV 34H,#03HMOV 35H,#00HMOV 36H,#0FHMOV 37H,#27HMOV 38H,#00HACALLCHAOPANDJNZ CHAO,JS2MOV TL0,#0COHt 时初值MOV TH0,#0BDHMOV TL1,#00H ;计数期满零MOV TH1,#00HMOV TO,#0FH ;定时溢出次数存MOV TCON,#55H启动 TR1 计数,TR0 定时DJNZ NEW,CHOSE否有量程切换ACALL BCD2DJNZ NEW,CHOSE否有量程切换ACALL DISPAJMP A3JBCD2:MOV 33H,#0E8Hf 位低MOV 34H,#64H;百位低MOV 36H,#03H;千位高MOV 37H,#00H;百位高MOV R0,#33HMOV R1,#36H
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025广西北海市市场投资发展集团有限公司招聘5人模拟试卷及参考答案详解一套
- 2025贵州安顺市普定县中医医院、普定县妇幼保健院参加“第十三届贵州人才博览会”引才3人模拟试卷及答案详解(各地真题)
- 2025内蒙古气象部门招聘70人考前自测高频考点模拟试题及答案详解1套
- 2025国际航空运输合同
- 2025年河北承德市消防救援支队招聘政府专职消防队员73人考前自测高频考点模拟试题附答案详解(模拟题)
- 2025江西赣州市第五人民医院劳务派遣招聘精神科助理医师1名模拟试卷附答案详解(典型题)
- 2025福建龙岩市上杭县专项招聘县客家木偶艺术传习中心木偶音乐研究人员1人考前自测高频考点模拟试题及完整答案详解
- 2025贷款服务合同
- 二手房买卖正规合同8篇
- 高级护工考试题库及答案
- 2025年安全员b证考试安徽省题库及答案解析
- 首台套申报培训课件
- GB/T 14193.1-2025液化气体气瓶充装规定第1部分:工业气瓶
- 保安安检培训课件
- 2025年肝素行业研究报告及未来行业发展趋势预测
- 中药药剂员职业考核试卷及答案
- 2025年脚手架租赁合同3篇
- PETS公共英语二级大纲词汇
- 消控室制度上墙
- LED屏幕施工方案
- 做一名优秀的客房服务员.ppt
评论
0/150
提交评论