?? ex_support.lis
字號:
.module EX_Support.c
.area data(ram, con, rel)
0000 _s_wSystemDelayTimerCounter:
0000 .blkb 2
.area idata
0000 0000 .word 0
.area data(ram, con, rel)
0002 .dbfile D:\設計項目\深入淺出AVR\光盤文件\實例程序源代碼\實例11_漸明漸暗的燈\舵機控制\EX_Support.c
0002 .dbsym s s_wSystemDelayTimerCounter _s_wSystemDelayTimerCounter i
0002 _g_wSystemTimer::
0002 .blkb 2
.area idata
0002 0000 .word 0
.area data(ram, con, rel)
0004 .dbfile D:\設計項目\深入淺出AVR\光盤文件\實例程序源代碼\實例11_漸明漸暗的燈\舵機控制\EX_Support.c
0004 .dbsym e g_wSystemTimer _g_wSystemTimer i
.area text(rom, con, rel)
0000 .dbfile D:\設計項目\深入淺出AVR\光盤文件\實例程序源代碼\實例11_漸明漸暗的燈\舵機控制\EX_Support.c
0000 .dbfunc s Driver_INIT _Driver_INIT fV
.even
0000 _Driver_INIT:
0000 .dbline -1
0000 .dbline 86
0000 ; /***********************************************************
0000 ; * 函數庫說明:底層硬件初始化驅動函數庫 *
0000 ; * 版本: *
0000 ; * 作者: *
0000 ; * 創建日期: *
0000 ; * -------------------------------------------------------- *
0000 ; * [硬件說明] *
0000 ; * 處理器: *
0000 ; * 系統時鐘: *
0000 ; * -------------------------------------------------------- *
0000 ; * [支 持 庫] *
0000 ; * 支持庫名稱:HD_Support.h *
0000 ; * 需要版本: ----- *
0000 ; * 支持庫說明:底層硬件初始化聲明庫 *
0000 ; * *
0000 ; * 支持庫名稱:EX_Support.h *
0000 ; * 需要版本: ----- *
0000 ; * 支持庫說明:底層硬件初始化驅動聲明庫 *
0000 ; * *
0000 ; * 支持庫名稱:PF_Config.h *
0000 ; * 需要版本: ----- *
0000 ; * 支持庫說明:硬件平臺配置聲明庫 *
0000 ; * -------------------------------------------------------- *
0000 ; * [版本更新] *
0000 ; * 修改: *
0000 ; * 修改日期: *
0000 ; * 版本: *
0000 ; * -------------------------------------------------------- *
0000 ; * [版本歷史] *
0000 ; * -------------------------------------------------------- *
0000 ; * [使用說明] *
0000 ; ***********************************************************/
0000 ;
0000 ; /********************
0000 ; * 頭 文 件 配 置 區 *
0000 ; ********************/
0000 ; # include "PF_Config.h"
0000 ; # include "EX_Support.h"
0000 ;
0000 ;
0000 ; /********************
0000 ; * 系 統 宏 定 義 *
0000 ; ********************/
0000 ;
0000 ; /*------------------*
0000 ; * 常 數 宏 定 義 *
0000 ; *------------------*/
0000 ;
0000 ; /*------------------*
0000 ; * 動 作 宏 定 義 *
0000 ; *------------------*/
0000 ;
0000 ; /********************
0000 ; * 模塊結構體定義區 *
0000 ; ********************/
0000 ;
0000 ; /********************
0000 ; * 函 數 聲 明 區 *
0000 ; ********************/
0000 ; void System_INIT(void);
0000 ; void Delay_MS(uint16 wTime);
0000 ; void Insert_Timer0_OVF_ISR_Code(void);
0000 ;
0000 ; /********************
0000 ; * 模塊函數聲明區 *
0000 ; ********************/
0000 ; static void Driver_INIT(void);
0000 ;
0000 ; /********************
0000 ; * 模塊變量聲明區 *
0000 ; ********************/
0000 ; static uint16 s_wSystemDelayTimerCounter = 0;
0000 ;
0000 ; /********************
0000 ; * 全局變量聲明區 *
0000 ; ********************/
0000 ; uint16 g_wSystemTimer = 0;
0000 ;
0000 ; /***********************************************************
0000 ; * 函數說明:軟件驅動初始化函數 *
0000 ; * 輸入: 無 *
0000 ; * 輸出: 無 *
0000 ; * 調用函數:無 *
0000 ; ***********************************************************/
0000 ; static void Driver_INIT(void)
0000 ; {
0000 .dbline -2
0000 L1:
0000 .dbline 0 ; func end
0000 0895 ret
0002 .dbend
0002 .dbfunc e System_INIT _System_INIT fV
.even
0002 _System_INIT::
0002 .dbline -1
0002 .dbline 97
0002 ; //*在這里插入你的各類軟件驅動初始化代碼*//
0002 ; }
0002 ;
0002 ; /***********************************************************
0002 ; * 函數說明:系統初始化函數 *
0002 ; * 輸入: 無 *
0002 ; * 輸出: 無 *
0002 ; * 調用函數:Device_INIT() Driver_INIT() *
0002 ; ***********************************************************/
0002 ; void System_INIT(void)
0002 ; {
0002 .dbline 98
0002 ; CLI();
0002 F894 cli
0004 .dbline 100
0004 ;
0004 ; Device_INIT();
0004 00D0 rcall _Device_INIT
0006 .dbline 101
0006 ; Driver_INIT();
0006 FCDF rcall _Driver_INIT
0008 .dbline 105
0008 ;
0008 ; //*在這里插入你的系統環境變量初始化代碼*//
0008 ;
0008 ; SEI();
0008 7894 sei
000A .dbline -2
000A L2:
000A .dbline 0 ; func end
000A 0895 ret
000C .dbend
000C .dbfunc e Delay_MS _Delay_MS fV
000C ; wTime -> R16,R17
.even
000C _Delay_MS::
000C .dbline -1
000C .dbline 115
000C ; }
000C ;
000C ; /***********************************************************
000C ; * 函數說明:系統毫秒延時函數 *
000C ; * 輸入: 需要延時的時間長度 *
000C ; * 輸出: 無 *
000C ; * 調用函數:無 *
000C ; ***********************************************************/
000C ; void Delay_MS(uint16 wTime)
000C ; {
000C .dbline 116
000C ; s_wSystemDelayTimerCounter = wTime;
000C 10930100 sts _s_wSystemDelayTimerCounter+1,R17
0010 00930000 sts _s_wSystemDelayTimerCounter,R16
0014 L4:
0014 .dbline 118
0014 L5:
0014 .dbline 118
0014 ;
0014 ; while(s_wSystemDelayTimerCounter);
0014 20900000 lds R2,_s_wSystemDelayTimerCounter
0018 30900100 lds R3,_s_wSystemDelayTimerCounter+1
001C 2220 tst R2
001E D1F7 brne L4
0020 3320 tst R3
0022 C1F7 brne L4
0024 X0:
0024 .dbline -2
0024 L3:
0024 .dbline 0 ; func end
0024 0895 ret
0026 .dbsym r wTime 16 i
0026 .dbend
0026 .dbfunc e Insert_Timer0_OVF_ISR_Code _Insert_Timer0_OVF_ISR_Code fV
.even
0026 _Insert_Timer0_OVF_ISR_Code::
0026 .dbline -1
0026 .dbline 128
0026 ; }
0026 ;
0026 ; /***********************************************************
0026 ; * 函數說明:定時器0中斷處理程序代碼插入函數 *
0026 ; * 輸入: 無 *
0026 ; * 輸出: 無 *
0026 ; * 調用函數:無 *
0026 ; ***********************************************************/
0026 ; void Insert_Timer0_OVF_ISR_Code (void)
0026 ; {
0026 .dbline 129
0026 ; g_wSystemTimer++;
0026 80910200 lds R24,_g_wSystemTimer
002A 90910300 lds R25,_g_wSystemTimer+1
002E 0196 adiw R24,1
0030 90930300 sts _g_wSystemTimer+1,R25
0034 80930200 sts _g_wSystemTimer,R24
0038 .dbline 131
0038 ;
0038 ; if (s_wSystemDelayTimerCounter)
0038 20900000 lds R2,_s_wSystemDelayTimerCounter
003C 30900100 lds R3,_s_wSystemDelayTimerCounter+1
0040 2220 tst R2
0042 11F4 brne X1
0044 3320 tst R3
0046 49F0 breq L8
0048 X1:
0048 .dbline 132
0048 ; {
0048 .dbline 133
0048 ; s_wSystemDelayTimerCounter--;
0048 80910000 lds R24,_s_wSystemDelayTimerCounter
004C 90910100 lds R25,_s_wSystemDelayTimerCounter+1
0050 0197 sbiw R24,1
0052 90930100 sts _s_wSystemDelayTimerCounter+1,R25
0056 80930000 sts _s_wSystemDelayTimerCounter,R24
005A .dbline 134
005A ; }
005A L8:
005A .dbline 136
005A 80910200 lds R24,_g_wSystemTimer
005E 90910300 lds R25,_g_wSystemTimer+1
0062 9170 andi R25,1
0064 8030 cpi R24,0
0066 8907 cpc R24,R25
0068 21F4 brne L10
006A X2:
006A .dbline 137
006A .dbline 138
006A 80E2 ldi R24,32
006C 28B0 in R2,0x8
006E 2826 eor R2,R24
0070 28B8 out 0x8,R2
0072 .dbline 139
0072 L10:
0072 .dbline -2
0072 L7:
0072 .dbline 0 ; func end
0072 0895 ret
0074 .dbend
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -