课程设计-基于at89s52单片机的电子密码锁内容摘要:
命名为 H1H4, 4 条 L 线与 4 条 H 线交叉构成 4x4 键盘,其中四条 H 线还经过四个二极管构成简单的四输入与门电路,二极管的阳极(四输入与门的输出),经过 J7 插针开关接入 P32 引脚,做为中断 7 触发。 如果引入中断,程序初始化时, L1L3 保持低电平, H1H4 保持高电平,即 P0 口输出 0xF0H, 当有按键被按下时,其中的一条 L 线将其中的一条 H 线拉为低电平,同时 H 线经过二极管连接到 P32(INT0 中断 )脚,触发中断 ,利用中断程序再扫描 P0 口数据来判断哪个键被按下做相应处理。 也 可不用中断,将 J7 插针断开,直接由主程序分时的去扫描按键。 利不利用中断,就看你程序怎样 要求了。 P0 口: 7 位 6 位 5 位 4 位 3 位 2 位 1 位 0 位 对应表 H4 H3 H2 H1 L4 L3 L2 L1 扫描键盘方法:如上表,先将 P0 口输出 0xFE(11111110B),即 L1 线为低电平,检测 0, 4, 8, C 四个按键是否有按下,如果 4 键按下,则读回来的 P0 数据为 0xBE( 10111110B) ,C 键按下是 0xEE ( 11101110B),有键按下保存 P0 口数据将不在继续扫描,否则读回的 P0 口数据不变,还是 0XFE, 将接着扫描 L2 线, P0 口再输出 0XFD( 11111101B),检则 1, 5, 9, D 四个按键,与上相同,直到 扫描完四列按键。 刚才是一 列一列扫描,也可以一行一行扫描,即先扫描第一行( 0、 3 四个按键),将 P0 输出 0X7F(01111111B),再读回数据做处理。 电脑键盘接口:本板使用圆口键盘接口,如下图表,圆口接口为 6 个引脚,其中两脚未用 保留,两个电源引脚,两个通讯数据引脚。 下图为板子原理图,接口的 5 脚( CLOK 脚)和 1 脚( DATA 脚)分别引入 P32(INT0 中断 )脚 和 P33 脚。 此接口在电路上比较简单,直接接入 IO 口,无外围电路。 8 数码显示模块 数码管 电路使用了两个 4 位数码管组合 成 8 位,两个数码管的同一段脚接在一起。 数码管的段值由 P2 口经 74HC245 作电流放大输出。 数码管为共阴型,要使数码管点亮, P2 口得输出高电平。 数码管位的选择由 74HC138 来处理( 74HC138 为 38 译码器), 138 的输入由 P10P12( 000111) 译码出八线接入数码管位选择引脚, 138 输出的八线同一时刻只有一线为低电平,即每次只选择其 中一位数码管显示。 显示两位或更多位时需要动态扫描技术了,利用快速的循环显示,人眼看到的 就是多位了(电视图像、电脑显示器都是扫描生成的)。 电路中的 JSM 插针开关,是控制 138 的 SA 脚,短接时 SA 为低电平,138 不做译码,输出八线 全为高电平而关闭数码管显示。 断开 JSM 插针 SA 经 R41 接入 VCC 为高电平, 138 正常工作。 9 数码管电路图 动作模块 蜂鸣器 单片机 P34 脚输出高低电平通过 J3 经 R31 限流加在三极管 B 极,控制三极管的导通与截止, 从而控制蜂鸣器的工作。 与继电器控制一样,低电平时三极管导通,蜂鸣器得电蜂鸣,高电平时三 极管截止,蜂鸣器失电关闭蜂鸣。 可 断开 J3 不受 P34 控制,也可引入其它 IO 口。 10 继电器 由 P35 引脚输出高低电平通过 J5 插针再经 R21 限流控制三极管的导通与截止(三极管为 PNP, 低电平导通,高电平截止), LED 可显示通断状态,从而控制继电器的吸合与释放,继电器的输出 端采用分离式,即输出端不与内电路连接,直接连接端子,可控制更高电压设备的开关,建议不要 使用超出安全电压 50V 设备。 图上的 J5 插针可断开 P35 控制,也可使用单芯线引 入其它 IO 口。 硬件元件清单 系统元器件清单 见表 2。 表 2 系统元器件清单 器件 数量 器件 数量 11 AT89S52 1 数据线 1 独立键盘 1 4*4 矩阵键盘 1 数码管 1 蜂鸣器 1 继电器 1 下载线 1 74LS138 1 74HC245 1 开关 2 红色 LED 8 、 12 结束语 本论文基于单片机设计了 可预设电压的数控电源 ,并对其进行了 仿真分析。 本设计特点: 用 AT89S52 单片机通过软件编程实现,而不是通过调节电阻改变分压来实现,这样节省了硬件资源,降低了成本 ; 由于使用的是单片。课程设计-基于at89s52单片机的电子密码锁
相关推荐
能 11 重定位处跳转过来的,应重启程序。 以下几个按键的处理程序段开头也有类似的 BUFF 值检测,不再做赘述。 如果密码长度小于等于 2,则密码太短,不进行任何比较,直接清空缓冲区重新检测,可节省程序运行时间。 开锁键处理 该程序段是程序识别到开锁键被按下后的流程,如图 46 所示。 此段并不需校验密码,这里只需检查密码正确标志位PSW_F 的状态。 如果 PSW_F=1
//数据初始化 void Data_Init() { price = 0。 DotPos = 0。 beep = 1。 alert = 1。 } //管脚配置 void Port_Init() { } //定时器 0 初始化 void Timer0_Init() { ET0 = 1。 //允许定时器 0 中断 TMOD = 1。 //定时器工作方 式选择 TL0 = 0x06。 TH0 =
3。 低功耗电流,适合于电池供电 低输入偏流 低输入失调电压和失调电流 共模 输入电压范围 宽,包括接地 差模输入电压范围宽 ,等于电源电压范围 输出电压摆幅大 (0 至 ) 该装置电路原理见图 1。 由 红外线传感器 、信号放大电路、电压比较器、延时电路和音响报警电路等组成。 红外线探测传感器 IC1探测到前方人体辐射出的红外线信号时,由 IC1 的 ② 脚输出微弱的电信号,经三极管 VT1
( 7) 仿真电路图: 图 3 未校正时仿真电路图 仿真结果: 10 比 例微 分积 分 执 行 机 构 对 象r ( t )+++u ( t )c ( t )e ( t ) 图 4 仿真结果 由仿真结果可得,波形不符合要求,所以引入 PID 算法进行校正。 PID 算法 控制算法是 微机化控制系统的一个重要组成部分,整个系统的控制功能主要由控制算法来实现。 目前提出的控制算法有很多。
倒角 10 铣键槽 铣宽 12 键槽;铣宽 8 键槽 11 淬火 12 粗磨 粗磨φ 46 外圆;粗磨φ 35外圆;调头粗磨φ 35 13 精磨 精磨φ 46 外圆;精磨φ 外圆;调头精磨φ 外圆 14 检验 工序尺寸确定 加工表面 工序名称 工序余量 余量来源 工序尺寸 “() ”内分别为上下偏差 精度等级 Φ 62 精车 表 810 Φ 62 半精车 2 表 89 Φ ( 0, ) IT9
作。 外接 12M 的晶振和两个 30pF 电容组成系统的内部时钟电路,其中电容主要起到滤波、微调以及利用其充放电过程帮助单片机晶振启振的作用 [1]。 对于单片机的 P0 口,可以作为地址 /数据总线使用,也可以作为一般的 I/O口使用。 但当其作为 I/O 使用时,由于输出属于开漏电路,无上拉电阻故也无法进行高低电平的操作,此时必须接上拉电阻,一般阻值选为 10K。 但 P0