汇编程序实现iic通信协议,HT单片机

;***********头文件*********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
        
      

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值