设为首页 加入收藏

TOP

用IO检测方式判断交流220V与110V(松瀚汇编程序)
2015-07-24 06:28:45 来源: 作者: 【 】 浏览:36
Tags:检测 方式 判断 交流 220V 110V 松瀚 汇编 程序

\


<??http://www.2cto.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+PHByZSBjbGFzcz0="brush:java;">;-----------------------代码------------------------------------------ ;---220V/110V检测-------------------- V_CH220NUM EQU 10 ;检测上半波的个数 ;150V-0 180V-80 220V-120 V_220VNUM EQU 60 ;电压信号为高的总个数 //*************************************** // 函数名称: DLY500US // 函数功能: 16MRC 下耗时500US //*************************************** DLY500US: MOV A,#250 MOV I,A L_DLY500US: NOP NOP NOP NOP DECMS I JMP L_DLY500US RET //*************************************** // 函数名称: CHECKAC220V // 函数功能: 检测输出电压为110V 或 220V //*************************************** CHECKAC220V: /* // 测试用 CALL DLY500US MOV A, #0X04 XOR P2, A JMP CHECKAC220V */ ;------------检测前延时 等待电压稳定------------------- MOV A, #200 ;1ms*200=200ms MOV X0, A L_PWLDY: CALL DLY500US ;1ms CALL DLY500US MOV A, #0X5A B0MOV WDTR, A DECMS X0 JMP L_PWLDY ;------------------------------------------------------- MOV A, #V_CH220NUM ;检测上半波的个数 MOV X0, A CLR X1 L_CHACVOG: B0BTS1 P_ZERO JMP L_CHACVOG JMP $+1 JMP $+1 JMP $+1 B0BTS1 P_ZERO JMP L_CHACVOG JMP $+1 JMP $+1 JMP $+1 MOV A, #0X5A B0MOV WDTR, A L_CHACVOG2: B0BTS0 P_ACV INCMS X1 NOP CALL DLY500US B0BTS0 P_ZERO JMP L_CHACVOG2 JMP $+1 JMP $+1 B0BTS0 P_ZERO JMP L_CHACVOG2 ;上半波结束 DECMS X0 JMP L_CHACVOG MOV A, X1 SUB A, #V_220VNUM BSET F_220V B0BTS1 FC BCLR F_220V RET

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇测试AtomicInteger与普通int值在.. 下一篇XTU OJ 1210 Happy Number (暴力+..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: