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

📄 hd_support.lis

📁 AVR基本工程模板(含调度器) 内有详细说明
💻 LIS
字号:
                        .module HD_Support.c
                        .area text(rom, con, rel)
 0000                   .dbfile H:\单片机\工程模板\基本工程模板with调度器\HD_Support.c
                        .area vector(rom, abs)
                        .org 32
 0020 08C0              rjmp _Timer0_OVF_ISR
                        .area text(rom, con, rel)
 0000                   .dbfile H:\单片机\工程模板\基本工程模板with调度器\HD_Support.c
 0000                   .dbfunc e Device_INIT _Device_INIT fV
                        .even
 0000           _Device_INIT::
 0000                   .dbline -1
 0000                   .dbline 83
 0000           ; /***********************************************************
 0000           ; *   函数库说明:底层硬件初始化函数库                       *
 0000           ; *   版本:                                                 *
 0000           ; *   作者:                                                 *
 0000           ; *   创建日期:                                             *
 0000           ; * -------------------------------------------------------- *
 0000           ; *  [硬件说明]                                              *
 0000           ; *   处理器:                                               *
 0000           ; *   系统时钟:                                             *
 0000           ; * -------------------------------------------------------- *
 0000           ; *  [支 持 库]                                              *
 0000           ; *   支持库名称:PF_Config.h                                *
 0000           ; *   需要版本:  -----                                      *
 0000           ; *   声明库说明:硬件平台配置声明库                         *
 0000           ; *                                                          *
 0000           ; *   支持库名称:HD_Support.h                               *
 0000           ; *   需要版本:  -----                                      *
 0000           ; *   声明库说明:底层硬件初始化声明库                       *
 0000           ; * -------------------------------------------------------- *
 0000           ; *  [版本更新]                                              *
 0000           ; *   修改:                                                 *
 0000           ; *   修改日期:                                             *
 0000           ; *   版本:                                                 *
 0000           ; * -------------------------------------------------------- *
 0000           ; *  [版本历史]                                              *
 0000           ; * -------------------------------------------------------- *
 0000           ; *  [使用说明]                                              *
 0000           ; ***********************************************************/
 0000           ; 
 0000           ; /********************
 0000           ; * 头 文 件 配 置 区 *
 0000           ; ********************/
 0000           ; # include "PF_Config.h"
 0000           ; # include "HD_Support.h"
 0000           ; 
 0000           ; /********************
 0000           ; *   系 统 宏 定 义  *
 0000           ; ********************/
 0000           ; # pragma interrupt_handler Timer0_OVF_ISR:iv_TIMER0_OVF
 0000           ; 
 0000           ; /*------------------*
 0000           ; *   常 数 宏 定 义  *
 0000           ; *------------------*/
 0000           ; 
 0000           ; /*------------------*
 0000           ; *   动 作 宏 定 义  *
 0000           ; *------------------*/
 0000           ; #ifndef INSERT_TIMER0_OVF_ISR_CODE
 0000           ;     # define INSERT_TIMER0_OVF_ISR_CODE
 0000           ; #endif
 0000           ; 
 0000           ; /********************
 0000           ; *  模块结构体定义区 *
 0000           ; ********************/
 0000           ; 
 0000           ; /********************
 0000           ; *   函 数 声 明 区  *
 0000           ; ********************/
 0000           ; void Device_INIT(void);
 0000           ; 
 0000           ; /********************
 0000           ; *   模块函数声明区  *
 0000           ; ********************/
 0000           ; static void Port_INIT(void);
 0000           ; static void Timer0_INIT(void);
 0000           ; 
 0000           ; /********************
 0000           ; *   模块变量声明区  *
 0000           ; ********************/
 0000           ; 
 0000           ; /********************
 0000           ; *   全局变量声明区  *
 0000           ; ********************/
 0000           ; 
 0000           ; 
 0000           ; /***********************************************************
 0000           ; *   函数说明:系统硬件初始化函数                           *
 0000           ; *   输入:    无                                           *
 0000           ; *   输出:    无                                           *
 0000           ; *   调用函数:Port_INIT()   Timer0_INIT()                  *
 0000           ; ***********************************************************/
 0000           ; void Device_INIT(void)
 0000           ; {
 0000                   .dbline 84
 0000           ;     Port_INIT();
 0000 05D0              rcall _Port_INIT
 0002                   .dbline 85
 0002           ;     Timer0_INIT();
 0002 05D0              rcall _Timer0_INIT
 0004                   .dbline 88
 0004           ;     //*在这里添加其他初始化函数*//
 0004           ;     
 0004           ;     TIMSK0 = BIT(TOIE0);                                    //启动定时期0溢出中断资源
 0004 81E0              ldi R24,1
 0006 80936E00          sts 110,R24
 000A                   .dbline -2
 000A           L1:
 000A                   .dbline 0 ; func end
 000A 0895              ret
 000C                   .dbend
 000C                   .dbfunc s Port_INIT _Port_INIT fV
                        .even
 000C           _Port_INIT:
 000C                   .dbline -1
 000C                   .dbline 99
 000C           ;     //*在这里添加其他全局寄存器的初始化代码*//
 000C           ; }
 000C           ; 
 000C           ; /***********************************************************
 000C           ; *   函数说明:系统端口初始化函数                           *
 000C           ; *   输入:    无                                           *
 000C           ; *   输出:    无                                           *
 000C           ; *   调用函数:无                                           *
 000C           ; ***********************************************************/
 000C           ; static void Port_INIT(void)
 000C           ; {
 000C                   .dbline -2
 000C           L2:
 000C                   .dbline 0 ; func end
 000C 0895              ret
 000E                   .dbend
 000E                   .dbfunc s Timer0_INIT _Timer0_INIT fV
                        .even
 000E           _Timer0_INIT:
 000E                   .dbline -1
 000E                   .dbline 111
 000E           ;     //*在这里添加端口初始化代码*//
 000E           ;     
 000E           ; }
 000E           ; 
 000E           ; /***********************************************************
 000E           ; *   函数声明:定时器0初始化函数                            *
 000E           ; *   输入:    无                                           *
 000E           ; *   输出:    无                                           *
 000E           ; *   调用函数:无                                           *
 000E           ; ***********************************************************/
 000E           ; static void Timer0_INIT(void)
 000E           ; {
 000E                   .dbline -2
 000E           L3:
 000E                   .dbline 0 ; func end
 000E 0895              ret
 0010                   .dbend
 0010                   .dbfunc e Timer0_OVF_ISR _Timer0_OVF_ISR fV
                        .even
 0010           _Timer0_OVF_ISR::
 0010 0A92              st -y,R0
 0012 1A92              st -y,R1
 0014 2A92              st -y,R2
 0016 3A92              st -y,R3
 0018 4A92              st -y,R4
 001A 5A92              st -y,R5
 001C 6A92              st -y,R6
 001E 7A92              st -y,R7
 0020 8A92              st -y,R8
 0022 9A92              st -y,R9
 0024 0A93              st -y,R16
 0026 1A93              st -y,R17
 0028 2A93              st -y,R18
 002A 3A93              st -y,R19
 002C 8A93              st -y,R24
 002E 9A93              st -y,R25
 0030 AA93              st -y,R26
 0032 BA93              st -y,R27
 0034 EA93              st -y,R30
 0036 FA93              st -y,R31
 0038 0FB6              in R0,0x3f
 003A 0A92              st -y,R0
 003C                   .dbline -1
 003C                   .dbline 124
 003C           ;     //*在这里粘贴从代码生成向导中生成的初始化代码*//
 003C           ;     //*要求为1K的溢出中断                        *//
 003C           ;     
 003C           ; }
 003C           ; 
 003C           ; /***********************************************************
 003C           ; *   函数声明:定时器0溢出中断处理程序                      *
 003C           ; *   输入:    无                                           *
 003C           ; *   输出:    无                                           *
 003C           ; *   调用函数:INSERT_TIMER0_OVF_ISR_CODE                   *
 003C           ; ***********************************************************/
 003C           ; void Timer0_OVF_ISR(void)
 003C           ; {
 003C                   .dbline 126
 003C           ;     //*这里要添加对定时计数器重新设置计数底数的代码*//
 003C           ;     INSERT_TIMER0_OVF_ISR_CODE
 003C 7894              sei
 003E                   .dbline 126
 003E 00D0              rcall _Insert_Timer0_OVF_ISR_Code
 0040                   .dbline -2
 0040           L4:
 0040                   .dbline 0 ; func end
 0040 0990              ld R0,y+
 0042 0FBE              out 0x3f,R0
 0044 F991              ld R31,y+
 0046 E991              ld R30,y+
 0048 B991              ld R27,y+
 004A A991              ld R26,y+
 004C 9991              ld R25,y+
 004E 8991              ld R24,y+
 0050 3991              ld R19,y+
 0052 2991              ld R18,y+
 0054 1991              ld R17,y+
 0056 0991              ld R16,y+
 0058 9990              ld R9,y+
 005A 8990              ld R8,y+
 005C 7990              ld R7,y+
 005E 6990              ld R6,y+
 0060 5990              ld R5,y+
 0062 4990              ld R4,y+
 0064 3990              ld R3,y+
 0066 2990              ld R2,y+
 0068 1990              ld R1,y+
 006A 0990              ld R0,y+
 006C 1895              reti
 006E                   .dbend
 006E           ; }

⌨️ 快捷键说明

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