当前位置:首页 > 大学毕业设计---基于51单片机智能红外遥控器的
青岛农业大学机电工程学院本科毕业设计(论文) Z1: RETI
DEL1S:MOV R7,#200 DE1:MOV R6,#200 DJNZ R6,$ DJNZ R7,DE1 RET
TAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,88H,83H,0C6H,0A1H,86H,8EH DELAY1: NOP;1us MOV R6 , #11 ;1μs DJNZ R6 , $ ;22μs DJNZ R7 ,DELAY1;每次2μs RET
WRITE_DATA:
MOV R0,#00H ;数据写入首地址
LCALL WRITE_BYTE ;将计数值写入24C02 RET READ_DATA:
MOV R0,#00H ;读取的首地址 LCALL READ_BYTE ;读EEPROM CALL STOP MOV TEMP,A RET WRITE_BYTE:
CALL START MOV A,#0AEH
CALL SENDBYTE CALL WAITACK MOV A,R0
CALL SENDBYTE CALL WAITACK MOV A,B
CALL SENDBYTE CALL WAITACK CALL STOP RET READ_BYTE:
CALL START MOV A,#0AEH CALL SENDBYTE CALL WAITACK MOV A,R0
CALL SENDBYTE CALL WAITACK CALL START MOV A,#0AFH CALL SENDBYTE CALL WAITACK CALL RCVBYTE RET RCVBYTE:
MOV R7,#08 ;一个字节共接收8位数据 CLR A
SETB SDA ;释放SDA数据线 R_BYTE:
42
青岛农业大学机电工程学院本科毕业设计(论文) CLR SCL NOP NOP NOP NOP
SETB SCL ;启动一个时钟周期,读总线 NOP NOP NOP NOP
MOV C,SDA ;将SDA状态读入C RLC A ;结果移入A
SETB SDA ;释放SDA数据线
DJNZ R7,R_BYTE ;判断8位数据是否接收完全? RET SENDBYTE:
MOV R7,#08 S_BYTE:
RLC A
MOV SDA,C SETB SCL NOP NOP NOP NOP
CLR SCL
DJNZ R7,S_BYTE ;8位发送完毕? RET WAITACK:
CLR SCL
SETB SDA ;释放SDA信号线 NOP NOP
SETB SCL NOP NOP NOP
MOV C,SDA
JC WAITACK ;SDA为低电平,返回了响应信号 CLR SDA CLR SCL RET
SETB SDA SETB SCL NOP
CLR SDA NOP NOP NOP NOP
CLR SCL RET STOP:
CLR SDA NOP
SETB SCL NOP
43
NOP NOP NOP
SETB SDA NOP NOP
CLR SCL CLR SDA RET DELAY2MS:
MOV R6,#10 DEL1:
MOV R7,#100 DJNZ R7,$ DJNZ R6,DEL1 RET END
青岛农业大学机电工程学院本科毕业设计(论文) 44
青岛农业大学机电工程学院本科毕业设计(论文) 青岛农业大学
毕业论文(设计)开题报告
题 目:姓 名:学 院:专 业:班 级:学 号:指导教师: 简易智能型红外遥控器设计 王保磊 机电工程学院 电气工程及自动化 2006.4 20060580
员玉良
年 月 日
45
共分享92篇相关文档