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

本文档详细介绍了如何使用汇编语言在HT系列单片机上实现IIC通信协议,包括初始化设置、设备选择、数据发送与接收、中断处理等关键步骤,适合单片机学习者参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值