📄 spi_a.s43
字号:
;****************************************************************************
; 文件名称:
; SPI_A.s43
; 文件说明:
; 模块操作MSP430的USART的SPI通讯模块,
; 本实验需要使用外围芯片HC164、HC165
; 实验从HC165读取数据,向HC164写数据
; HC164、HC165的有关知识请参考Datasheet
#include "msp430x44x.h"
;******************************************************************************
;
;
; MSP430F449
; -----------------
; /|\| XIN|-
; | | | ^ HC164
; HC165 --|RST XOUT|- | -------------
; ---------- | | |-|/CLR,B | 8
; 8 | /LD|<---|P3.0 SIMO0/P3.1|------>|A Qx|--\->
; -\->|A-H CLK|<---|P3.3/UCLK0 - P3.3|------>|CLK |
; |-|INH QH|--->|P3.2/SOMI0 | | |
; |-|SER | | | | |
; - | | | | | |
;
;******************************************************************************
ORG 08000h ; 程序开始
;******************************************************************************
RESET mov.w #0600h,SP ; 初始化堆栈
call #Init_Sys ; 调用Init_Sys,初始化系统环境
;
Mainloop call #RXTX_HC16x ; 数据交换
; 延时
Delay push.w #0 ;
D1 dec.w 0(SP) ;
jnz D1 ;
incd.w SP ;
jmp Mainloop ; 回到主循环
;
;******************************************************************************
Init_Sys
;******************************************************************************
StopWDT mov.w #WDTPW+WDTHOLD,&WDTCTL ; 关看门狗
SetupP3 bis.b #0Eh,&P3SEL ; P3.1-3 SPI 外围设备
bis.b #01h,&P3DIR ; P3.0 输出模式
SetupSPI bis.b #USPIE0,&ME1 ; SPI模式设置
mov.b #CKPH+SSEL1+SSEL0+STC,&UTCTL0 ; SMCLK, 3-pin
mov.b #CHAR+SYNC+MM,&UCTL0 ; 8-bit char模式
mov.b #02h,&UBR00 ; 波特率
clr.b &UBR10 ;
clr.b &UMCTL0 ; 清零UMCTL0
ret ; 返回
;
;******************************************************************************
RXTX_HC16x
;******************************************************************************
TX0 bit.b #UTXIFG0,&IFG1 ; USART0 TX 是否就绪?
jz TX0 ; 跳转
bic.b #01h,&P3OUT ; 发数据到 'HC165
bis.b #01h,&P3OUT ;
mov.b &RXBUF0,&TXBUF0 ; 把Rx的数据发到TXBuf
ret ; 返回
;
;******************************************************************************
; 中断向量
;******************************************************************************
ORG 0FFFEh ; MSP430 RESET 向量
DW RESET ;
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -