- 博客(0)
- 资源 (4)
- 收藏
- 关注
多路交通灯控制系统设计
;主程序:
ORG 0000H
AJMP MAIN
ORG 0030H
MAIN: MOV SP,#60H
MOV SCON,#00H ;设置串行口工作方式为方式0
CLR TI
CLR RI
MOV A,#09H ;置初态,东南西北都为红灯亮
MOV P1,A
MOV R2,#4
LCALL DELAY ; 调用4次1秒的延时子程序
H1:MOV A,#0CH ;东西绿灯亮,南北红灯亮
MOV P1,A
MOV R2,#10
LCALL DELAY ;调用10次1秒的延时子程序
MOV R7,#03H ;黄灯闪烁次数为3次
H2:MOV A,#0AH ;东西黄灯闪,南北红灯亮
MOV P1,A
MOV R2,#1
LCALL DELAY ;每1秒闪烁一次
MOV A,#18H ;南北红灯亮,南北黄灯也闪
MOV P1,A
MOV R2,#1
LCALL DELAY ;调用1秒的延时子程序
DJNZ R7,H2 ;判断闪烁次数是否达到
MOV A,#21H ;东西红灯亮,南北绿灯亮
MOV P1,A
MOV R2,#10 ;
LCALL DELAY ;延时10秒
MOV R7,#03H
H3:MOV A,#11H ;东西红灯亮,南北黄灯闪
MOV P1,A
MOV R2,#1
LCALL DELAY
MOV A,#03H ;东西红灯亮,东西黄灯闪
MOV P1,A
MOV R2,#1
LCALL DELAY
DJNZ R7,H3 ;判断黄灯闪的次数是否达到
LJMP H1 ;循环
;1秒的延时子程序:
DELAY: MOV R3,#20 ;定时1秒
MOV TMOD,#10H ;T1定时器,方式1
MOV TH1,#3CH
MOV TL1,#0B0H
SETB TR1
LOOP: JBC TF1,NEXT
SJMP LOOP
NEXT: MOV TL1,#080H
MOV TH1,#3CH
DJNZ R3,LOOP
;数据传送:
DEC R2 ;R2自动减1
MOV DPTR,#CDATA ;置表初地址
MOV A,R2 ;屏蔽R2的高位
SWAP A
ANL A,#0FH ;
MOVC A,@A+DPTR ;读表格数据
CPL A ;取反
MOV SBUF ,A ;串行发送数据
AA1: JBC TI,A1 ;
SJMP AA1
A1: MOV A,R2
ANL A,#0FH
MOVC A ,@A+DPTR ;
CPL A
MOV SBUF ,A
AAB1: JBC TI,AB1 ;
SJMP AAB1
AB1: CJNE R2,#00H,DELAY ;当R2为0时返回,不为0时,则跳转
RET
CDATA: DB 03H,9FH,25H,0DH,99H,49H,41H,1FH,01H,09H
END
2010-06-24
多路抢答器的设计(单片机)
抢答器的一般构成框图如图1.1所示。它主要由开关阵列电路、触发锁存电路、编码器、7段显示器几部分组成。下面逐一给予介绍。
图1.1 抢答器的组成框图
(1)开关阵列电路
该电路由多路开关所组成,每一竞赛者与一组开关相对应。开关应为常开型,当按下开关时,开关闭合;当松开开关时,开关自动弹出断开。
(2)触发锁存电路
当某一开关首先按下时,触发锁存电路被触发,在输出端产生相应的开关电平信息,同时为防止其它开关随后触发而产生紊乱,最先产生的输出电平变化又反过来将触发电路锁定。若有多个开关同时按下时,则在它们之间存在着随机竞争的问题,结果可能是它们中的任一个产生有效输出。
(3)编码器
编码器的作用是将某一开关信息转化为相应的8421BCD码,以提供数字显示电路所需要的编码输入。
(4)7段显示译码器
译码驱动电路将编码器输出的8421BCD码转换为数码管需要的逻辑状态,并且为保证数码管正常工作提供足够的工作电流。
(5)数码显示器
数码管通常有发光二极管(LED)数码管和液晶(LCD)数码管。本设计提供的为LED数码管。
2010-06-24
基于单片机频率计的设计
频率的测量实际上就是在1s时间内对信号进行计数,计数值就是信号频率。用单片机设计频率计通常采用两种办法,第一种方法是使用单片机自带的计数器对输入脉冲进行计数;第二种方法是单片机外部使用计数器对脉冲信号进行计数,计数值再由单片机读取。第一种方法的好处是设计出的频率计系统结构和程序编写简单,成本低廉,不需要外部计数器,直接利用所给的单片机最小系统就可以实现。这种方法的缺陷是受限于单片机计数的晶振频率,输入的时钟频率通常是单片机晶振频率的几分之一甚至是几十分之一,在本次设计使用的98C51单片机,由于检测一个由“1”到“0”的跳变需要两个机器周期,前一个机器周期测出“1”,后一个周期测出“0”。故输入时钟信号的最高频率不得超过单片机晶振频率的二十四分之一。第二种方法的好处是输入的时钟信号频率可以不受单片机晶振频率的限制,可以对相对较高频率进行测量,但缺点是成本比第一种方法高,设计出来的系统结构和程序也比较复杂。由于成本有限,本次设计中采用第一种方法,因此输入的时钟信号最高频率不得高于11.0592MHz/24=460.8KHz。对外部脉冲的占空比无特殊要求。
根据频率检测的原理,很容易想到利用51单片机的T0、T1两个定时/计数器,一个用来定时,另一个用来计数,两者均应该工作在中断方式,一个中断用于1s时间的中断处理,一个中断用于对频率脉冲的计数溢出处理,(对另一个计数单元加一),此方法可以弥补计数器最多只能计数65536的不足。
2010-06-24
数字温度计(单片机原理)
随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中数字温度计就是一个典型的例子,但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从数单片机技术入手,一切向着数字化控制,智能化控制方向发展。
本设计所介绍的数字温度计与传统的温度计相比,具有读数方便,测温范围广,测温准确,其输出温度采用数字显示,主要用于对测温比较准确的场所,或科研实验室使用,该设计控制器使用单片机AT89S51,测温传感器使用DS18B20,用3位共阳极LED数码管以串口传送数据,实现温度显示,能准确达到以上要求
2010-06-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅