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

📄 uart.lis

📁 AVR单片机RS232通信接口应用设计
💻 LIS
📖 第 1 页 / 共 5 页
字号:
                        .module UART.c
                        .area data(ram, con, rel)
 0000           _bSCI_Event::
 0000                   .blkb 1
                        .area idata
 0000 00                .byte 0
                        .area data(ram, con, rel)
 0001                   .dbfile E:\Steaven2000\AVR\AVR_Book\PROGRA~1\SOURCE~1\Code\RS232通信协议应用设计\UART.c
 0001                   .dbsym e bSCI_Event _bSCI_Event c
 0001           _bBuzzer_Count::
 0001                   .blkb 1
                        .area idata
 0001 00                .byte 0
                        .area data(ram, con, rel)
 0002                   .dbfile E:\Steaven2000\AVR\AVR_Book\PROGRA~1\SOURCE~1\Code\RS232通信协议应用设计\UART.c
 0002                   .dbsym e bBuzzer_Count _bBuzzer_Count c
                        .area text(rom, con, rel)
 0000                   .dbfile E:\Steaven2000\AVR\AVR_Book\PROGRA~1\SOURCE~1\Code\RS232通信协议应用设计\UART.c
 0000                   .dbfunc e sSet_SCI_Event _sSet_SCI_Event fV
 0000           ;          event -> R16
                        .even
 0000           _sSet_SCI_Event::
 0000                   .dbline -1
 0000                   .dbline 23
 0000           ; //********************************************************************
 0000           ; // File Name : UART.c
 0000           ; // Author    : Steaven
 0000           ; // Created   : 2008-10-05
 0000           ; // Modified  : 
 0000           ; // Revision  : V0.0
 0000           ; //********************************************************************
 0000           ; 
 0000           ; #include "includes.h" 
 0000           ; 
 0000           ; struct SCI_Buffer stSciBuffer;
 0000           ; 
 0000           ; INT8U bSCI_Event = 0;    //SCI Event
 0000           ; INT8U bBuzzer_Count = 0; //Buzzer ON Time
 0000           ; 
 0000           ; //********************************************************************
 0000           ; // Function    : sSet_SCI_Event
 0000           ; // Input       : event - SCI Event
 0000           ; // Output      : none
 0000           ; // Description : Interface Function
 0000           ; //********************************************************************
 0000           ; void sSet_SCI_Event(INT8U event)
 0000           ; {
 0000                   .dbline 24
 0000           ;       bSCI_Event = event;
 0000 00930000          sts _bSCI_Event,R16
 0004                   .dbline -2
 0004                   .dbline 25
 0004           ; }
 0004           L1:
 0004                   .dbline 0 ; func end
 0004 0895              ret
 0006                   .dbsym r event 16 c
 0006                   .dbend
 0006                   .dbfunc e sbGet_SCI_Event _sbGet_SCI_Event fc
 0006           ;          event -> R16
                        .even
 0006           _sbGet_SCI_Event::
 0006                   .dbline -1
 0006                   .dbline 34
 0006           ; 
 0006           ; //********************************************************************
 0006           ; // Function    : sbGet_SCI_Event
 0006           ; // Input       : none
 0006           ; // Output      : SCI Event
 0006           ; // Description : Interface Function
 0006           ; //********************************************************************
 0006           ; INT8U sbGet_SCI_Event(void)
 0006           ; {
 0006                   .dbline 36
 0006           ;       INT8U event;
 0006           ;       event = bSCI_Event;
 0006 00910000          lds R16,_bSCI_Event
 000A                   .dbline 37
 000A           ;       bSCI_Event = 0;
 000A 2224              clr R2
 000C 20920000          sts _bSCI_Event,R2
 0010                   .dbline 38
 0010           ;       return(event);
 0010                   .dbline -2
 0010           L2:
 0010                   .dbline 0 ; func end
 0010 0895              ret
 0012                   .dbsym r event 16 c
 0012                   .dbend
 0012                   .dbfunc e sSet_Buzzer_Count _sSet_Buzzer_Count fV
 0012           ;         bCount -> R16
                        .even
 0012           _sSet_Buzzer_Count::
 0012                   .dbline -1
 0012                   .dbline 48
 0012           ; }
 0012           ; 
 0012           ; //********************************************************************
 0012           ; // Function    : sSet_Buzzer_Count
 0012           ; // Input       : bCount - Buzzer ON Time
 0012           ; // Output      : none
 0012           ; // Description : Interface Function
 0012           ; //********************************************************************
 0012           ; void sSet_Buzzer_Count(INT8U bCount)
 0012           ; {
 0012                   .dbline 49
 0012           ;       bBuzzer_Count = bCount;
 0012 00930100          sts _bBuzzer_Count,R16
 0016                   .dbline -2
 0016                   .dbline 50
 0016           ; }
 0016           L3:
 0016                   .dbline 0 ; func end
 0016 0895              ret
 0018                   .dbsym r bCount 16 c
 0018                   .dbend
 0018                   .dbfunc e sbGet_Buzzer_Count _sbGet_Buzzer_Count fc
                        .even
 0018           _sbGet_Buzzer_Count::
 0018                   .dbline -1
 0018                   .dbline 59
 0018           ; 
 0018           ; //********************************************************************
 0018           ; // Function    : sbGet_Buzzer_Count
 0018           ; // Input       : none
 0018           ; // Output      : Buzzer ON Time
 0018           ; // Description : Interface Function
 0018           ; //********************************************************************
 0018           ; INT8U sbGet_Buzzer_Count(void)
 0018           ; {
 0018                   .dbline 60
 0018           ;       return(bBuzzer_Count);
 0018 00910100          lds R16,_bBuzzer_Count
 001C                   .dbline -2
 001C           L4:
 001C                   .dbline 0 ; func end
 001C 0895              ret
 001E                   .dbend
 001E                   .dbfunc e Init_UART _Init_UART fV
                        .even
 001E           _Init_UART::
 001E                   .dbline -1
 001E                   .dbline 70
 001E           ; }
 001E           ;               
 001E           ; //********************************************************************
 001E           ; // Function    : Init_UART
 001E           ; // Input       : none
 001E           ; // Output      : none
 001E           ; // Description : ATmega16 UART Initialization,9600/N/8/1
 001E           ; //********************************************************************
 001E           ; void Init_UART(void)
 001E           ; {
 001E                   .dbline 71
 001E           ;       UCSRA = 0x00;
 001E 2224              clr R2
 0020 2BB8              out 0xb,R2
 0022                   .dbline 72
 0022           ;       UCSRB = 0xD8;
 0022 88ED              ldi R24,216
 0024 8AB9              out 0xa,R24
 0026                   .dbline 73
 0026           ;       UCSRC = 0x86;
 0026 86E8              ldi R24,134
 0028 80BD              out 0x20,R24
 002A                   .dbline 74
 002A           ;       UBRRL = 0x33;
 002A 83E3              ldi R24,51
 002C 89B9              out 0x9,R24
 002E                   .dbline 75
 002E           ;       SCI_Task_Init();
 002E                   .dbline -2
 002E                   .dbline 76
 002E           ; }
 002E           L5:
 002E                   .dbline 0 ; func end
 002E 00C0              xjmp _SCI_Task_Init
 0030                   .dbend
 0030                   .dbfunc e SCI_Task_Init _SCI_Task_Init fV
                        .even
 0030           _SCI_Task_Init::
 0030                   .dbline -1
 0030                   .dbline 85
 0030           ; 
 0030           ; //********************************************************************
 0030           ; // Function    : SCI_Task_Init
 0030           ; // Input       : none
 0030           ; // Output      : none
 0030           ; // Description : Enable UART RX Interrupt and Initialize Buffer
 0030           ; //********************************************************************
 0030           ; void SCI_Task_Init(void)
 0030           ; {
 0030                   .dbline 86
 0030           ;       Enable_UART_RX_INT();
 0030 03D0              xcall _Enable_UART_RX_INT
 0032                   .dbline 87
 0032           ;       SciBuffer_Init(&stSciBuffer);
 0032 00E0              ldi R16,<_stSciBuffer
 0034 10E0              ldi R17,>_stSciBuffer
 0036                   .dbline -2
 0036                   .dbline 88
 0036           ; }
 0036           L6:
 0036                   .dbline 0 ; func end
 0036 42C0              xjmp _SciBuffer_Init
 0038                   .dbend
 0038                   .dbfunc e Enable_UART_RX_INT _Enable_UART_RX_INT fV
                        .even
 0038           _Enable_UART_RX_INT::
 0038                   .dbline -1
 0038                   .dbline 97
 0038           ; 
 0038           ; //********************************************************************
 0038           ; // Function    : Enable_UART_RX_INT
 0038           ; // Input       : none
 0038           ; // Output      : none
 0038           ; // Description : Enable UART RX Interrupt
 0038           ; //********************************************************************
 0038           ; void Enable_UART_RX_INT(void)
 0038           ; {
 0038                   .dbline 98
 0038           ;       UCSRB |= 0x80;
 0038 579A              sbi 0xa,7
 003A                   .dbline -2
 003A                   .dbline 99
 003A           ; }
 003A           L7:
 003A                   .dbline 0 ; func end
 003A 0895              ret
 003C                   .dbend
 003C                   .dbfunc e Enable_UART_TX_INT _Enable_UART_TX_INT fV
                        .even
 003C           _Enable_UART_TX_INT::
 003C                   .dbline -1
 003C                   .dbline 108
 003C           ; 
 003C           ; //********************************************************************
 003C           ; // Function    : Enable_UART_TX_INT
 003C           ; // Input       : none
 003C           ; // Output      : none
 003C           ; // Description : Enable UART TX Interrupt
 003C           ; //********************************************************************
 003C           ; void Enable_UART_TX_INT(void)
 003C           ; {
 003C                   .dbline 109
 003C           ;       UCSRB |= 0x40;
 003C 569A              sbi 0xa,6
 003E                   .dbline -2
 003E                   .dbline 110
 003E           ; }
 003E           L8:
 003E                   .dbline 0 ; func end
 003E 0895              ret
 0040                   .dbend
 0040                   .dbfunc e Disable_UART_RX_INT _Disable_UART_RX_INT fV
                        .even
 0040           _Disable_UART_RX_INT::
 0040                   .dbline -1
 0040                   .dbline 119
 0040           ; 
 0040           ; //********************************************************************
 0040           ; // Function    : Disable_UART_RX_INT
 0040           ; // Input       : none
 0040           ; // Output      : none
 0040           ; // Description : Disable UART RX Interrupt
 0040           ; //********************************************************************
 0040           ; void Disable_UART_RX_INT(void)
 0040           ; {
 0040                   .dbline 120
 0040           ;       UCSRB &= ~0x80;
 0040 5798              cbi 0xa,7
 0042                   .dbline -2
 0042                   .dbline 121
 0042           ; }
 0042           L9:
 0042                   .dbline 0 ; func end
 0042 0895              ret
 0044                   .dbend
 0044                   .dbfunc e Disable_UART_TX_INT _Disable_UART_TX_INT fV
                        .even
 0044           _Disable_UART_TX_INT::
 0044                   .dbline -1
 0044                   .dbline 130
 0044           ; 
 0044           ; //********************************************************************
 0044           ; // Function    : Disable_UART_TX_INT
 0044           ; // Input       : none
 0044           ; // Output      : none
 0044           ; // Description : Disable UART TX Interrupt
 0044           ; //********************************************************************
 0044           ; void Disable_UART_TX_INT(void)
 0044           ; {
 0044                   .dbline 131
 0044           ;       UCSRB &= ~0x40;
 0044 5698              cbi 0xa,6
 0046                   .dbline -2
 0046                   .dbline 132
 0046           ; }
 0046           L10:
 0046                   .dbline 0 ; func end
 0046 0895              ret
 0048                   .dbend
 0048                   .dbfunc e UART_TX_DATA _UART_TX_DATA fV
 0048           ;          bData -> R16
                        .even

⌨️ 快捷键说明

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