日志档案

发表于 2007-5-16 11:30:22

0

标签: 单片机  技巧  

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

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

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

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

BMusic   euq   0x03

PortBMusic  equ port7

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

mov a,@(1<<BMusic)

xor PortBMusic,a

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

系统分类: 单片机   |   用户分类: 软件相关   |   来源: 原创   |   【推荐给朋友】

    阅读(1061)    回复(1)  

投一票您将和博主都有获奖机会!

  • 9351

    2007-5-16 17:01:27

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

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