1、1进入项目进入项目2 项目任务项目任务 3进入任务进入任务4进入任务进入任务 设计一个竞赛抢答器,可同时供设计一个竞赛抢答器,可同时供8名选手或名选手或8个代表队参加个代表队参加比赛,编号为比赛,编号为1、2、3、4、5、6、7、8,各用一个按钮。,各用一个按钮。给节目主持人设置一个控制开关,用来控制系统的清零和给节目主持人设置一个控制开关,用来控制系统的清零和抢答的开始。抢答的开始。抢答成功后,编号立即锁存,并在抢答成功后,编号立即锁存,并在LED数码管上显示选手数码管上显示选手编号,同时伴随声音提示。此时禁止其他选手抢答,直到主编号,同时伴随声音提示。此时禁止其他选手抢答,直到主持人将系统
2、清零。持人将系统清零。5进入任务进入任务 6进入任务进入任务编号编号元件名称元件名称元件规格元件规格数量数量151单片机单片机AT89C511个个2晶振晶振12MHz立式立式1个个3起振电容起振电容30pF瓷片电容瓷片电容2个个4复位电容复位电容10uF/10V电解电容电解电容1个个5复位电阻复位电阻10K欧姆欧姆1个个6限流电阻限流电阻500欧姆欧姆1个个7集成电路集成电路74LS245(8总线接受总线接受/发送器)发送器)1个个8七段数码管七段数码管1位共阴极位共阴极1个个9三极管三极管90151个个10喇叭喇叭8欧姆欧姆/05W1个个11按键按键10个个12电源电源5V/05A1个个 7
3、进入任务进入任务 8进入任务进入任务 9进入任务进入任务10进入任务进入任务设计一个简易数字电压表,要求能够测量设计一个简易数字电压表,要求能够测量05V的直流电的直流电压值,并通过压值,并通过4位数码管实时显示该电压值。位数码管实时显示该电压值。11进入任务进入任务12进入任务进入任务编号编号元件名称元件名称元件规格元件规格数量数量151单片机单片机AT89C511个个2晶振晶振12MHz立式立式1个个3起振电容起振电容30pF瓷片电容瓷片电容2个个4复位电容复位电容10uF/10V电解电容电解电容1个个5复位电阻复位电阻10K欧姆欧姆1个个6上拉电阻上拉电阻10K欧姆欧姆8个个7七段数码管
4、七段数码管共阴极共阴极4位一体位一体1个个8A/D转换器转换器ADC08091个个9可调电阻可调电阻1K欧姆欧姆1个个10电源电源5V/05A1个个13进入任务进入任务14进入任务进入任务15进入任务进入任务16进入任务进入任务利用单片机及按键控制步进电机运行,设计两个按键,一利用单片机及按键控制步进电机运行,设计两个按键,一个按键控制步进电机正转,一个按键控制步进电机反转,初个按键控制步进电机正转,一个按键控制步进电机反转,初始角度为始角度为0,步进角为,步进角为45。17进入任务进入任务18进入任务进入任务编号编号元件名称元件名称元件规格元件规格数量数量151单片机单片机AT89C511个
5、个2晶振晶振12MHz立式立式1个个3起振电容起振电容30pF瓷片电容瓷片电容2个个4复位电容复位电容10uF/10V电解电容电解电容1个个5复位电阻复位电阻10K欧姆欧姆1个个6按键按键3个个7电阻电阻20K欧姆欧姆2个个8集成电路集成电路驱动器驱动器ULN2003A1个个9步进电机步进电机1个个10电源电源5V/05A1个个19进入任务进入任务20进入任务进入任务21进入任务进入任务8255A控制交通灯的设计与调试控制交通灯的设计与调试 22进入任务进入任务设计一个交通灯控制电路,利用设计一个交通灯控制电路,利用51单片机外接单片机外接8255A进行进行控制控制。假设一个十字路口为东西南北
6、走向。初始状态假设一个十字路口为东西南北走向。初始状态1为东西红灯,为东西红灯,南北绿灯。然后黄灯闪烁南北绿灯。然后黄灯闪烁3次,转状态次,转状态2东西绿灯通车,南北东西绿灯通车,南北红灯。再东西绿灯灭,黄灯闪烁红灯。再东西绿灯灭,黄灯闪烁3次,南北绿灯,回到状态次,南北绿灯,回到状态1。依次循环。东西红、南北绿以及东西绿、南北红的时间均依次循环。东西红、南北绿以及东西绿、南北红的时间均为为4秒,黄灯时间为秒,黄灯时间为0.1秒。秒。23进入任务进入任务24进入任务进入任务编号编号元件名称元件名称元件规格元件规格数量数量151单片机单片机AT89C511个个2晶振晶振12MHz立式立式1个个3
7、起振电容起振电容30pF瓷片电容瓷片电容2个个4复位电容复位电容10uF/10V电解电容电解电容1个个5复位电阻复位电阻10K欧姆欧姆1个个6按键按键1个个7集成电路集成电路8255A1个个8集成电路集成电路74LS3731个个9交通灯交通灯发光二极管红、黄、绿色发光二极管红、黄、绿色各各4个个10电源电源5V/05A1个个25进入任务进入任务26进入任务进入任务27相关知识相关知识 单片机应用系统的研制过程包括如下阶段:单片机应用系统的研制过程包括如下阶段:28相关知识相关知识1)确定技术指标)确定技术指标 2)机型选择)机型选择3)器件选择)器件选择4)软、硬件功能划分)软、硬件功能划分2
8、9相关知识相关知识1)程序存储器的设计程序存储器的设计 2)数据存储器和输入输出接口的设计数据存储器和输入输出接口的设计 3)地址译码电路的设计地址译码电路的设计 4)总线驱动器的设计总线驱动器的设计 5)其它外围电路的设计其它外围电路的设计 6)可靠性设计可靠性设计 30相关知识相关知识1)系统定义系统定义 2)软件结构设计软件结构设计 31相关知识相关知识1)常见的硬件故障常见的硬件故障 2)调试方法调试方法(1)逻辑错误)逻辑错误(2)元器件失效)元器件失效(3)可靠性差)可靠性差(4)电源故障)电源故障(1)脱机调试)脱机调试(2)联机调试)联机调试 32相关知识相关知识ADC0809
9、是是COMS工艺、采用逐次逼近法的工艺、采用逐次逼近法的8位位A/D转换芯片,共转换芯片,共有有28个引脚,双列直插式封装,片内除个引脚,双列直插式封装,片内除A/D转换部分外,还有多路转换部分外,还有多路模拟开关部分。模拟开关部分。33相关知识相关知识ADC0809采用了采用了8路模拟量的分时输入路模拟量的分时输入(模拟开关模拟开关),最多允许,最多允许8路模路模拟量分时输入。共用一个拟量分时输入。共用一个A/D转换器进行模转换器进行模/数转换。内部主要有四数转换。内部主要有四大部分组成,即大部分组成,即8路模拟开关;路模拟开关;8位位A/D转换器;三态输出锁存器;转换器;三态输出锁存器;地
10、址锁存译码器。地址锁存译码器。MCS-51单片机与单片机与ADC0809芯片的接口电路图芯片的接口电路图34相关知识相关知识ADC0809的工作时序的工作时序(1)先由)先由P0口的低口的低3位给出模拟通道的地址给位给出模拟通道的地址给A、B、C。(2)再由)再由P2.0和和 联合联合(逻辑或逻辑或)提供一个信号给提供一个信号给ADC0809芯片芯片的的START端和端和ALE地址锁存端。地址锁存端。WR35相关知识相关知识ADC0809的工作时序的工作时序(3)假定选中)假定选中ADC0809的的IN0通道,我们可知此时的通道地址由通道,我们可知此时的通道地址由P2和和P0组成(组成(P2=
11、1111 1110,P0=1111 1000)即为:)即为:0FEF8H。(4)A/D转换完毕后,再由转换完毕后,再由EOC发出一个正脉冲通知发出一个正脉冲通知8051。写时序图如图所示。写时序图如图所示。36相关知识相关知识ADC0809的工作时序的工作时序(5)80518051在收到在收到EOCEOC的正脉冲信号后,产生一个的正脉冲信号后,产生一个 信号并与信号并与P2.0P2.0联合联合(逻辑或逻辑或)提供一个信号给提供一个信号给ADC0809ADC0809芯片的芯片的OEOE端。端。RD(6)OE端有效后,打开输出锁存器三态门,端有效后,打开输出锁存器三态门,8位数字信息就被读位数字信
12、息就被读入入CPU。读时序图如图所示。读时序图如图所示。37相关知识相关知识 DAC0832是是CMOS工艺制造的工艺制造的8位单片位单片D/A转换器,芯转换器,芯片采用的是双列直插封装结构。片采用的是双列直插封装结构。38相关知识相关知识 51单片机与单片机与DAC0832的接口电路一般有两种接口方式:的接口电路一般有两种接口方式:单缓冲器连接方式单缓冲器连接方式和和双缓冲器连接方式双缓冲器连接方式。39相关知识相关知识单缓冲器连接方式单缓冲器连接方式双缓冲器连接方式双缓冲器连接方式40相关知识相关知识1 1、步进电机、步进电机 步进电机是将电脉冲信号转变为角位移或线位移的开环控制元步进步进
13、电机是将电脉冲信号转变为角位移或线位移的开环控制元步进电机件。电机件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,当步进驱动器接收到一个频率和脉冲数,而不受负载变化的影响,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,称为称为“步距角步距角”,它的旋转是以固定的角度一步一步运行的。,它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;可以通过控制脉冲个
14、数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。达到调速的目的。41相关知识相关知识28byj-48型四相八拍永磁型步进电机型四相八拍永磁型步进电机42相关知识相关知识步进电机的特点步进电机的特点(1)一般步进电机的精度为步进角的)一般步进电机的精度为步进角的3-5%,且不累积。,且不累积。(2)步进电机外表允许的温度高。)步进电机外表允许的温度高。(3)步进电机的力矩会随转速的升高而下降。)步进电机的力矩会随转速的升高而下降。(4)步进电机低速时可以正常运转,但若高于
15、一定速度就无法启动,并伴有啸叫声。)步进电机低速时可以正常运转,但若高于一定速度就无法启动,并伴有啸叫声。43相关知识相关知识2 2、ULN2003AULN2003A驱动器驱动器 常用的小型步进电机驱动电路可以用常用的小型步进电机驱动电路可以用ULN2003或或ULN2803。ULN2003是高压大电流达林顿晶体管阵列系列产品,具有电流增益是高压大电流达林顿晶体管阵列系列产品,具有电流增益高、工作电压高、温度范围宽、带负载能力强等特点,适应于各类高、工作电压高、温度范围宽、带负载能力强等特点,适应于各类要求高速大功率驱动的系统。要求高速大功率驱动的系统。ULN2003A由由7组达林顿晶体管阵列
16、和相应的电阻网络以及钳位二组达林顿晶体管阵列和相应的电阻网络以及钳位二极管网络构成,具有同时驱动极管网络构成,具有同时驱动7组负载的能力,为单片双极型大功组负载的能力,为单片双极型大功率高速集成电路。率高速集成电路。44相关知识相关知识ULN2003A的引脚图的引脚图 45相关知识相关知识1 1、5151单片机扩展单片机扩展 51系列单片机内部有系列单片机内部有4个双向的并行个双向的并行I/O端口:端口:P0P3 共占共占32根引根引脚、脚、P0口的每一位可以驱动口的每一位可以驱动8个个TTL负载,负载,P1P3口的负载能力为口的负载能力为三个三个TTL负载。负载。在具有片外扩展存储器的系统中
17、,在具有片外扩展存储器的系统中,P0口分时地作为低口分时地作为低8位地址线和位地址线和数据线,数据线,P2口作为高口作为高8位地址线。这时,位地址线。这时,P0口和部分或全部的口和部分或全部的P2口口无法再作通用无法再作通用I/O口。口。P3口具有第二功能,在应用系统中也常被使口具有第二功能,在应用系统中也常被使用。用。46相关知识相关知识 因此在大多数的应用系统中,真正能够提供给用户使用的只有因此在大多数的应用系统中,真正能够提供给用户使用的只有P1和和部分部分P2、P3口。口。综上所述,综上所述,5l系列单片机的系列单片机的I/O端口通常需要扩充,以便和更多的外端口通常需要扩充,以便和更多
18、的外设(例如显示器、键盘)进行联系。设(例如显示器、键盘)进行联系。47相关知识相关知识 在在5l单片机中扩展的单片机中扩展的I/O口,采用与片外数据存储器相同的寻址方法,口,采用与片外数据存储器相同的寻址方法,所有扩展的所有扩展的I/O口,以及通过扩展口,以及通过扩展I/O口连接的外设都与片外口连接的外设都与片外RAM统统一编址,因此,对片外一编址,因此,对片外I/O口的输入口的输入/输出指令就是访问片外输出指令就是访问片外RAM的的指令。指令。实际中,扩展实际中,扩展I/O口的方法有三种:口的方法有三种:简单的简单的I/O口扩展口扩展,采用可编程采用可编程的并行的并行I/O接口芯片扩展接口
19、芯片扩展以及以及利用串行口进行利用串行口进行I/O口的扩展口的扩展。48相关知识相关知识2 2、简单的、简单的I/OI/O扩展扩展 简单输入口扩展使用的集成芯片,比较典型的如简单输入口扩展使用的集成芯片,比较典型的如74LS244缓冲驱动缓冲驱动芯片。芯片。1)简单输入口扩展)简单输入口扩展1510CCV1115201CS2CS1A12A13A14A13A22A21A24A21Y12Y13Y14Y11Y22Y23Y24Y2GND输入设备74LS2441CS2CS地址选通信号RDALEP074LS373271674LS24474LS24449相关知识相关知识 多输入口扩展:使用多片多输入口扩展:
20、使用多片74LS244实现多个(例如实现多个(例如5个)输入口扩个)输入口扩展的电路。展的电路。50相关知识相关知识 简单输出口扩展通常使用简单输出口扩展通常使用74LS377芯片,该芯片是一个具有芯片,该芯片是一个具有“使能使能”控制端的锁存器。控制端的锁存器。其中:其中:1D8D为为8位数据输入线,位数据输入线,1Q8Q为为8位数据输出线,位数据输出线,CK为时钟信号上升沿数据锁存,为使能控制信号,低电平有效。为时钟信号上升沿数据锁存,为使能控制信号,低电平有效。VCC为为5V电源。电源。2)简单输出口扩展)简单输出口扩展51相关知识相关知识 由逻辑电路可知,由逻辑电路可知,74LS377
21、是由是由D触发器组成的,触发器组成的,D触发触发器在上升沿输入数据,即在时钟信号(器在上升沿输入数据,即在时钟信号(CK)由低电平跳)由低电平跳变为高电平时,数据进入锁存器。变为高电平时,数据进入锁存器。CkCkD DQ Q1 1X XX XQ0 Q0 0 0 1 11 10 0 0 00 0X X0 0X XQ0 Q0 74LS377功能表功能表 52相关知识相关知识 扩展单输出口只需要一片扩展单输出口只需要一片74LS377,其连接电路如下:,其连接电路如下:1Q8Q1D8DP0.0P0.7 WR地址译码信号80C5174LS377输出设备CKG53相关知识相关知识3 3、并行、并行I/O
22、I/O扩展扩展 单片机扩展时常采用可编程的并行接口芯片单片机扩展时常采用可编程的并行接口芯片8255A扩展扩展I/O。8255A是是Intel公司生产的可编程输入输出接口芯片,它具有公司生产的可编程输入输出接口芯片,它具有3个个8位位的并行的并行I/O口,具有三种工作方式,可通过程序改变其功能,因而使口,具有三种工作方式,可通过程序改变其功能,因而使用灵活方便,通用性强,可作为单片机与多种外围设备连接时的中用灵活方便,通用性强,可作为单片机与多种外围设备连接时的中间接口电路。间接口电路。54相关知识相关知识 8255是一个是一个40引脚的双列直插式芯片引脚的双列直插式芯片 1)8255的外部引
23、脚和内部结构的外部引脚和内部结构(1)外部引脚)外部引脚55相关知识相关知识PA0PA7:A口的输入输出信号线。口的输入输出信号线。PB0PB7:B口的输入输出信号线。口的输入输出信号线。PC0PC7:C口信号线。口信号线。D0D7:双向数据信号线,用来传送数据和控制字。:双向数据信号线,用来传送数据和控制字。RESET:复位输入信号,高电平有效时,复位:复位输入信号,高电平有效时,复位8255。复位后复位后8255的的A口、口、B口和口和C口均被定为输入。口均被定为输入。A0A1:口地址选择信号线。:口地址选择信号线。56相关知识相关知识 8255内部共有三个口,内部共有三个口,A口、口、B
24、口、口、C口和一个控制寄存器供口和一个控制寄存器供用户编程。用户编程。A1A0取取0011值,可选择值,可选择A、B、C口与控制寄口与控制寄存器,选择方法如下:存器,选择方法如下:57相关知识相关知识 8255A作为主机与外设的连接芯片,必须提供与主机相连的作为主机与外设的连接芯片,必须提供与主机相连的3总总线接口,即数据线、地址线、控制线接口。同时必须具有与外设线接口,即数据线、地址线、控制线接口。同时必须具有与外设连接的接口连接的接口A、B、C口。口。(2)内部结构)内部结构 由于由于8255可编程,所以必须具有逻辑控制部分,因而可编程,所以必须具有逻辑控制部分,因而8255A内内部结构分
25、为三个部分:与部结构分为三个部分:与CPU连接部分、与外设连接部分、控制连接部分、与外设连接部分、控制部分。部分。58相关知识相关知识 为了控制方便,将为了控制方便,将8255的三个口分成的三个口分成A,B两组。其中两组。其中A组包括组包括A口的口的8条口线和条口线和C口的高四位口的高四位PC4PC7。B组包括组包括B口的口的8条口条口线和线和C口的低四位口的低四位PC0PC3。A组和组和B组分别由软件编程来加以组分别由软件编程来加以控制。控制。8255A内部结构图内部结构图59相关知识相关知识 51单片机可以和单片机可以和8255直接连接直接连接 2)8255的扩展逻辑电路的扩展逻辑电路 6
26、0相关知识相关知识 8255有有3种工作方式,这些工作方式可用软件编程来指定。种工作方式,这些工作方式可用软件编程来指定。3)8255的工作方式的工作方式 61相关知识相关知识 各条控制引线的定义如图所示:各条控制引线的定义如图所示:(1)方式)方式0下,下,A口和口和B口均为输出口均为输出A口B口PC7 PC6 PC3 PC2 PC0 PC1 OBFAACKAACKBOBFBINTRAINTRB825562相关知识相关知识 各条控制引线的定义如图所示:各条控制引线的定义如图所示:(2)方式)方式1下,下,A口和口和B口均为输入口均为输入A口B口PC4 PC5 PC3 PC2 PC0 PC1
27、STBASTBBINTRAINTRBIBFAIBFB825563相关知识相关知识 只有只有A口才能工作在方式口才能工作在方式2。A口工作方式口工作方式2时要利用时要利用C口的口的5条线才能实条线才能实现。此时,现。此时,B口只能工作在方式口只能工作在方式0或者方式或者方式1下,而下,而C口剩余的口剩余的3条线可作条线可作为输入线、输出线或为输入线、输出线或B口方式口方式1之下的控制线。之下的控制线。C口提供的控制线如图:口提供的控制线如图:(3)工作方式)工作方式2,又称双向输入输出方式,又称双向输入输出方式I/O操作操作 A口PC4 PC5 PC3 OBFAACKASTBAPC6 PC7 I
28、BFAINTRA825564相关知识相关知识 8255是编程接口芯片,通过控制字(控制寄存器)对其端口的工是编程接口芯片,通过控制字(控制寄存器)对其端口的工作方式和作方式和C口各位的状态进行设置。口各位的状态进行设置。4)8255的控制字及初始化程序的控制字及初始化程序 8255共有两个控制字,一个是工作方式控制字,另一个是共有两个控制字,一个是工作方式控制字,另一个是C口置口置位位/复位控制字。这两个控制字共用一个地址,通过最高位来选复位控制字。这两个控制字共用一个地址,通过最高位来选择使用那个控制字。择使用那个控制字。65相关知识相关知识 主要功能:确定主要功能:确定8255接口的工作方
29、式及数据的传送方向。接口的工作方式及数据的传送方向。(1)工作方式控制字)工作方式控制字0D1D2D3D4D5D6D7D标志位1:方式控制字0:C口置位/复位控制字C口低四位输入还是输出0:输出1:输入B口输入还是输出0:输出1:输入B口工作方式0:方式01:方式1A口输入还是输出0:输出1:输入C口高四位输入还是输出0:输出1:输入A口工作方式00:方式001:方式11:方式266相关知识相关知识 在某些情况下,在某些情况下,C口用来定义控制信号和状态信号,因此口用来定义控制信号和状态信号,因此C口的每一位都可以进行置位或复位。对口的每一位都可以进行置位或复位。对C口的置位或复位是口的置位或
30、复位是由由置位置位/复位控制字复位控制字进行的。进行的。(2)置位)置位/复位控制字复位控制字0D1D2D3D4D5D6D0标 志 位1:方 式 控 制 字2:C口 置 位/复 位 控 制 字未 使 用确 定 对 那 个 位 进 行置 位 或 复 位。000:001:010:011:100:101:110:111:确 定 某 位 置 位 还 是 复 位0:复 位1:置 位PC0PC767相关知识相关知识 8255初始化就是向控制寄存器写入工作方式控制字和初始化就是向控制寄存器写入工作方式控制字和C口置口置位位/复位控制字。复位控制字。(3)8255初始化初始化 68相关知识相关知识例如对例如对8255初始化编程:初始化编程:(a)A、B、C口均为基本口均为基本I/O输出方式。输出方式。(b)A口与上口与上C口为基本口为基本I/O输出方式。输出方式。B口与下口与下C口为基本口为基本I/O输入方式。输入方式。(c)A口为应答口为应答I/O输入方式,输入方式,B口为应答口为应答I/O输出方式。输出方式。则对应汇编程序代码如下:则对应汇编程序代码如下: