基于单片机的专用定时器设计内容摘要:
,ULN2803 相当于一个反相驱动器,其内部具体结构如图 25: R 1R 3R 2图 25 ULN2803 的内部结构ULN2803 的特点:1.最大驱动电流可达 500mA2.反向驱动河南科技大学本科毕业设计(论文)123.需要限流电阻,数码管越多,限流电阻的阻值越小167。 单片机外围接口电路设计167。 发光二极管发光二极管咋两端的电压差超出其导通压降时开始工作,发光二极管的导通压降一般为 ~。 此外,工作电流要满足二极管的工作电流,满足电流和电压的要求,发光二极管就可以发光了。 单片机系统中往往是数字信号,其电源不是 5V 就是 0V,所以只要将二极管的正负极和电源对应上就可以了。 在发光二极管前面要接一个电阻,这个电阻的作用在于限制二极管的电流,从而达到减少功耗或者满足端口对最大电流的限制。 一般二极管的点亮电流为 5mA ~ 10mA,在 5V 电源驱动时,一般多采用470Ω 限流电阻,在该设计中选用 510Ω 电阻,这样既不会超出单片机的 I/O 口最大限流,二极管也比较亮。 167。 键盘模块按键使用上拉电阻方式接入单片机。 未按下时对单片机输入一个高电平,按下后输入一个低电平。 它在这个设计中的作用是调节 TT2 和 T3 的大小。 键的闭合与否,反映在行线输出电压上就是呈现出高电平或低电平,如果高电平表示断开的话,那么低电平则表示闭合,所以通过对行线电平的高低状态的检测,便可以确认按键按下与否,为了确保 CPU 对一次按键动作只确认一次按键,必须消除抖动的影响。 167。 继电器继电器在这个设计中作为输出设备,既是输出该定时时间的中转站。 继电器室一个感性元件,感性元件在使用过程中要加一个保护二极管,然而在上图中并没有这个二极管,不是改图设计不合理,而是在该设计中使用的驱动芯片ULN2803 中已经带有这个保护作用的二极管了。 单片机外围接口电路设计如图 26:河南科技大学本科毕业设计(论文)13R10RES2 R12RES2R8RES2D5LED D4LED D3LED D2LED D1LEDC3CAPC2CAPR11RES2R1RES2R9RES2S6SWPB S5SWPB S2SWPB S1SWPBD6DIODE123J3CON31234J2CON412J1CON2R2RES2R3RES2R4RES2R5RES2R6RES2S4SWPB S3SWPBX1CRYSTALC4ELECTRO1K1RELAYSPDTC110UFR7RES2B1 B2 B3 B4 B5VCCVCCVCCTXDRXDGND C5CAP VCCGNDVCCGND123J4CON3K2RELAYSPDT123J5CON3K3RELAYSPDTVCC 38 35 32EA/VPP 31ALE 30PSEN 29 26 23 21 RST9 XTAL218XTAL119 VSS20U1AT89C52GNDGNDB1B2B3B4B5IN11 IN22 IN33IN44 IN55 IN66IN77 IN88 COM9OUT1 18OUT2 17OUT3 16OUT4 15OUT5 14OUT6 13OUT7 12OUT8 1DIODE 10U2GNDVCCVCCVCCVCCRXDTXDS4S5S6S6 S5 S4 S3 S2 S1图 26 单片机外围接口电路河南科技大学本科毕业设计(论文)14第 3 章 软件设计首先介绍程序中的硬件功能,在进行发光二极管指示程序、按键扫描程序和数码167。 程序中硬件功能介绍167。 电路原理和器件选择1.AT89C52:单片机,控制 LED 的数据显示。 2.LED:两个一位的 7 段码 LED,用于显示单片机的数据。 3.74LS573:锁存器。 4.ULN2803:驱动 LED,相当于反相器。 5.按键 S3: S3=1 时,时间正常运行, S3=0 时开始控制三个时间中的一个,再次让 S3=0 时时间又开始正常运行。 6.按键 S2:当 S2=0 时,每按一次表示时间自减一,当 S2=1 时时间不变。 7.按键 S1:当 S1=0 时,每按一次表示时间自增一,当 S1=1 时时间不变。 8.D1 ~ D5:发光二极管。 167。 地址分配和连接1.、:和 2803 驱动电路确定字位口的地址 0x80、0x40。 2.D0 ~ D7:单片机的数据总线,LED 的显示内容通过数据总线从单片机传到 LED167。 功能简介LED 显示模块与单片机连接中,对 LED 显示模块读写和字位、字段通道的选择是通过单片机的 、 口完成的。 按键 S1 ~ S3 完成按键的复位定时时间的自增和自减功能。 而发光二极管 D1 ~ D5 则反映了定时时间的不同亮灭就不同。 河南科技大学本科毕业设计(论文)15167。 定时器主程序主程序要实现的功能主要有:1.1 ~ 99s 的时间调整。 2.1 ~99min 的时间调整。 3.时间的数码显示。 主程序流程图如图 31:定时器初始化开始设定初值Reload()键扫描LED 二极管显示结束KEY_ST=1。 图 31 主程序流程图部分关键变量的说明如表 31 所示:表 31 部分关键变量说明河南科技大学本科毕业设计(论文)16变量 说明Buff[2] 显示缓冲区( 依次为低位、高位)sec05二极管和继电器状态变量sec05=2 时,定时在 time3,sec05=1 时,定时在 time2,sec05=0 时,定时在 time1。 Index 标示当前显示的数码管和缓冲区的偏移量TableLED[] 共阴极字型编码表Delay() 延时变量sec 剩余时间变量变量和端口的定义如表 32 所示:表 32 变量和端口的定义变量 说明S1 ~ S3 定义 89c52 的 ~ 作为按键的输入管脚L0 ~ L4 定义 89c52 的 ~ 作为发光二极管的输入管脚167。 发光二极管指示程序发光二极管的亮灭指示了此刻数码管显示的时间是三个定时时间中的哪一个。 发光二极管指示程序流主要内容为当显示时间为 T1 时,则发光二极管L0、L3 亮,当显示时间为 T2 时,则发光二极管 LL3 亮,当时间为 T3 时,则发光二极管 LL5 亮。 流程图如图 32 所示:河南科技大学本科毕业设计(论文)17LL3 亮L0、L3 亮L L4 亮T=time1。 T=time2。 T三个数之和。 结束开始YYYYNNNNT=time3。 图 32 发光二极管指示流程图167。 键扫描程序通过三个键 KEY_ST、KEY_UP、KEY_DW 及按键 SSS1 ,来实现三个定时时间即 timetimetime3 的自增和自增及复位功能。 按键扫描程序流程如图 33:河南科技大学本科毕业设计(论文)18延时时间自加 1LED 显示LED 显示时间自减 1KEY_ST 按下?KEY_DW 按下?KEY_SE 按下?KEY_UP 按下?结束开始YNNNYYY图 33 按键扫描程序流程图在该程序的设计中要注意按键的去抖动程序。 按键本身是机械开关,由于机械触点的弹性以及电压突跳等原因,在触点闭合或者是断开的瞬间会出现电压抖河南科技大学本科毕业设计(论文)19动的情况。 在发生抖动时单片机很难判别此时按键是否按下,为此,就需要进行按键的去抖动处理。 去抖动的办法一般有两种:一种是采用硬件电路,另一种是采用软件的时间延时程序以躲过抖动时间,待信号稳定后在进行按键扫描。 在这里采用软件方法去抖动。 167。 数码管显示程序LED 显示器有静态显示和动态扫描显示两种工作方式。 167。 LED 静态显示静态显示就是显示驱动电路具有输出锁存功能,单片机将要显示的数据送出后就不再控制 LED,直到下一次显示时再传送一次新的数据。 只要当前显示的数据没有变化,就无须理睬数码显示管。 静态显示的数据稳定,占用的 CPU 时间少。 静态显示中,每一个显示器都要占用单独具有琐存功能的 I/O 口,该接口用于笔画段字型代码。 这样单片机只要把显示的字型数据代码发送到接口电路,该字段就可以显示要发送的字型。 要显示新的数据时,单片机再发送新的字型码。 1.静态驱动的优/缺点:2.优点是 LED 显示组件间连线非常简洁 ,只需 56 根线即可将所有 LED 串接,调试检修方便。 3.显示亮度好,采用合适的驱动元件可驱动 2 米以下的 LED,适合制作室外大型数字屏。 4.缺点是每个 LED 需要 12 个驱动 IC,需要制作显示组件 PCB 板。 5.功耗稍大(是扫描驱动的 5 倍)。 6.成本稍高(平均每位显示驱动部分成本比扫描驱动要高 元)。 167。 LED 动态扫描显示另一种方法是动态扫描显示。 动态扫描方法是用其接口电路把所有显示器的8 个笔画字段(a~g 和 dp)同名端连在一起,而每一个显示器的公共极 COM 各自独立接受 I/O 线控制。 CPU 向字段输出端口输出字型码时,所有显示器接受相同的字型码,但究竟使那一位则由 I/O 线决定。 动态扫描用分时的方法轮流控制每个河南科技大学本科毕业设计(论文)20显示器的 COM 端,使每个显示器轮流电亮。 在轮流点亮过程中,每位显示器的点亮时间极为短暂,但由于人的视觉暂留现象及发光二极管的余辉效应,给人的印象就是一组稳定的显示数据。 扫描驱动的优/缺点:1.优点是显示驱动电路简单,2 个 IC 即可驱动 8 个 10以下的 LED,成本较低。 2.各种尺寸的 LED 可直接与主控板、驱动板、扩展板连接,甚至可不采用PCB 板。 3.功耗低。 采用分时扫描显示方式,功耗只有静态显示的 1/5。 4.缺点是 LED 至驱动板间的连线较多。 当位数较多时,连线及检修不便。 该设计使用动态扫描显示方式。 采用扫描显示方式,即在某一时刻,只让某一位的位选线处于选通状态,而其他各位的位选线处于关闭状态,同时,段选线上输出相应要显示字符的段码。 这样同一时刻,4 位 LED 中只有选通的那一位字符,而其它三位是熄灭的,同样,在下一时刻,只让下一位的位选线处于选通状态,而其它各位的位选线处于关闭状态,同时,在段选线上输出相应位将要显示字符的段码,则同一时刻,只有选通位显示相应的字符,而其它各位是熄灭的。 如此循环下去,就可以使各位显示出将要显示的字符,虽然这些字符是在不同时刻出现的,但由于 LED 显示器的余辉和人眼的视觉暂留作用,只要每位显示间隔足够短,就可以造成多为同时亮的假象,达到同时亮的假象,达到同时显示的目的。 如何确定 LED 不同位显示的时间间隔,例如对 8 位 LED 显示器,假如显示一位保持 1ms 时间,则显示完所有 8 位后,则需要 8ms。 上述保持 1ms 的时间根据实际情况而定。 不能太短,也不能太长。 定时器 0 中断服务程序,用于数码管的动态扫描,在动态 LED 显示程序中,需要不停的扫描字位口,从而实现不同滋味的数据的动态显示效果。 数码管显示的中断流程如图 34:河南科技大学本科毕业设计(论文)21重置 T0 定时初值T++指定字形口查表得字型码送字位码结束开始中断1S 到。 图 34 数码管显示的中断流程图河南科技大学本科毕业设计(论文)22第 4 章 统软件调试与仿真167。 应用 KEIL 软件进行程序调试软件的调试必须在开发系统的支持下进行。 先调试通过各个模块,然后调试中断服务程序,最后调试主程序,将各部分连接进行调试。 调试的范围可由大到小、逐步增加,必要的中间信号可以先做设定。 通常交叉使用单步运行、断点运行、连续运行等多种方式,每次执行完毕后,检查 CPU 执行现场、RAM 的有关内容、I/O 接口的状态,发现一个问题解决一个问题,直到全部通过。 在调试时,生成 HEX 文件,通过 ISIS 软件进行仿真。 发光二极管的程序调试界面如图 41所示。 图 41 发光二极管的程序调试由图中程序运行可知,当 sec05=2 时,L2 和 L4 处于低电平,即 L2=0,L4=,此时 L2 和 L4 为低电平,因此程序正确。 河南科技大学本科毕业设计(论文)23数码管调试界面如图 42 所示。 图 42 数码管调试界面图中输出段 P0 为段选端,输出字位码, P2 为位选端,指示哪一位数码管显示。 首先 CPU 指定字形口,再通过 P0 段输出字位码,然后 CPU 通过 P2 口指定哪一位数码管显示。 图示所输出的数字为 5,位数为十位。 对各个模块调试完毕后,再对总程序进行调试。 通过观察发光二极管的输出端的高低电平所显示出来灯的亮灭来观察是否真确,通过观察数码管的 P0 和 P2 输出端,来判断显示的数字和字位是否正确,最后通过按键调节来观察数码管的输出端和发光二极管的输出端的高低电平情况。 通过观察由调试结果可知,程序能够运行通过,能够基本实现各个功能。 总体程序调试如图 43 所示。 河南科技大学本科毕业设计(论文)24图 43 总程序调试界面16。基于单片机的专用定时器设计
相关推荐
5 00n nns 0n — 同步转速 常用改变转差率的方法有改变定子电压调速、采用滑差电动机调速、转子电路串电阻调速、串级调速以及脉冲调速。 前两种方法适合于笼型异步电动机,后者适合于烧线式异步电动机。 这些方案共同的特点是在调速过程中均产生大量的转差功率 ,并且消耗在转子电路,使转子发热。 在不计定子绕组铜耗条件下, η 变转差率调速系统最大可能的效率η定义为输出机械功率
Sn:380CM 外壳材料:塑料 检测物体:透明或不透明体 AT89C52 部分 AT89C52 是 51 系列 单片机 的一个型号,它是 ATMEL 公司生产的。 AT89C52 是一个低电压,高性能 CMOS 8 位单片机,片内含 8k bytes 的可反复擦写的 Flash 只读程序存储器和 256 bytes 的随机存取数据存储器( RAM),器件采用 ATMEL 公司的高密度
P 1 .7 S E T B P L AY2 P 0 .2 , JB R E C 6 S T OP , J NB :P L AY2 P 0 .0 S E T B I S DX AC AL L OF OH A, MOV P 1 .7 C L R :P L AY1 P 0 .0 S E T B I S DX AC AL L 22H A, MOV I S DX AC AL L 21H A, MOV I
设 计计 10 作用。 555 定时器性能比较好,只要 少 接上几个电阻、电容 就能构成多谐振荡器、单稳态触发器以及施密特触发器等脉冲产生与变换电路,经常用于仪器仪表、电子测量等方面。 此设计测量的原理就是,利用 555 定时器外加几个电阻、电容或电感,生成多谐振荡器。 ( C1为比较器 1, C2 为比较器 2)。 Vcc( 8脚):接 正 电源。 一般为 ~15V。 GND( 1脚):接地。
转旋转。 该电路板应该越轻越好,器件可使用贴片式的。 首先要计算旋转时钟的周长和半径。 选用直径为3mm的发光二极管组成一列,这样最外侧的发光二极管旋转一周经过的显示位置有60个。 为了在显示时每分钟之间有一个间隔,我们在每分钟之间引入一个1mm空隙,如图4所示,于是得到旋转的周长C=603mm+591mm=239mm,可得半径R=38mm。 得到半径后
要一个最基本的微处理系统就可以通过ST7920芯片来控制其它的芯片。 ST7920的主要技术参数和显示特性如下:电源:VDD (~+)+5V(内置升压电路,一般无需负压);功耗:正常模式:450μA,睡眠模式:3μA,低功耗模式:30μA;显示内容:128列 64行;显示颜色:黄绿;显示角度:6:00钟直视;LCD类型:STN;与MCU接口:A位并行/3位串行;配置有LED背光显示功能