?? uart.lis
字號:
.module uart.c
.area text(rom, con, rel)
0000 .dbfile F:\job\stk500\AVRMEG~1\bldSTK500\uart.c
0000 .dbfunc e putChar _putChar fV
0000 ; sentData -> R16
.even
0000 _putChar::
0000 .dbline -1
0000 .dbline 22
0000 ; /****************************************Copyright (c)**************************************************
0000 ; **
0000 ; ** 開 發 部
0000 ; **
0000 ; ** 文 件 名: uart.c
0000 ; ** 最后修改日期: 2005-7-9 20:36
0000 ; ** 描 述: ATmega16L的操作函數
0000 ; ** 版 本: V1.0
0000 ; ** 主 控 芯 片:M16 晶振頻率:7.3728MHZ,
0000 ; **********************************************************************************************************/
0000 ; #include <iom16v.h>
0000 ; #include <macros.h>
0000 ; #include "define.h"
0000 ; #include "function.h"
0000 ; #include "extern.h"
0000 ;
0000 ; /**********************************************************************
0000 ; functionName:putChar(uint8 sentData)
0000 ; description:通過串口發送數據sentData
0000 ; **********************************************************************/
0000 ; void putChar(uint08 sentData)
0000 ; {
0000 L2:
0000 .dbline 23
0000 L3:
0000 .dbline 23
0000 ; while(!(UCSRA&(1<<UDRE)));
0000 5D9B sbis 0xb,5
0002 FECF rjmp L2
0004 .dbline 24
0004 ; UDR=sentData;
0004 0CB9 out 0xc,R16
0006 .dbline -2
0006 L1:
0006 .dbline 0 ; func end
0006 0895 ret
0008 .dbsym r sentData 16 c
0008 .dbend
0008 .dbfunc e getChar _getChar fc
.even
0008 _getChar::
0008 .dbline -1
0008 .dbline 32
0008 ; }
0008 ;
0008 ; /**********************************************************************
0008 ; functionName:putChars(uint08 *sentData)
0008 ; description:通過串口接受數據
0008 ; **********************************************************************/
0008 ; uint08 getChar(void)
0008 ; {
0008 0CC0 xjmp L7
000A L6:
000A .dbline 34
000A ; while(!(UCSRA&BIT(RXC)))
000A ; {
000A .dbline 35
000A ; if(!flag)
000A 20900000 lds R2,_flag
000E 2220 tst R2
0010 41F4 brne L9
0012 .dbline 36
0012 ; if(TCNT1 < 20)
0012 8CB5 in R24,0x2c
0014 9DB5 in R25,0x2d
0016 8431 cpi R24,20
0018 E0E0 ldi R30,0
001A 9E07 cpc R25,R30
001C 10F4 brsh L11
001E .dbline 37
001E ; asm("jmp 0x000000\n");
001E 0C940000 jmp 0x000000
0022
0022 L11:
0022 L9:
0022 .dbline 38
0022 L7:
0022 .dbline 33
0022 5F9B sbis 0xb,7
0024 F2CF rjmp L6
0026 .dbline 38
0026 ; };
0026 .dbline 39
0026 ; return(UDR);
0026 0CB1 in R16,0xc
0028 .dbline -2
0028 L5:
0028 .dbline 0 ; func end
0028 0895 ret
002A .dbend
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -