热度 26
2012-1-6 10:47
2568 次阅读|
1 个评论
在网上搜索了很久,18B20的CRC校验只有C51的,没有发现A51汇编子程序,只好自己动手。入口:8字节数据在40H——47H,出口:CRC校验结果在B中。子程序如下:(有更精简的朋友请留言) calibration: MOV B,#0 MOV R0,#40H calib_0: MOV R6,#8 MOV A,@R0 calib_1: RRC A PUSH ACC MOV A,B RR A MOV B.7,C XRL B,A MOV C,B.7 MOV ACC.7,C MOV B.3,C MOV B.2,C XRL B,A MOV C,B.3 MOV ACC.3,C MOV C,B.2 MOV ACC.2,C MOV B,A POP ACC DJNZ R6,calib_1 INC R0 CJNE R0,#48H,calib_0 RET