原创 只用2个指令实现一个IO口状态翻转

2007-5-16 11:30 7094 13 14 分类: MCU/ 嵌入式

有时候需要一个IO输出口取反,状态翻转一次,以前采用判断的方法,判断当前是高就输出低,是低输出高。多浪费几条指令,还要跳转。改用异或指令,只需要2条。


例如,需要驱动一个口发声,进入中断之后取反。


;----------定义-----------------


BMusic   euq   0x03


PortBMusic  equ port7


;---------取反操作--------------


mov a,@(1<<BMusic)


xor PortBMusic,a


;----------------------------------

PARTNER CONTENT

文章评论1条评论)

登录后参与讨论

用户71143 2007-5-16 17:01

我得到了一个启示:要学会运用逻辑指令

具体到这儿就是:位运算更要多考虑逻辑指令

相关推荐阅读
12864_944456583 2010-04-28 09:10
关于VMware虚拟机下串口配置使用技巧
 USB转串口使用设置:   在Windows下可以使用超级终端来连接交换机和路由器等工业设备,而且在Windows下使用usb转串口的线也有相应的驱动,但是如何在Linux下使用呢?   首先要有一...
12864_944456583 2008-11-21 14:51
用单片机实现的感应触摸电路的原理图
家电中最常用的感应触摸电路,通过单片机检测电压的变化来识别是否有手指按下 ...
12864_944456583 2008-11-21 14:48
AVR单片机捕获中断实现红外线解码
1 红外线编码红外线编码是数据传输和家用电器遥控常用的一种通讯方法,其实质是一种脉宽调制的串行通讯。家电遥控中常用的红外线编码电路有μPD6121G型HT622型和7461型等。本文就以这些电路的编码...
12864_944456583 2008-11-21 14:45
用三极管实现RS232的转换电路图
用三极管实现RS232的转换电路图: ...
12864_944456583 2008-11-21 14:42
诺基亚3310液晶屏驱动程序
#include "global.h"#include "nokia3310.h"#include "font.h"#include "bmp.h"void LCDClear(void)//LCD清屏...
12864_944456583 2008-11-21 14:41
最详细电磁炉原理讲解
                                       最详细电磁炉原理讲解           日期: 2008-03-22             发表人: 稻田守望者   ...
我要评论
1
13
关闭 站长推荐上一条 /3 下一条