⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 usart_test.s

📁 NEC单片机开发资料 NEC单片机开发资料 NEC单片机开发资料
💻 S
字号:
	.module usart_test.c
	.area text(rom, con, rel)
	.dbfile D:\串口校准发送测试\usart_test.c
	.dbfunc e uart0_init _uart0_init fV
	.even
_uart0_init::
	.dbline -1
	.dbline 5
; #include "iom48v.h"
; #include "macros.h"
; 
; void uart0_init(void)
; {
	.dbline 6
; 	UCSR0A = 0x02;					//使用波特率倍增,不使用多从机模式
	ldi R24,2
	sts 192,R24
	.dbline 7
; 	UCSR0C = 0x06;					//异步串口模式,禁止奇偶校验,1位停止位,8-bit桢模式
	ldi R24,6
	sts 194,R24
	.dbline 8
; 	UBRR0L = 0x0C;					//设置波特率,9600
	ldi R24,12
	sts 196,R24
	.dbline 9
; 	UBRR0H = 0x00;
	clr R2
	sts 197,R2
	.dbline 10
; 	UCSR0B = 0x98;					//允许接收完成中断使能,禁止发送完成中断,禁止发送寄存器空中断,允许接收,允许发送
	ldi R24,152
	sts 193,R24
	.dbline -2
L1:
	.dbline 0 ; func end
	ret
	.dbend
	.dbfunc e Delay_ms _Delay_ms fV
;              n -> R20
;           Time -> R16,R17
	.even
_Delay_ms::
	rcall push_gset1
	.dbline -1
	.dbline 14
; }
; 
; void Delay_ms(unsigned int Time)
; {
	.dbline 15
;     unsigned char n=0;
	clr R20
	rjmp L4
L3:
	.dbline 17
;     while(Time>0)
;     {
	.dbline 18
;         for (n=1;n<187;n++)
	ldi R20,1
	rjmp L9
L6:
	.dbline 19
	.dbline 20
	nop
	.dbline 21
L7:
	.dbline 18
	inc R20
L9:
	.dbline 18
	cpi R20,187
	brlo L6
	.dbline 22
	subi R16,1
	sbci R17,0
	.dbline 23
L4:
	.dbline 16
	cpi R16,0
	cpc R16,R17
	brne L3
X0:
	.dbline -2
L2:
	rcall pop_gset1
	.dbline 0 ; func end
	ret
	.dbsym r n 20 c
	.dbsym r Time 16 i
	.dbend
	.dbfunc e main _main fV
;       SendData -> R20
	.even
_main::
	.dbline -1
	.dbline 27
;         {
;             NOP();
;         }
;         Time--;
;     }
; }
; 
; void main (void)
; {
	.dbline 28
;     unsigned char SendData = 0xFF;
	ldi R20,255
	.dbline 30
;     
;     uart0_init();
	rcall _uart0_init
	.dbline 33
;     
;     do
;     {
L14:
	.dbline 34
L15:
	.dbline 34
;         while(!(UCSR0A&(1<<UDRE0)));
	lds R2,192
	sbrs R2,5
	rjmp L14
	.dbline 35
;         UDR0 = SendData;
	sts 198,R20
	.dbline 36
;         SendData--;
	dec R20
	.dbline 38
; //        Delay_ms(5);
;     }
L12:
	.dbline 39
;     while(SendData != 0xFF);
	cpi R20,255
	brne L15
L17:
	.dbline 41
L18:
	.dbline 41
	rjmp L17
X1:
	.dbline -2
L10:
	.dbline 0 ; func end
	ret
	.dbsym r SendData 20 c
	.dbend

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -