USART_AINT_TXINI2:
ldi ZL,(1<<RXEN)|(1<<TXEN)|(1<<RXCIE)|(1<<UDRIE)
out UCSRB,ZL ;接收器与发送器使能和接收结束中断、
;与 USART 数据寄存器空中断使能
ret ;子程序返回
;*******************************************************************************
;*
;* 向 USART 端口发送通信协议命令子程序清单
;*
;* 说明:
;* 本子程序用于向 USART 端口发送通信协议命令。调用这些子程序后,将立即
;* 启动该命令的发送作业。共包括下列这些独立的子程序。
;*
;* 向端口发送[向对方请求发送]命令 --------- “USART_TX_COMM_AskTX”
;* 向端口发送[允许对方发送]命令 ----------- “USART_TX_COMM_OKRX”
;* 向端口发送[要求对方重新发送]命令 ------- “USART_TX_COMM_REPTX”
;* 向端口发送[接收数据正确]命令 ----------- “USART_TX_COMM_DataOK”
;* 向端口发送[要求对方发送指定数据]命令 --- “USART_TX_COMM_DCOMTX”
;* 向端口发送[要求对方重新初始化]命令 ----- “USART_TX_COMM_REPINI”
;* 向端口发送[重新初始化完成]命令 --------- “USART_TX_COMM_RINIOK”
;*
;*******************************************************************************
;*** 此段程序用于发送[重新初始化完成]命令 - “USART_TX_COMM_RINIOK”
USART_TX_COMM_RINIOK:
rcall USART_TXD_COMM_Head ;将开头字符串和端口编号复制到 SRAM 中
ldi ZL,Low(USART_RINIOK*2) ;置 Z 指针为重新初始化完成命令字符串,
ldi ZH,High(USART_RINIOK*2) ;在 FLASH 中的存储地址
rcall USART_TXD_COMM_COM ;将命令字符串复制到 SRAM 的发送地址中,
;并置发送命令作业标志值
rcall USART_AINT_TXINI ;发送本命令字符串
ret ;子程序返回
;*** 此段程序用于发送[要求对方重新初始化]命令 - “USART_TX_COMM_REPINI”
USART_TX_COMM_REPINI:
rcall USART_TXD_COMM_Head ;将开头字符串和端口编号复制到 SRAM 中
ldi ZL,Low(USART_REPINI*2) ;置 Z 指针为要求对方重新初始化命令字符串,
ldi ZH,High(USART_REPINI*2) ;在 FLASH 中的存储地址
rcall USART_TXD_COMM_COM ;将命令字符串复制到 SRAM 的发送地址中,
;并置发送命令作业标志值
rcall USART_AINT_TXINI ;发送本命令字符串
ret ;子程序返回
;*** 此段程序用于发送[向对方请求发送]命令 - “USART_TX_COMM_AskTX”
USART_TX_COMM_AskTX:
rcall USART_TXD_COMM_Head ;将开头字符串和端口编号复制到 SRAM 中
ldi ZL,Low(USART_AskTX*2) ;置 Z 指针为向对方请求发送命令字符串,
ldi ZH,High(USART_AskTX*2) ;在 FLASH 中的存储地址
rcall USART_TXD_COMM_COM ;将命令字符串复制到 SRAM 的发送地址中,
;并置发送命令作业标志值
rcall USART_AINT_TXINI ;发送本命令字符串
ret ;子程序返回
;*** 此段程序用于发送[允许对方发送]命令 - “USART_TX_COMM_OKRX”
USART_TX_COMM_OKRX:
rcall USART_TXD_COMM_Head ;将开头字符串和端口编号复制到 SRAM 中
ldi ZL,Low(USART_OKRX*2) ;置 Z 指针为向对方请求发送命令字符串,
ldi ZH,High(USART_OKRX*2) ;在 FLASH 中的存储地址
rcall USART_TXD_COMM_COM ;将命令字符串复制到 SRAM 的发送地址中,
;并置发送命令作业标志值
rcall USART_AINT_TXINI ;发送本命令字符串
ret ;子程序返回
;*** 此段程序用于发送[要求对方重新发送]命令 - “USART_TX_COMM_REPTX”
USART_TX_COMM_REPTX:
rcall USART_TXD_COMM_Head ;将开头字符串和端口编号复制到 SRAM 中
ldi ZL,Low(USART_REPTX*2) ;置 Z 指针为向对方请求发送命令字符串,
ldi ZH,High(USART_REPTX*2) ;在 FLASH 中的存储地址
rcall USART_TXD_COMM_COM ;将命令字符串复制到 SRAM 的发送地址中,
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] 下一页
本文关键字:通信 程序 AVR单片机,单片机-工控设备 - AVR单片机