150 likes | 268 Views
任务 7 逻辑运算指令验证. 2 学时. 1. 掌握单片机的逻辑运算指令的功能. 2. 巩固对单片机的四个 I/O 口的应用技能. 3. 掌握读 I/O 端口的锁存器和读 I/O 端口的管脚的区别. 一.任务目标. 二.任务要求. 任务描述: 对单片机的与、或、异或运算进行验证,两个操作数由 P1 和 P0 两个 I/O 口的接线开关提供,并将结果送 P3 口所接发光二极管显示。 。. 仿真演示. 三. 相关知识. ( 一 ) 我们用到的逻辑运算指令 1. 求反指令( 1 条) CPL A ; 累加器中的内容按位取反 2. 清零指令( 1 条)
E N D
任务7逻辑运算指令验证 2学时
1.掌握单片机的逻辑运算指令的功能 2.巩固对单片机的四个I/O口的应用技能 3.掌握读I/O端口的锁存器和读I/O端口的管脚的区别 一.任务目标
二.任务要求 • 任务描述: 对单片机的与、或、异或运算进行验证,两个操作数由P1和P0两个I/O口的接线开关提供,并将结果送P3口所接发光二极管显示。 。
三. 相关知识 (一)我们用到的逻辑运算指令 1. 求反指令(1条) CPL A ; 累加器中的内容按位取反 2.清零指令(1条) CLR A ; 0→(A),累加器中的内容清0 3.逻辑与操作指令(6条) ANL A,Rn ;A与Rn中的值按位'与',结果送入A中 ANL A,direct ;A与direct中的值按位'与',结果送入A中 ANL A,@Ri ;A与间址寻址单元@Ri中的值按位'与',结果送入A中 ANL A,#data ;A与立即数data按位'与',结果送入A中 ANL direct,A ;direct中值与A中的值按位'与',结果送入direct中 ANL direct,#data ;direct中的值与立即数data按位'与',结果送入direct中。
逻辑运算指令 4.逻辑或操作指令(6条) ORL A,Rn ;A和Rn中的值按位'或',结果送入A中 ORL A,direct ;A和与间址寻址单元@Ri中的值按位'或',结果送入A中 ORL A,#data ;A和立direct中的值按位'或',结果送入A中 ORL A,@Ri ;A和即数data按位'或',结果送入A中 ORL direct,A ;direct中值和A中的值按位'或',结果送入direct中 ORL direct,#data ;direct中的值和立即数data按位'或',结果送入direct中。
逻辑运算指令 5. 逻辑异或操作指令(6条) XRL A,Rn ;A和Rn中的值按位'异或',结果送入A中 XRL A,direct ;A和direct中的值按位'异或',结果送入A中 XRL A,@Ri ;A和间址寻址单元@Ri中的值按位'异或',结果送入A中 XRL A,#data ;A和立即数data按位'异或',结果送入A中 XRL direct,A ;direct中值和A中的值按位'异或',结果送入direct中 XRL direct,#data ;direct中的值和立即数data按位'异或',结果送入direct中。
逻辑运算类指令对I/O口的操作 执行下面几条指令,我们来分析一下结果是什么 MOVP1,#03H ANLA,P1 ANLP1,A P1口中的数据的读 1.读锁存器,锁存器中的数据是单片机在向I/O口送出数据时锁存下来的 2.读端口,读到的数据是由单片机的外部管脚上的高低电平决定的 如果对I/O口进行“读-修改-写”操作的这一类指令,则是读的锁存器中的内容 3.什么叫“读-修改-写”操作?
四、任务分析 1、硬件电路硬件电路见图2.3.2,其中P2和P1所接SW1和SW2为拨线开关,可以在两个I/O口上输入两个8位的二进制数,做为我们逻辑运算类指令的两个操作数, P3接8个发光二极管D7- D0 ,用来显示逻辑运算的结果,
五.任务实施 • 1、在PROTEUS软件中按图搭接好电路; • 2、在伟福软件中编辑程序,进行编译,得到.HEX格式文件; • 3、将所得的HEX格式文件在PROTEUS中指定到MCU芯片中; • 4、运行仿真,观察仿真结果; • 5、PROTEUS中结果正常后,用实际硬件搭接并调试电路,通过编程器将.HEX格式文件下载到AT89C51中,通电验证实验结果。
六、任务总结 • 任务回顾 • 课后作业 • 思考题
Thank you! 标志