论文设计-单片机输入接口扩展系统设计与实现.doc_第1页
论文设计-单片机输入接口扩展系统设计与实现.doc_第2页
论文设计-单片机输入接口扩展系统设计与实现.doc_第3页
论文设计-单片机输入接口扩展系统设计与实现.doc_第4页
论文设计-单片机输入接口扩展系统设计与实现.doc_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业论文 i 西安培华学院毕业论文 单片机输入接口扩展系统设计与实现 目录目录 目录目录.I 摘要摘要.II 一、单片机的发展及应用一、单片机的发展及应用1 1.1 单片机的发展 .1 1.2 单片机的应用 .2 二、计算器二、计算器3 2.1 计算器意义 .3 2.2 软硬件环境要求 .3 2.3 AT89S51 单片机概述3 三、计算器基本功能与设计三、计算器基本功能与设计5 3.1 计算机器基本实现功能5 3.2 电路原理图 .5 3.3 设计方法和实现方法 .5 四、计算器模块设计四、计算器模块设计5 4.1 输入模块:键盘扫描5 4.2 运算模块:单片机控制5 4.3 显示模块:LED 显示.5 五、硬件电路设计五、硬件电路设计5 5.1 主要器件5 5.2 功能和操作5 5.3 硬件调试5 5.3.1 常见故障:5 5.3.2 调试方法:5 5.3.3 技术要点:5 六、软件设计六、软件设计5 毕业论文 ii 6.1 程序流程图5 6.2 软件主要程序设计5 6.2.1 键盘扫描程序5 6.2.2 显示程序5 6.2.3 简单运算程序5 6.2.4 主程序5 七、心得体会七、心得体会5 八、参考文献八、参考文献5 摘要摘要 近年来,随着科技的快速的发展,单片机的应用正在 不断深入,同时带动传统控制检测技术日益更新。在实验 检测和自动控制的单片机应用系统中,单片机往往作为核 心部件来使用,仅单片机方面的知识是不够的,还应根据 具体的硬件接口和软件结合加以完善。 本论文通过简易的计算器设计,使我们深入了解单片 机的接口技术,把知识和生活联系在一起,让我们进一步 的对单片机接口技术加以认知、学习。我们用专业知识, 专业技术分析和解决问题,从而得到系统的锻炼。 毕业论文 iii Abstract In recent years, along with the technological fast development, MCU application is unceasingly thorough, it causes the traditional control test technology increasingly updates. In the experiment test and automatic control of the microcomputer application system as the core component, microcontroller tend to use knowledge of only microcontroller is not enough, still should according to the specific hardware interface and software combines perfected. This paper, by simple calculator design, make our in- depth understanding of MCU interface technology, knowledge and life together, let us further the SCM interface technology to cognitive, learning. We use 毕业论文 iii professional knowledge, professional technical analysis and problem solving, thus obtains the system of exercise. 毕业论文 1 一、单片机的发展及应用一、单片机的发展及应用 1.1 单片机的发展单片机的发展 单片微型计算机是微型计算机的一个重要分支,也是一种非常活跃和颇具有生命力的机种。单片 微型计算机简称单片机,特别适用于工业控制领域,因此又称为微控器。 1971 年微处理器研制成功不久,就出现了单片微型计算机即单片机,但最早的单片机是 1 位的, 处理能力有限。 单片机的发展分为 4 个阶段: 第一阶段(197476 年):单片机初级阶段。因为受工艺限制,单片机采用单片的形式而且功 能比较简单。例如美国仙童公司生产的 F8 单片机,实际上只包括了 8 位 CPU,64 个字节的 RAM 和 2 个并行接口。 第二阶段(197678 年):低性能单片机阶段。以 InTEL 公司生产的 MCS48 系列单片机 为代表,该系列单片机片内集成有 8 位 CPU,8 位定时器/计数器,并行 I/O 接口,RAM 和 ROM 等, 但是最大的缺点就是无串行接口,中断处理比较简单而且片内 RAM 和 ROM 容量较小,且寻址范围 不大与 4KB。 第三阶段(197883)高性能单片阶段这个阶段推出的单片机普遍带有串行接口。多级中断系统, 16 位定时器/计数器,片内 ROM,RAM 容量加大,且寻址范围可达 64KB,有的片内还带有 A/D 转 换器。 第四阶段(1983 年至今)8 位单片机巩固发展以及 16 位单片机,32 位单片机推出阶段。此阶段 的主要特征是:一方面发展 16 位单片机,32 位单片机及专用型单片机;另一方面不断完善高档 8 位 单片机,改善其结构,增加片内器件,以满足不同的客户要求。 毕业论文 2 1.2 单片机的应用单片机的应用 单片机的应用很广,分别在以下领域中得到了广泛的应用。 工业自动化:在自动化技术中,无论是过程控制技术、数据采集技术还是测控技术,都离不开单 片机。在工业自动化的领域中,机电一体化技术将发挥愈来愈重要的作用,在这种机械、微电子和计 算机技术为一体的综合技术(例如机器人技术、数控技术)中,单片机将发挥非常重要的作用特别是 近些年来,随着计算机技术的发展,工业自动化也发展到了一个新的高度,出现了无人工厂、机器人 作业、网络化工厂等,不仅将人从繁重、重复和危险的工业现场解放出来,还大大提高了生产效率, 降低了生产成本。 仪器仪表:目前对仪器仪表的自动化和智能化要求越来越高。在自动化测量仪器中,单片机应用 十分普及。单片机的使用有助于提高仪器仪表的精度和准确度,简化结构,减小体积,易于携带和使 用,加速仪器仪表向数字化、智能化和多功能化方向发展。 消费类电子产品:该应用主要反映在家电领域。目前家电产品的一个重要发展趋势是不断提高其 智能化程度。例如,电子游戏、照相机、洗衣机、电冰箱、空调、电视机、微波炉、手机、IC 卡、 汽车电子设备等。在这些设备中使用了单片机后,其功能和性能大大提高,并实现了智能化、最优化 控制。 通信方面:较高档的单片机都具有通信接口,因而为单片机在通信设备中的应用创造了很好的条 件。例如,在微波通信、短波通信、载波通信、光纤通信、程控交换等通信设备和仪器中都能找到单 片机的应用。 武器装备:在现代化的武器装备中,如飞机、军舰、坦克、导单、鱼雷制导、智能武器设备、航 天飞机导航系统,都有单片机在其中发挥重要作用。 终端及外部设备控制:计算机网络终端设备,如银行终端,以及计算机外部设备如打印机、硬盘 驱动器、绘图机、传真机、复印机等,在这些设备中都使用了单片机。 近年来随着科技的飞速发展,同时带动自动控制系统日新月异更新,单片机的应用正在不断地走 向深入。 毕业论文 3 二、计算器二、计算器 2.1 计算器意义计算器意义 随着社会的发展,科学的进步,人们的生活水平在逐步的提高,尤其是微电子技术的发展,犹如 雨后春笋般的变化。单片机的应用已经越来越贴近生活,用单片机来实现一些电子设计也变得容易起 来。计算器在人们的日常中是比较的常见的电子产品之一。可是它还在发展之中,以后必将出现功能 更加强大的计算器,基于这样的理念,本次设计是用单片机来设计的计算器。该设计系统是以 AT89C51为单片机, P0口作为输入端,用8279或8155做键盘和LED显示接口芯片,通过键盘扫描来对 输入数的控制,在P1口,P2口接了驱动电路。用来保证LED的工作正常。计算器将完成“+、-、*、/ ”功能。 2.2 软硬件环境要求软硬件环境要求 1、软件:集成开发软件 IDE; 2、硬件:试验仪一台,编程器一台,msc51 单片机一块,示波器一台。 AT89S51 单片机引脚图如下: 2.3 AT89S51 单片机概述单片机概述 AT89S51 是一个低功耗,高性能 CMOS 8 位单片机,片内含 4k Bytes ISP(In-system 毕业论文 4 programmable)的可反复擦写 1000 次的 Flash 只读程序存储器,器件采用 ATMEL 公司的高密度、 非易失性存储技术制造,兼容标准 MCS-51 指令系统及 80C51 引脚结构,芯片内集成了通用 8 位中 央处理器和 ISP Flash 存储单元,功能强大的微型计算机的 AT89S51 可为许多嵌入式控制应用系统 提供高性价比的解决方案。 AT89S51 具有如下特点:40 个引脚,4k Bytes Flash 片内程序存储器,128 bytes 的随机存取 数据存储器(RAM) ,32 个外部双向输入/输出(I/O)口,5 个中断优先级 2 层中断嵌套中断,2 个 16 位可编程定时计数器,2 个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。 此外,AT89S51 设计和配置了振荡频率可为 0Hz 并可通过软件设置省电模式。空闲模式下, CPU 暂停工作,而 RAM 定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保 存 RAM 的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有 PDIP、TQFP 和 PLCC 等三种封装形式,以适应不同产品的需求。 1主要特性: 8031 CPU 与 MCS-51 兼容 4K 字节可编程 FLASH 存储器(寿命:1000 写/擦循环) 全静态工作:0Hz-33MHz 三级程序存储器保密锁定 128*8 位内部 RAM 32 条可编程 I/O 线 两个 16 位定时器/计数器 6 个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路 2管脚说明: VCC:供电电压。 GND:接地。 P0 口:P0 口为一个 8 位漏级开路双向 I/O 口,每脚可吸收 8TTL 门电流。当 P1 口的管脚第一 次写 1 时,被定义为高阻输入。P0 能够用于外部程序数据存储器,它可以被定义为数据/地址的第八 位。在 FIASH 编程时,P0 口作为原码输入口,当 FIASH 进行校验时,P0 输出原码,此时 P0 外部 必须被拉高。 毕业论文 5 P1 口:P1 口是一个内部提供上拉电阻的 8 位双向 I/O 口,P1 口缓冲器能接收输出 4TTL 门电 流。P1 口管脚写入 1 后,被内部上拉为高,可用作输入,P1 口被外部下拉为低电平时,将输出电流, 这是由于内部上拉的缘故。在 FLASH 编程和校验时,P1 口作为第八位地址接收。 P2 口:P2 口为一个内部上拉电阻的 8 位双向 I/O 口,P2 口缓冲器可接收,输出 4 个 TTL 门电 流,当 P2 口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2 口的管 脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2 口当用于外部程序存储器或 16 位地址 外部数据存储器进行存取时,P2 口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当 对外部八位地址数据存储器进行读写时,P2 口输出其特殊功能寄存器的内容。P2 口在 FLASH 编程 和校验时接收高八位地址信号和控制信号。 P3 口:P3 口管脚是 8 个带内部上拉电阻的双向 I/O 口,可接收输出 4 个 TTL 门电流。当 P3 口 写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3 口将输 出电流(ILL)这是由于上拉的缘故。 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(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通) P3 口同时为闪烁编程和编程校验接收一些控制信号。 I/O 口作为输入口时有两种工作方式,即所谓的读端口与读引脚。读端口时实际上并不从外部读 入数据,而是把端口锁存器的内容读入到内部总线,经过某种运算或变换后再写回到端口锁存器。只 有读端口时才真正地把外部的数据读入到内部总线。上面图中的两个三角形表示的就是输入缓冲器 CPU 将根据不同的指令分别发出读端口或读引脚信号以完成不同的操作。这是由硬件自动完成的, 不需要我们操心,1 然后再实行读引脚操作,否则就可能读入出错,为什么看上面的图,如果不对端 口置 1 端口锁存器原来的状态有可能为 0Q 端为 0Q为 1 加到场效应管栅极的信号为 1,该场效应管 就导通对地呈现低阻抗,此时即使引脚上输入的信号为 1,也会因端口的低阻抗而使信号变低使得外 加的 1 信号读入后不一定是 1。若先执行置 1 操作,则可以使场效应管截止引脚信号直接加到三态缓 冲器中实现正确的读入,由于在输入操作时还必须附加一个准备动作,所以这类 I/O 口被称为准双向 毕业论文 6 口。89C51 的 P0/P1/P2/P3 口作为输入时都是准双向口。接下来让我们再看另一个问题,从图中可 以看出这四个端口还有一个差别,除了 P1 口外 P0P2P3 口都还有其他的功能。 RST:复位输入。当振荡器复位器件时,要保持 RST 脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在 FLASH 编程期间,此引脚用于输入编程脉冲。在平时,ALE 端以不变的频率周期输出正脉冲信号, 此频率为振荡器频率的 1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每 当用作外部数据存储器时,将跳过一个 ALE 脉冲。如想禁止 ALE 的输出可在 SFR8EH 地址上置 0。此时, ALE 只有在执行 MOVX,MOVC 指令是 ALE 才起作用。另外,该引脚被略微拉高。如 果微处理器在外部执行状态 ALE 禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN 有效。但在访问外部数据存储器时,这两次有效的/PSEN 信号将不出现。 /EA/VPP:当/EA 保持低电平时,则在此期间外部程序存储器(0000H-FFFFH) ,不管是否有内 部程序存储器。注意加密方式 1 时,/EA 将内部锁定为 RESET;当/EA 端保持高电平时,此间内部 程序存储器。在 FLASH 编程期间,此引脚也用于施加 12V 编程电源(VPP) 。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 AT89SXX系列单片机实现了ISP下载功能,故而取代了89CXX系列的下载方式,也是因为 这样,ATMEL公司已经停止生产89CXX系列的单片机,现在市面上的AT89CXX多是停产前的库存产 品。 三、计算器基本功能与设计三、计算器基本功能与设计 3.1 计算机器基本实现功能计算机器基本实现功能 1. 计算器可显示 8 位数字,开机运行时,只有数码管最低位显示为“0” ,其余位全部不显示; 2. 设计 44 键盘,分别表示 09、/ 、和清零键 CL,输入的数字从设计的键 盘输入; 3.第一次按下时,显示“D1” ;第二次按下时,显示“D1D2” ;第三次按下时,显示“D1D2D3” , 8 个全显示完毕,再按下按键下时,给出“嘀”提示音,并且输入的第九个数不接收,仍然显示原来 的八位数; 毕业论文 7 4.可以对计算结果小于 256 的两个无符号数进行加法运算,并显示计算结果。对于、/、和 的运算为提高部分。 3.2 电路原理图电路原理图 图 1 电路原理图 3.3 设计方法和实现方法设计方法和实现方法 为了满足计算器的基本要求,可以基本的运算(加减乘除),数据归零和出错警告提示,我们采 用基于MSC-51单片机设计计算器,并用LED数码管显示数据,4*4的矩阵键盘实现数据输入。 根据功能和指标要求,本系统选用MSC-51单片机为主控机。通过扩展必要的外围接口电路,实现 对计算器的设计。具体设计考虑如下: 1、由于要设计的是简单的计算器,可以进行四则运算,对数字的大小范围要求不高,故我 们采用可以进行四位数字的运算,选用8个LED数码管显示数据和结果。 毕业论文 8 2、另外键盘包括数字键(09)、符号键(+、-、)、清除键和等号键,故只需要 16个按键即可。 3、故设计此系统模块图 图 2 系统模块图 四、计算器模块设计四、计算器模块设计 4.1 输入模块:键盘扫描输入模块:键盘扫描 计算器输入数字和其他功能按键要用到很多按键,如果采用独立按键的方式,在这种情况下,编 程会很简单,但是会占用大量的I/O口资源,因此在很多情况下都不采用这种方式。为此,我们引入 了矩阵键盘的应用,采用四条I/O线作为行线,四条I/O线作为列线组成键盘。在行线和列线的每个交 叉点上设置一个按键。这样键盘上按键的个数就为44个。这种行列式键盘结构能有效地提高单片机 系统中I/O口的利用率。 矩阵键盘的工作原理: 计算器的键盘布局如图3所示:一般有16个键组成,在单片机中正好可以用一个P口实现16个按 键功能,这种形式在单片机系统中也最常用。 毕业论文 9 图 3 键盘布局图 由图4矩阵键盘内部电路图可以知道,当无按键闭合时,P10P13与P14P17之间开路。当有键闭 合时,与闭合键相连的两条I/O口线之间短路。判断有无按键按下的方法是:第一步,置列线P14P17 为输入状态,从行线P10P13输出低电平,读入列线数据,若某一列线为低电平,则该列线上有键闭 合。第二步,行线轮流输出低电平,从列线P14P17读入数据,若有某一列为低电平,则对应行线上 有键按下。综合一二两步的结果,可确定按键编号。但是键闭合一次只能进行一次键功能操作,因此 须等到按键释放后,再进行键功能操作,否则按一次键,有可能会连续多次进行同样的键操作。 图 4 矩阵键盘内部电路图 4.2 运算模块:单片机控制运算模块:单片机控制 MCS-51单片机是在一块芯片中集成了CPU、RAM、ROM、定时器/计数器和多功能I/O等一台计算机 所需要的基本功能部件。如果按功能划分,它由如下功能部件组成,即微处理器(CPU)、数据存储 毕业论文 10 器(RAM)、程序存储器(ROM/EPROM)、并行I/O口、串行口、定时器/计数器、中断系统及特殊功能 寄存器(SFR)。 单片机是靠程序运行的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的 一些功能,通过使用单片机编写的程序可以实现高智能,高效率,以及高可靠性!因此我们采用单片 机作为计算器的主要功能部件,可以进行很快地实现运算功能。 4.3 显示模块:显示模块:LED 显示显示 发光二极管LED是单片机应用系统中的一宗简单而常用的输出设备,其在系统中的主要作用是显 示单片机的输出数据、状态等。因而作为典型的外围器件,LED显示单元是反映系统输出和操作输入 的有效器件。LED具备数字接口可以方便的和大年纪系统连接;它的优点是价格低,寿命长,对电压 电流的要求低及容易实现多路等,因而在单片机应用系统中获得了广泛的应用。 通常的数码显示器是由7段条形的LED组成(如图5所示),点亮适当的字段,就可显示出不同的 数字。我们采用8段数码管,其中位于显示器右下角的LED作小数点用。 LED显示器有两种不同的形式: 共阴极和共阳极。本次设计采用共阴极接法(如图6所示)。 图5 7段数码显示器内部段的排列图 图6 共阴极连接 毕业论文 11 五、硬件电路设计五、硬件电路设计 5.1 主要器件主要器件 单片机采用AT89S51单片机,它能够满足数据的采集、控制和数据处理的需求。显示用8段LED数 码管,输入采用按键方式。 5.2 功能和操作功能和操作 加减乘除运算和显示。 1、 上电后,屏幕初始化。 2、 计算。按下数字键,屏幕显示要运算的第一个数字,再按下符号键,然后再按下数字键,屏 幕显示要运算的第二个数字,最后 按下“”号键,屏幕上显示出计算结果。 3、 如果要再次计算,可以按下“CLC”键清零,或者按下单片机的复位键,重新初始化。 5.3 硬件调试硬件调试 5.3.1 常见故障:常见故障: 1、 逻辑错误:它是由设计错误或加工过程中的工艺性错误所造成的。这类错误包括错线、开路、短 路等。 2、 元器件失效:有两方面的原因:一是器件本身已损坏或性能不符合要求;二是组装错误造成元件 失效,如电解电容、二极管的极性错误、集成电路安装方向错误等。 3、 可靠性差:引起可靠性差的原因很多,如金属化孔、接插件接触不良会造成系统时好时坏,经不 起振动;走线和布局不合理也会引起系统可靠性差。 4、 电源故障:若样机有电源故障,则加电后很容易造成器件损坏。电源故障包括电压值不符合设计 要求,电源引线和插座不对,功率不足,负载能力差等。 5.3.2 调试方法:调试方法: 包括多级调试和联机调试。在调试过程中要针对可能出现的故障认真分析,直至检查出原因并且 毕业论文 12 排除。 5.3.3 技术要点:技术要点: 1、单片机的复位与时钟: AT89S51单片机与其他处理器一样,在启动时都需要复位,使CPU和系统的各个部件都处于一种确 定的初始状态。复位信号从单片机的RST引脚输入,高电平有效,其有效电平应维持至少2个机器周期。 复位操作有上电自动复位和按键手动复位两种方式,我们采用的是按键手动复位方式。 时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。MCS-51单 片机内部有一个用于构成振荡器的高增益反相放大器,该高增益反向放大器的输入端为芯片引脚 XTAL1,输出端为引脚XTAL2。这两个引脚跨接石英晶体振荡器和微调电容,就构成一个稳定的自激振 荡器。 2、电源电路设计: 电源电路包括变压器、桥式整流器、电容和稳压器。通过变压器变压,使得220V电压变为5 V, 在通过桥式整流,电容的滤波作用,稳压器的稳压作用,可输出5V的稳定电压 3、 可靠性设计: 单片机应用系统在实际运行中,可能会受到各种外部和内部的干扰,使系统工作产生错误或故障。 为了提高系统的抗干扰能力,常用的措施有: a、 提高元器件的可靠性。在系统硬件设计和加工时,应注意选用质量好的电子器件接插件,要 进行严格的测试、筛选和老化,同时设计的技术参数应留有余量。 b、 提高印刷电路板和组装的质量。设计电路板时布线及接地方法要符合要求,强弱电信号线要 分开。 c、 对供电电源采取抗干扰措施。例如用带屏蔽层的电源变压器、加电源低通滤波器、电源变压 器的容量应留有余量等。 毕业论文 13 六、软件设计六、软件设计 6.1 程序流程图程序流程图 图 7 程序流程图 6.2 软件主要程序设计软件主要程序设计 6.2.1 键盘扫描程序键盘扫描程序 此程序为键盘扫描中第一次扫描所用的程序,这段程序的主要过程为:初始化时,将 P1.4 置 为低电平,通过与 0x0f 相与来判断所按下的键,此次为扫描位于 P1.4 那一行的键,若相与结果为 0x0e 时说明 P1.0 所检测出的为低电平,闭合的键应为 P1.4 行与 P1.0 列的交叉处的键。若相与结果 为 0x0d 则 P1.1 所检测为低电平,闭合的键应为 P1.4 行与 P1.1 列的交叉处的键。若相与结果为 0x0b 毕业论文 14 则 P1.2 所检测为低电平,闭合的键应为 P1.4 行与 P1.2 列的交叉处的键。若相与结果为 0x07 则 P1.3 所检测为低电平,闭合的键应为 P1.4 行与 P1.3 列的交叉处的键。要把 16 个键盘全部扫描完需要进 行 4 次这样的逐行扫描,所用方法相同程序类似分别另 P1.5,P1.6,P1.7 为低电平执行相同操作。程 序如下: char scankey() P1=0xff; P1_4=0; temp=P1; temp=temp if (temp!=0x0f) delay(20); temp=P1; temp=temp if (temp!=0x0f) temp=P1; temp=temp switch(temp) case 0x0e: return(15); break; case 0x0d: return(14); break; case 0x0b: return(13); break; case 0x07: return(12); break; temp=P1; temp=temp 毕业论文 15 while(temp!=0x0f) temp=P1; temp=temp 6.2.2 显示程序显示程序 此程序为显示程序的一部分,其同源程序代码中的数据定义部分,显示驱动程序和码制转换程序 一起来实现数据在数码管中的显示。如当第一次输入为 1,第二次输入为 2 时,则将 1 在数码管中向 前移一位即第二位显示管上,将 2 放到第一位显示管上,在通过码制转换使其转换为 12 来执行运算, 如果继续输入数字则它们将逐个的向前移动,直到输入 8 为后,报警提示已不能显示更多数字。程序 如下: /*码制转换:计算结果转换为显示码*/ void cchange(uint cnum) uchar i,j,k; uchar n; uchar dbuffer8=0; for(i=0;i8;i+) n=cnum%10; cnum=cnum/10; dbufferi=n; for(j=0;j8;j+) if(dbuffer7-j!=0) for(k=0;k=7-j;k+) ddk=dbufferk; 毕业论文 16 break; /*显示数字*/ void disnum(uchar unum) display(0xfe,disdata2); if(counter8) change(dd,counter); if(dflag=0) indata=indata*10+unum; dd0=indata%10; if(dflag=1) nextdata=nextdata*10+unum; dd0=nextdata%10; else counter=8; alarmflag=1; counter+; 6.2.3 简单运算程序简单运算程序 此设计能实现简单运算,此程序实现加法运算,则根据程序首先通过第

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论