;***********头文件*********IIC主机***HT系列单片机***********
include xxxxxxxx.inc ;修改为ht系列的单片机
;*********************
;***********伪指令************
ds .section 'data'
DEL1 DB ?
DEL2 DB ?
DEL3 DB ?
DEVICE_FLAG DBIT ;找I2C设备标志 DBIT是什么意思
KEY DB ?
COUNT DB ?
DEVICE_ID DB ?
BYTE_COUNT DB ?
I2C_DATA DB ?
BYTE_DATA DB ?
SEND_DATA DB ?
;***************************************
;*******变量的定义名称*************
;ID_PORT EQU PA ;定义ID设置端口
;ID_PORTC EQU PAC ;定义ID端口控制寄存器。
;ID_PORTPU EQU PAPU ;定义ID端口控制寄存器
;
;CLK_PORT EQU PB ;定义ID设置端口
;CLK_PORTC EQU PBC ;定义ID端口控制寄存器。
;CLK_PORTPU EQU PBPU ;定义ID端口控制寄存器
;*****数码管的引脚*************
SEG_PORTC EQU PCC
SEG_PORT EQU PC
FG_LED EQU PC.7
;****定义iic的两个引脚**********
SCLC EQU PBC.6
SDAC EQU PAC.3
SCL EQU PB.6
SDA EQU PA.3
SCL_PU EQU PBPU.6
SDA_PU EQU PAPU.3
;**************************end***********
;**************主程序部分***************
cs .section at 000h 'code'
ORG 00H
MOV A,0A8H
MOV WDTC,A ;关闭看门狗,需要对应的位值才能进行正常关闭
;**********************************
;**********灯输出模式**********
CLR SEG_PORTC ;将SEG\U端口配置为输出模式
CLR SEG_PORT ;关闭所有段码
CLR PDC.0
CLR PD.0
;*********IIC相关引脚设置输出模式*****
CLR SDAC ;SDA设置为输出模式
CLR SCLC ;scl设置为输出模式
;*********设置上拉********
SET SCL_PU ;设置ID端口拉高
SET SDA_PU
;*********配置引脚的公用功能部分*****
MOV A,01000000B
MOV PAS0,A