北邮单片机实验报告(电子密码锁)

上传人:1666****666 文档编号:37449229 上传时间:2021-11-03 格式:DOC 页数:43 大小:683.50KB
收藏 版权申诉 举报 下载
北邮单片机实验报告(电子密码锁)_第1页
第1页 / 共43页
北邮单片机实验报告(电子密码锁)_第2页
第2页 / 共43页
北邮单片机实验报告(电子密码锁)_第3页
第3页 / 共43页
资源描述:

《北邮单片机实验报告(电子密码锁)》由会员分享,可在线阅读,更多相关《北邮单片机实验报告(电子密码锁)(43页珍藏版)》请在装配图网上搜索。

1、 xx班xx号xx单片机设计实验报告2015年小学期单片机设计实验报告 题目:基于PIC单片机的电子密码锁 班 级: 班内序号: 实验组号: 学生姓名: 指导教师: 期中检查教师评语指导教师签字: 年 月 日基于PIC单片机的电子密码锁 xx班 xx实验摘要 在日常的生活和工作中, 住宅与部门的安全防范、单位的文件档案、财务报表以及一些个人资料的保存多以加锁的办法来解决。若使用传统的机械式钥匙开锁,人们常需携带多把钥匙, 使用极不方便, 且钥匙丢失后安全性即大打折扣。随着科学技术的不断发展,人们对日常生活中的安全保险器件的要求越来越高。为满足人们对锁的使用要求,增加其安全性,用密码代替钥匙的密

2、码锁应运而生。密码锁具有安全性高、成本低、功耗低、易操作等优点。 在安全技术防范领域,具有防盗报警功能的电子密码锁逐渐代替传统的机械式密码锁,克服了机械式密码锁密码量少、安全性能差的缺点,使密码锁无论在技术上还是在性能上都大大提高一步。随着大规模集成电路技术的发展,特别是单片机的问世,出现了带微处理器的智能密码锁,它除具有电子密码锁的功能外,还引入了智能化管理、专家分析系统等功能,从而使密码锁具有很高的安全性、可靠性,应用日益广泛。 设计本课题时构思的方案是用以PIC16F877为核心的单片机控制方案。 目前使用的电子密码锁大部分是基于单片机技术,以单片机为主要器件,其编码器与解码器的生成为软

3、件方式。本系统由16F877单片机系统(美国微芯Microchip 公司推出的高性能单片机)、44矩阵键盘、LCD1602显示和报警系统等组成,具有设置、修改四位用户密码、输入提示、密码错误报警等功能 。本系统成本低廉,功能实用。 AbstractReplace the lock on the preservation of the safety precautions in their daily life and work, housing and department, unit files, financial statements, and some personal informa

4、tion to lock approach to solve. If the use of traditional mechanical key in the lock, people often need to carry multiple keys, use very inconvenient, and the loss of key security that is greatly reduced. Along with the science and technology unceasing development, people daily life safety insurance

5、 device requirements more and more high. In order to meet the people on the requirements and increase the security of password key password lock shipped. Password lock is safe, low cost and power consumption is low, easy to operate and When the advent of the shortcomings of less type. In the securit

6、y technology to guard against, with anti-theft alarm function electronic password lock gradually replace the traditional mechanical cipher lock, overcome the mechanical password lock, safety performance is poor, the password lock both in technology and in performance are greatly improved step. With

7、large scale integrated circuit technology development, in particular, is a single chip, the microprocessor intelligent password lock, which is in addition to the electronic password lock function, but also introduced the intelligent management, expert analysis system and other functions, which enabl

8、e password lock has a high safety and reliability, is applied more and more widely. This design topic conception scheme Is used to PIC16F877 as the core of the microcontroller control program.At present, most of the electronic password lock is based on SCM technology, with the single chip microcompu

9、ter as the main device, the encoder and decoder are generated as the software.The functions of this system by 16F877 microcontroller system (American microchip microchip company launched high performance microcontroller), 4 * 4 matrix keyboard, LCD1602 display and alarm system, has set up, modify th

10、e four user password, input prompt, wrong password alarm etc. The system into the low, functional and practical.关键字单片机microcontroller 密码锁Password lockLCD1602LCD1602 4*4矩阵键盘4*4 matrix keyboard1. 实验论证与比较1.实验总体方案的确定 本系统电子密码锁的设计主要由4部分组成:PIC16F877单片机,44 矩阵键盘接口电路,LCD1602液晶显示以及LED提示灯。本实验的核心是编写程序,实验中采用汇编语言,

11、通过软件MPLAB进行程序的烧写,将一块块的子程序进行嵌套最终融合起来成为整个项目的完整程序。为了实现密码的保密性,采用一个44的矩阵式键盘来提高密码的保密性。采用LCD1602液晶显示器来作为显示单元,提高了可读性,使用户对密码锁的运行情况一目了然。 2.PIC16F877系列单片机简介PIC16F87X ( 含873P874P876P877) 是美国微芯(Microchip) 公司推出的高性能单片机,除具有单片机的通用资源外,该系列单片机还采用哈佛总线结构、二级指令流水线取指方式、精简指令集(RISC)和内部具有E2 PROM 数据存储器及FLASH 结构的程序存储器、仅35 条单字节单周

12、期指令、在系统串行编程技术和在线调试技术。 因此采用该系列单片机的产品具有低成本、低功耗、高速度、高可靠性、体积小、性价比高等特点。 其芯片引脚图如图1所示。 另外,它内部的EEPROM 数据存储器不仅具有掉电保护数据的功能,更重要的是它的读写操作均是由单片机内部时序控制,即外部电路无法对其进行访问, 因而具有极高的数据保密性,这使得PIC16F87X在加密性产品如智能IC 卡、密码锁、电子防盗系统等方面有很广泛的应用。2. 系统总体设计本设计主要由单片机、矩阵键盘和液晶显示器等部分组成。其中矩阵键盘用于输入数字密码和进行各种功能的实现。由用户通过连接单片机的矩阵键盘输入密码,后经过单片机对用

13、户输入的密码与自己保存的密码进行对比,从而判断密码是否正确,然后控制引脚的高低电平传到开锁电路或者报警电路控制开锁还是报警,实际使用时只要将单片机的负载换成电子密码锁的电磁铁吸合线圈即可。1.系统模块总体框图:键盘电路单片机 16F877电源电路LCD显示电路复位电路LED报警电路晶振电路1.1 电源电路模块从电源插座进来的是9V直流电,经一片三端稳压器,将其转换为5V的稳定电压。电源滤波的重要性,一个电路板的滤波特性如果不好,严重时将会影响整个电路板不能正常工作。所以要注意一个大电容和一个小电容并联滤波,电源线要粗,走线要合理,模拟电路最好大面积接地。其主要作用是为电路提供工作电压,保证电路

14、正常工作。1.2 复位电路模块主要是用于人工复位。1.3 晶振电路模块Osc1 5vGND 空Osc1 5vGND 空Osc1 5vGND 空Osc1 5vGND 空主要是为单片机工作提供适当的工作频率。1.4 4*4矩阵键盘输入模块的设计 VCC R1 R2 R3 R4行线 4.7k 4.7k 4.7k 4.7k3行RD7 1 2 3 42行 RD6 5 6 7 8 1行RD5 9 0 A B0行 RD4 C D E F 列线 RB3 RB2 RB1 RB0 3列 2列 1列 0列键盘采用4* 4矩阵键盘 ,行线连接到RD端口,列线连接到RB接口。行列式键盘,由横竖两排线路组成,每个行与列的

15、交叉点有一个按键,当键盘按下时就将相互交叉的两条导通,能够有效地提高单片机系统中I/O口的利用率。 其中R1-R4是上拉电阻,16 个键分别为09 的数字键及AF 的功能键,F键则表示密码重置。键盘主要用于输入密码或进行功能、状态切换。1.5 LCD1602液晶显示模块的设计 本系统设计的显示电路是为了给使用者以提示而设置的为了达到界面友好的目的,显示部分由液晶显示器LCD1602取代普通的数码管完成。开锁时,按下键盘上的开锁按键后,利用键盘上的数字键09输入密码,每按下一个数字键后在显示器上显示一个*,输入多少位就显示多少个*。当密码输入完成时,如果输入的密码正确的话, LCD显示“SUCC

16、ESS”;如果密码不正确,LCD显示屏会显示“5 TIMES LEFT”, 若5次输入都不正确,则LCD显示“5 TIMES FAILED ”“LOCKED 10S”。当按下F键重置密码时,LCD显示“PLEASE RESET”“OLD”,输入正确旧密码之后,LCD显示“NEW”,再输入新密码即可。1.5.1 LCD1602A液晶显示屏接线图 1 VSS VDD 2 VDD 3 VL RE0 4 RS 5 R/W RE1 6 EN RD0 7 D0 RD1 8 D1 RD2 9 D2 RD3 10 D3 RD4 11 D4 RD5 12 D5 RD6 13 D6 RD7 14 D7 15 LE

17、D+ VCC 16 LED- 编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6EN使能信号14D7数据7D0数据15LED+背光源正极8D1数据16LED-背光源负极1.5.2引脚功能引脚说明:第1脚:VSS为地电源。第2脚:VDD接5V正电源。第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时产生“鬼影”,使用时通过一个10K的电位器调整对比度。第4脚:RS为寄存器选择,高电平时选数据寄存器、低电平时选指令寄存器。第5脚:R

18、/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。第15脚:背光源正极。第16脚:背光源负极。 1.5.3 时序读状态输入RS=L,R/W=H,E=H输出D0D7=状态字写指令输入RS=L,R/W=L,D0D7=指令码,E=高脉冲输出无读数据输入RS=H,R/W=H,E=H输出D0D7=数据写数据输入RS=H,R/W=L,D0D7=数据,E

19、=高脉冲输出无说明:LCD通过RS,RW,E三个控制线来控制显示屏的读写命令,由于本实验中只需要写命令与写数据两种方式,以下是两种方式下三个引脚的电平状态写命令RS R/WDB0 DB1 DB2 DB3 DB4 DB5 DB6 DB70 0 数 据写数据RS R/WDB0 DB1 DB2 DB3 DB4 DB5 DB6 DB71 0 数 据1.6 LED灯报警电路主要用于密码输入时,显示已输入。当密码输入正确则灯一直亮,输入错误则一直闪烁,提醒用户。3 硬件连接硬件连接仿真图如下所示:四系统软件设计 系统的软件设计采用汇编语言编码。1. 系统主程序 系统主程序如下图所示,用户在使用系统的过程中

20、可能在任何时刻按下任何按键,而程序必须对此作出正确响应。 开始 旧密码输入 初始化 新密码输入 存入缓存区检测键盘是否有按键按下 NO 再次输入密码 重新输入 YES 设置完返开始模式选择 F 其他识别按键 N 手动清除 密码输入 灯提示 Y N reset 密码比较 灯提示 报警 开门 2.初始化及按键识别 系统的初始化包括堆栈起始地址的设定,两个定时/计数器的设定,液晶显示模式的设定,密码缓冲区的初始化,一些自定义数据空间的初始化。 系统初始化并读取密码完成后,液晶显 Password Control,提示用户可以输入密码。此时程序即不断测试按键,检查是否有按键被按下。如果有,则进行按键识

21、别;如果没有按键按下,或者按下的按键没有被识别,R3赋值0FFH,并跳转至按键测试。实际程序运行时,绝大部分时间都在测试按键,等待用户输入。 开始 按键测试子程序 否 系统初始化 有键按下 延时0.5S 是 读取密码 按键识别子程序 载入 否 否初始密码 读取成功 识别成功 是 是 提示输入密码 按键重定位矩阵键盘的操作实际上分为两个任务,一是检测是否有按键按下,二是识别被按下的键是哪一个,这里采用的是反转扫描法,可以同时完成上述两项任务。其基本思路是,先让行线全输出逻辑0,然后读取列线,得到与按键横向位置对应的4位列码。如果有键被按下,则对应的列线必然会被读回逻辑0;如果无键被按下,则读取的

22、列码必定为全1.当有键按下时,先从列线上读取列码;再从列线输出,然后再读取行线,得到与按键纵向位置对应的4位行码。最后,将先后两次读到的行码和列码组合在一起,就构成了可以准确确定按键位置的位置码。为了防止干扰或者误操作,软件中设置了延时抖动功能。键盘扫描主程序如下所示: 主程序 设置RC口为输出 设置RB口为输入 点亮RC口D7-D4在RAM中建立位置码表 调用键盘扫描子程序 调用键值翻译子程序 N 检测有键按下否 键值送显D3-D0 Y 预置时间常数为13 预置时间常数为117 调用延时子程序 调用延时子程序 再调键盘扫描子程序令发光管D7-D4闪烁 N N 检测有键按下否 检测按键释放否

23、Y Y 键盘扫描子程序 键值翻译子程序 启用RB上拉电阻 表头地址送FSR 设置RB口出,RC口入 FSR指定单元内容送W 行线全输出低电平 比较W和VALUE 读取列线的4位列码 是否相等 Y N 屏蔽掉高4为后送VALUE FSR递增 N 有键按下否 已查到表尾了吗 N Y Y 再设置RC口出,RB口入 将特殊值FFH送FSR 列码从列线输出 子程序返回 读取行线的4位行码FSR减表头地址得键值 屏蔽掉低4位 子程序返回 组合到VALUE中 子程序返回 送FFH到VALUE 子程序返回3. 开锁处理 首先LCD初始化,输入密码,密码正确则使开锁电路动作,继电器得电,开锁指示灯亮。开锁程序流

24、程图如图4.3所示。 开锁 LCD初始化 输入密码 确认程序 N 输入密码正确 报警程序 Y 开锁成功 返回 4.改密处理改密键的处理流程跟开锁键类似,都需检查密码是否正确,错误的话,提示重新输入,只有输入密码正确才可以进行改密。然后再按更改键, 密码更改程序被调用,进而更改密码,此过程,LCD都会显示信息。 开始 否 密码正确 密码错误 重新输入 是 否 提示输入新密码 再次输入新密码 对比两次输入相同 是 更改成功 5.液晶显示子程序 液晶显示子程序在每次更新显示内容时都会被调用,其流程如图4.5所示。每次更新显示内容前,需清显示清空LCD原先的显示内容,清屏指令的指令码为01H,即将P0

25、口赋值01H,然后写入指令寄存器IR。 LCD1602要显示的内容是根据其控制器内置的字符码表,事先列出要显示的ASCII字符串。每次送一个字符的ASCII码入P0口,然后写入数据寄存器DR,最后将字符地址加一,LCD1602会将写入的ASCII码对应的字符依次显示出来。由于显示字符串的长度不尽相同,约定每串字符以00H结尾;程序检测到字符码为00H时,即停止写入,返回。LCD显示的内容在下次更新前会一直保持。 开始清除显示屏写指令入IR 字符地址如DPTR地址+1 否字符=00H? 字符代码送入P0口 写数据如DR 是 写结束 返回五仿真调试与测试程序开始就进入main,执行初始设置后,进行

26、LCD屏幕初始化。单片机就开始执行键盘扫描是否有输入阶段,根据采集到的键盘信息,做出分析,进行密码重置或者输入密码比较。调试过程中我遇到了很多问题,也就是在这些问题中,逐渐学会了MPLAB的使用和用汇编语言编程。在此,列举几个调试过程中比较典型的问题。1. 对RB引脚的理解不到位 刚开始学单片机的时候,没有学到家,翻看过的内容,也只是记得一些皮毛,没有做到较为深刻或者说是真正的理解。我们按照书上的做法,将RB0-RB7作为矩阵键盘的连接引脚,一整天下来发现结果不尽如人意。后来在葛老师的悉心提示下,用引脚RD4-RD7代替了引脚RB4-RB7,矩阵键盘得以成功输入。这个小波折告诉我,知识的积累和

27、掌握不能仅仅依靠课本,还要结合实践进一步理解,这样才能加深印象,融会贯通,也只有这样才能真正学以致用。2.无法完成矩阵键盘扫描 在小学期初期阶段,我和小组搭档都在看老师推荐的2本书,进行单片机与汇编语言的学习。通过实现矩阵键盘扫描来熟悉单片机的应用。然而,在汇编程序、各种仪器都正确的情况下,矩阵键盘扫描结果并不理想。最后,我们决定重新搭一遍电路,问题得以解决。3.对LCD屏幕初始化不能完成 刚开始学单片机以及汇编语言的时候,翻看过的内容,也只是记得一点点皮毛,没有真正的理解。特别是看手册时看不懂,学校发的两本书上并没有LCD初始化的程序。所以请教已经成功LCD初始化的同学,同学告诉我,手册上有

28、初始化的过程,需要认真看看。 看了半天,在编程的过程中调试build all时,有出现了一些error,通过改正,build all 终于成功,显示success,初始化程序完成 。4. 软硬件综合调试 分模块仿真与调试时,没有任何问题,均可实现理想的功能。然而综合起来之后,出现了各种问题。在小学期尾声阶段,我们专注于综合调试,解决各种琐碎的问题,其间不乏各种挫折,甚至都有想过放弃,好在我们互相鼓励,并在老师的指导下完成了综合调试。六.总结 一、在小学期以前我对单片机没有任何概念。在刚刚接触到单片机时,我可以说是一窍不通,甚至对于单片机究竟是什么也不能很精确地表达出来。经过网上查询以及了解,定

29、下几个想做的目标,经过一个个筛选,最后确定我们做一个密码锁。二、两周单片机的学习让我增强了自信心。学习单片机的过程中,我也不是没有怀疑过自己的能力,而是我在学习的过程中,从对单片机的一无所知,对繁琐的汇编语言的畏惧,到一步一步进行单步调试,再到能够发现问题并经过思考来解决问题,我感觉到自己在进步,也感受到只要每天努力一点点,希望就会再接近一点点,离成功的距离也就会再接近一点点,也就是这些一点点的努力和距离告诉我要继续坚持,告诉我要相信自己,因为只有相信自己,不断努力,才能战胜自己的弱势,得到自己想要的结果。三、通过本次设计,我不仅巩固和加深理论课上所学的知识,而且锻炼了分析问题和解决问题的能力

30、,遇到问题能够冷静理性应对;同时培养了良好的工作习惯和科学素养,为以后参加工作打下了一定的基础。同时认识到慢工出细活,过程是很重要的,只有耐心细心努力地去把握过程,才能得到理想的结果。除此之外,也学会了合理高效地与人合作。最后,在这里要特别感谢指导老师葛老师,小组搭档以及实验室的同学们,如果没有你们给予的各种帮助和鼓励,我是不可能凭借一己之力完成本实验的。七参考文献 PIC单片机实用教程基础篇 李学海北京航空航天大学出版社使用说明:的确是一本不可或缺的教材,本书列举了很多实用的具有实战意义的例子,单片机入门就是通过把这本书里的好例子一字一行敲进电脑去来实现的。PIC单片机实用教程提高篇李学海北

31、京航空航天大学出版社使用说明:继承了前面基础篇的风格,例子也具有实战意义,主要讲RA、TMR2的使用和CCP模块的PWM脉宽调制功能。PIC单片机实践李学海 北京航空航天大学出版社PIC单片机实验教程 李荣正,陈学军编著 北京航空航天大学出版社PIC单片机常用模块与综合系统设计实例精讲夏彬彬,任明全,屈金学编著电子工业出版社单片机应用系统开发综合实例张萌,和湘,姜斌编著 清华大学出版社八附录 源程序:LIST P=16F877,R=DEC ;定义器件,默认为十进制#includeTMR0 EQU 01H ;定义定时器/计数器0寄存地址PCL EQU 02H ;定义程序指针寄存器STATUS E

32、QU 3H ;定义状态寄存器地址OPTION_REG EQU 81H ;定义选项寄存地址INTCON EQU 0BH ;定义中断控制寄存地址PORTB EQU 6H ;定义端口B的数据寄存器地址PORTC EQU 7H ;定义端口C的数据寄存器地址PORTD EQU 8H ;定义端口D的数据寄存器地址PORTE EQU 9H ;定义端口E的数据寄存器地址 ;TRISA EQU 85H ;定义端口A的方向寄存器TRISB EQU 86H ;定义端口B的方向寄存器TRISC EQU 87H ;定义端口C的方向寄存器TRISD EQU 88H ;定义端口D的方向寄存器TRISE EQU 89H ;定

33、义端口E的方向寄存器COUNT EQU 20H ;定义一个计数器变量寄存地址TMR0B EQU D252 ;定义TMR0寄存地址初始值256-4=252)RP0 EQU 5H ;定义状态寄存器中的页选位RP0T0IF EQU 2 ;定义TMR0溢出标志位的位地址F EQU 1 ;定义目标寄存器指示标号COUNT1 EQU 21H ;定义计数器状态变量COUNT2 EQU 23H ;COUNT3 EQU 24H ;COUNT4 EQU 25H ;COUNT5 EQU 27H ;COUNT6 EQU 28H ;VAL EQU 30H ;定义键盘的状态变量WORD_1 EQU 22H ;初始密码WO

34、RD_2 EQU 26HWORD_3 EQU 2AHWORD_4 EQU 2BHKEY_1 EQU 47H ;用户输入密码KEY_2 EQU 48HKEY_3 EQU 49HKEY_4 EQU 4AHN EQU 52H ;定义外循环变量MM EQU 53H ;内循环变量NTEMP EQU 29HTOT EQU 60H ;总的错误次数W EQU 0 ;定义传送目标寄存器为W的指示位F EQU 1 ;定义传送目标寄存器为RAM的指示位T0IF EQU 2 ;定义TMR0中断标志位的地址位T0IE EQU 5 ;定义TMR0中断矢能位的地址位INTE EQU 4 ;定义外部中断矢能位的地址位INTF

35、 EQU 1 ;定义外部中断标志位的地址位RBIF EQU 0 ;定义RB口变化中断标志位的位地址OPTION_TEMP EQU 0A6H ;在bank1定义选项寄存器的备份寄存器地址;* ORG 000H ; NOPMAIN BSF STATUS,RP0 ;文件寄存到BANK1 MOVLW 00H ;将端口C的方向控制字先送到W MOVWF TRISC ;然后再转送到端口C的方向寄存器 MOVLW 0FFH ;将端口B的方向控制字先送到W MOVWF TRISB ;然后再转送到端口B的方向寄存器 CLRF TRISD ; CLRF TRISE ; BCF STATUS,RP0 ;恢复到文件寄

36、存器BANK0 CLRF PORTC ;端口寄存器清0 MOVLW 31H ;定义初始密码 MOVWF WORD_1 ;1 MOVLW 32H MOVWF WORD_2 ;2 MOVLW 33H MOVWF WORD_3 ;3 MOVLW 34H MOVWF WORD_4 ;4FIVE MOVLW D5 MOVWF TOT ;初始化最大错误次数 ;*INITIAL MOVLW D16 ; MOVWF COUNT ;初始化count为16DELAY16MS ;延时16ms CALL DELAY1MS ; DECFSZ COUNT,1 ;(1/2)count送count并判断结果是否为0? ;是0

37、,跳出循环,否循环回去 GOTO DELAY16MS ; MOVLW 38H ;将38h送到w MOVWF PORTD ;将38h送到portd MOVLW 02H ;将02h送到w MOVWF PORTE ;将02h送到porte,写数据 BCF PORTE,1 ;将porte的第一个位置清0 MOVLW D5 ;将5送到w MOVWF COUNT ;将count赋值为5DELAY5MS ;延时5ms CALL DELAY1MS ; DECFSZ COUNT,1 ; GOTO DELAY5MS ; MOVLW B00111000 ;将38h送到w MOVWF PORTD ;将38h送到pot

38、d MOVLW B00000010 ;将02h送到w MOVWF PORTE ;将02h送到porte,写数据 BCF PORTE,1 ;将porte的第一个位置清0 MOVLW D3 ; MOVWF COUNT ;DELAY120US ;延时120us CALL DELAY40US ; DECFSZ COUNT,1 ; GOTO DELAY120US ; MOVLW B00111000 ; MOVWF PORTD ; MOVLW B00000010 ; MOVWF PORTE ; BCF PORTE,1 ;* CALL DELAY40US ; MOVLW B00111000 ; MOVWF

39、PORTD ; MOVLW B00000010 ; MOVWF PORTE ; BCF PORTE,1 ; CALL DELAY40US ; MOVLW B00001000 ;将08h送到w,关显示 MOVWF PORTD ;将o8h送到portd MOVLW B00000010 ;将02h送到w MOVWF PORTE ;将02h送到porte BCF PORTE,1 ;将porte的第一个位置清0 CALL DELAY40US ; MOVLW B00000001 ;将01h送到w,清屏 MOVWF PORTD ;将o1h送到portd MOVLW B00000010 ; MOVWF POR

40、TE ;将02h送到porte BCF PORTE,1 ;将porte的第一个位置清0 CALL DELAY1MS ; MOVLW D16 ; MOVWF COUNT ;将count设置为16DELAY640US ;延时640us CALL DELAY40US ; DECFSZ COUNT,1 ; GOTO DELAY640US ; MOVLW B00000110 ;将06h送到w,设置输入方式 MOVWF PORTD ; MOVLW B00000010 ; MOVWF PORTE ; BCF PORTE,1 ; CALL DELAY40US ; MOVLW B00001101 ;将0DH送到w,* MOVWF PORTD ;将0DH送到portd MOVLW B00000010 ; MOVWF PORTE ;将02h送到porte BCF PORTE,1 ;将porte的第一个位置清0 CALL DELAY40US ; CALL PASSWORD ; BSF PORTC,4;*

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!