From de1f2b6b848c3325d8d8af521d5e6176a4295ad2 Mon Sep 17 00:00:00 2001 From: wuyangyong Date: Thu, 23 Jun 2011 15:24:10 +0000 Subject: [PATCH] update stm32f10x git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1534 bbd45198-f89e-11dd-88c7-29a3b14d5316 --- bsp/stm32f10x/SConscript | 2 +- bsp/stm32f10x/application.c | 42 +++++++++ bsp/stm32f10x/board.h | 2 +- bsp/stm32f10x/dm9000a.c | 4 +- bsp/stm32f10x/led.c | 20 ++-- bsp/stm32f10x/project.Uv2 | 129 +++++++++----------------- bsp/stm32f10x/project.ewd | 154 +++--------------------------- bsp/stm32f10x/project.ewp | 175 +++++++++-------------------------- bsp/stm32f10x/readme.txt | 11 +++ bsp/stm32f10x/rtconfig.h | 17 +++- bsp/stm32f10x/rtconfig.py | 2 +- bsp/stm32f10x/sdcard.c | 12 +++ bsp/stm32f10x/startup.c | 7 +- bsp/stm32f10x/stm32f10x_it.c | 8 +- 14 files changed, 203 insertions(+), 382 deletions(-) create mode 100644 bsp/stm32f10x/readme.txt diff --git a/bsp/stm32f10x/SConscript b/bsp/stm32f10x/SConscript index cb67d7eec..339095787 100644 --- a/bsp/stm32f10x/SConscript +++ b/bsp/stm32f10x/SConscript @@ -15,7 +15,7 @@ if GetDepend('RT_USING_LWIP'): if rtconfig.STM32_TYPE == 'STM32F10X_CL': src_drv += ['stm32_eth.c'] else: - src_drv += ['enc28j60.c'] + src_drv += ['enc28j60.c'] + ['dm9000a.c'] src = src_bsp + src_drv CPPPATH = [RTT_ROOT + '/bsp/stm32f10x'] diff --git a/bsp/stm32f10x/application.c b/bsp/stm32f10x/application.c index 41c4725c0..975fba1f9 100644 --- a/bsp/stm32f10x/application.c +++ b/bsp/stm32f10x/application.c @@ -35,6 +35,36 @@ #include #endif +#include "led.h" + +ALIGN(RT_ALIGN_SIZE) +static struct rt_thread led_thread; +static rt_uint32_t led_stack[512/4]; +static void led_thread_entry(void* parameter) +{ + unsigned int count=0; + + rt_hw_led_init(); + + while (1) + { + /* led1 on */ +#ifndef RT_USING_FINSH + rt_kprintf("led on, count : %d\r\n",count); +#endif + count++; + rt_hw_led_on(0); + rt_thread_delay( RT_TICK_PER_SECOND/2 ); /* sleep 0.5 second and switch to other thread */ + + /* led1 off */ +#ifndef RT_USING_FINSH + rt_kprintf("led2 off\r\n"); +#endif + rt_hw_led_off(0); + rt_thread_delay( RT_TICK_PER_SECOND/2 ); + } +} + void rt_init_thread_entry(void* parameter) { /* Filesystem Initialization */ @@ -91,6 +121,18 @@ int rt_application_init() { rt_thread_t init_thread; + rt_err_t result; + + /* init led thread */ + result = rt_thread_init(&led_thread, + "led", + led_thread_entry, RT_NULL, + (rt_uint8_t*)&led_stack[0], sizeof(led_stack), 20, 5); + if (result == RT_EOK) + { + rt_thread_startup(&led_thread); + } + #if (RT_THREAD_PRIORITY_MAX == 32) init_thread = rt_thread_create("init", rt_init_thread_entry, RT_NULL, diff --git a/bsp/stm32f10x/board.h b/bsp/stm32f10x/board.h index 0107d126e..2ae134593 100644 --- a/bsp/stm32f10x/board.h +++ b/bsp/stm32f10x/board.h @@ -44,7 +44,7 @@ // Ethernet Interface: <0=> Microchip ENC28J60 <1=> Davicom DM9000A // Default: 0 -#define STM32_ETH_IF 0 +#define STM32_ETH_IF 1 void rt_hw_board_led_on(int n); void rt_hw_board_led_off(int n); diff --git a/bsp/stm32f10x/dm9000a.c b/bsp/stm32f10x/dm9000a.c index 5b4c8feb0..92cc7f84b 100644 --- a/bsp/stm32f10x/dm9000a.c +++ b/bsp/stm32f10x/dm9000a.c @@ -27,7 +27,7 @@ #endif /* - * DM9000 interrupt line is connected to PF7 + * DM9000 interrupt line is connected to PE4 */ //-------------------------------------------------------- @@ -586,7 +586,7 @@ static void NVIC_Configuration(void) { NVIC_InitTypeDef NVIC_InitStructure; - /* Enable the EXTI0 Interrupt */ + /* Enable the EXTI4 Interrupt */ NVIC_InitStructure.NVIC_IRQChannel = EXTI4_IRQn; NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1; NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; diff --git a/bsp/stm32f10x/led.c b/bsp/stm32f10x/led.c index 6645965d2..5b2a654ac 100644 --- a/bsp/stm32f10x/led.c +++ b/bsp/stm32f10x/led.c @@ -14,6 +14,7 @@ #include #include +// led define #ifdef STM32_SIMULATOR #define led1_rcc RCC_APB2Periph_GPIOA #define led1_gpio GPIOA @@ -22,15 +23,18 @@ #define led2_rcc RCC_APB2Periph_GPIOA #define led2_gpio GPIOA #define led2_pin (GPIO_Pin_6) -#else -#define led1_rcc RCC_APB2Periph_GPIOF -#define led1_gpio GPIOF -#define led1_pin (GPIO_Pin_6 | GPIO_Pin_7) -#define led2_rcc RCC_APB2Periph_GPIOF -#define led2_gpio GPIOF -#define led2_pin (GPIO_Pin_8) -#endif +#else + +#define led1_rcc RCC_APB2Periph_GPIOE +#define led1_gpio GPIOE +#define led1_pin (GPIO_Pin_2) + +#define led2_rcc RCC_APB2Periph_GPIOE +#define led2_gpio GPIOE +#define led2_pin (GPIO_Pin_3) + +#endif // led define #ifdef STM32_SIMULATOR void rt_hw_led_init(void) { diff --git a/bsp/stm32f10x/project.Uv2 b/bsp/stm32f10x/project.Uv2 index 67b94b208..5f31aab2b 100644 --- a/bsp/stm32f10x/project.Uv2 +++ b/bsp/stm32f10x/project.Uv2 @@ -6,9 +6,7 @@ Target (RT-Thread STM32), 0x0004 // Tools: 'ARM-ADS' Group (Startup) Group (Kernel) Group (STM32) -Group (Filesystem) Group (finsh) -Group (LwIP) Group (STM32_StdPeriph) File 1,1,<.\application.c> @@ -19,8 +17,6 @@ File 1,1,<.\rtc.c> File 1,1,<.\usart.c> File 1,1,<.\serial.c> File 1,1,<.\led.c> -File 1,1,<.\sdcard.c> -File 1,1,<.\enc28j60.c> File 2,1,<..\..\src\clock.c> File 2,1,<..\..\src\device.c> File 2,1,<..\..\src\idle.c> @@ -41,86 +37,45 @@ File 3,2,<..\..\libcpu\arm\stm32\context_rvds.S> File 3,1,<..\..\libcpu\arm\common\backtrace.c> File 3,1,<..\..\libcpu\arm\common\div0.c> File 3,1,<..\..\libcpu\arm\common\showmem.c> -File 4,1,<..\..\components\dfs\src\dfs.c> -File 4,1,<..\..\components\dfs\src\dfs_fs.c> -File 4,1,<..\..\components\dfs\src\dfs_file.c> -File 4,1,<..\..\components\dfs\src\dfs_posix.c> -File 4,1,<..\..\components\dfs\filesystems\elmfat\dfs_elm.c> -File 4,1,<..\..\components\dfs\filesystems\elmfat\ff.c> -File 5,1,<..\..\components\finsh\cmd.c> -File 5,1,<..\..\components\finsh\finsh_compiler.c> -File 5,1,<..\..\components\finsh\finsh_error.c> -File 5,1,<..\..\components\finsh\finsh_heap.c> -File 5,1,<..\..\components\finsh\finsh_init.c> -File 5,1,<..\..\components\finsh\finsh_node.c> -File 5,1,<..\..\components\finsh\finsh_ops.c> -File 5,1,<..\..\components\finsh\finsh_parser.c> -File 5,1,<..\..\components\finsh\finsh_token.c> -File 5,1,<..\..\components\finsh\finsh_var.c> -File 5,1,<..\..\components\finsh\finsh_vm.c> -File 5,1,<..\..\components\finsh\shell.c> -File 5,1,<..\..\components\finsh\symbol.c> -File 6,1,<..\..\components\net\lwip\src\api\api_lib.c> -File 6,1,<..\..\components\net\lwip\src\api\api_msg.c> -File 6,1,<..\..\components\net\lwip\src\api\err.c> -File 6,1,<..\..\components\net\lwip\src\api\netbuf.c> -File 6,1,<..\..\components\net\lwip\src\api\netdb.c> -File 6,1,<..\..\components\net\lwip\src\api\netifapi.c> -File 6,1,<..\..\components\net\lwip\src\api\sockets.c> -File 6,1,<..\..\components\net\lwip\src\api\tcpip.c> -File 6,1,<..\..\components\net\lwip\src\arch\sys_arch.c> -File 6,1,<..\..\components\net\lwip\src\arch\sys_arch_init.c> -File 6,1,<..\..\components\net\lwip\src\core\dhcp.c> -File 6,1,<..\..\components\net\lwip\src\core\dns.c> -File 6,1,<..\..\components\net\lwip\src\core\init.c> -File 6,1,<..\..\components\net\lwip\src\core\memp.c> -File 6,1,<..\..\components\net\lwip\src\core\netif.c> -File 6,1,<..\..\components\net\lwip\src\core\pbuf.c> -File 6,1,<..\..\components\net\lwip\src\core\raw.c> -File 6,1,<..\..\components\net\lwip\src\core\stats.c> -File 6,1,<..\..\components\net\lwip\src\core\sys.c> -File 6,1,<..\..\components\net\lwip\src\core\tcp.c> -File 6,1,<..\..\components\net\lwip\src\core\tcp_in.c> -File 6,1,<..\..\components\net\lwip\src\core\tcp_out.c> -File 6,1,<..\..\components\net\lwip\src\core\udp.c> -File 6,1,<..\..\components\net\lwip\src\core\ipv4\autoip.c> -File 6,1,<..\..\components\net\lwip\src\core\ipv4\icmp.c> -File 6,1,<..\..\components\net\lwip\src\core\ipv4\igmp.c> -File 6,1,<..\..\components\net\lwip\src\core\ipv4\inet.c> -File 6,1,<..\..\components\net\lwip\src\core\ipv4\inet_chksum.c> -File 6,1,<..\..\components\net\lwip\src\core\ipv4\ip.c> -File 6,1,<..\..\components\net\lwip\src\core\ipv4\ip_addr.c> -File 6,1,<..\..\components\net\lwip\src\core\ipv4\ip_frag.c> -File 6,1,<..\..\components\net\lwip\src\netif\etharp.c> -File 6,1,<..\..\components\net\lwip\src\netif\ethernetif.c> -File 6,1,<..\..\components\net\lwip\src\netif\loopif.c> -File 6,1,<..\..\components\net\lwip\src\netif\slipif.c> -File 7,1, -File 7,1, -File 7,1, -File 7,1, -File 7,1, -File 7,1, -File 7,1, -File 7,1, -File 7,1, -File 7,1, -File 7,1, -File 7,1, -File 7,1, -File 7,1, -File 7,1, -File 7,1, -File 7,1, -File 7,1, -File 7,1, -File 7,1, -File 7,1, -File 7,1, -File 7,1, -File 7,1, -File 7,1, -File 7,2, +File 4,1,<..\..\components\finsh\cmd.c> +File 4,1,<..\..\components\finsh\finsh_compiler.c> +File 4,1,<..\..\components\finsh\finsh_error.c> +File 4,1,<..\..\components\finsh\finsh_heap.c> +File 4,1,<..\..\components\finsh\finsh_init.c> +File 4,1,<..\..\components\finsh\finsh_node.c> +File 4,1,<..\..\components\finsh\finsh_ops.c> +File 4,1,<..\..\components\finsh\finsh_parser.c> +File 4,1,<..\..\components\finsh\finsh_token.c> +File 4,1,<..\..\components\finsh\finsh_var.c> +File 4,1,<..\..\components\finsh\finsh_vm.c> +File 4,1,<..\..\components\finsh\shell.c> +File 4,1,<..\..\components\finsh\symbol.c> +File 5,1, +File 5,1, +File 5,1, +File 5,1, +File 5,1, +File 5,1, +File 5,1, +File 5,1, +File 5,1, +File 5,1, +File 5,1, +File 5,1, +File 5,1, +File 5,1, +File 5,1, +File 5,1, +File 5,1, +File 5,1, +File 5,1, +File 5,1, +File 5,1, +File 5,1, +File 5,1, +File 5,1, +File 5,1, +File 5,2, Options 1,0,0 // Target 'RT-Thread STM32' @@ -181,7 +136,7 @@ Options 1,0,0 // Target 'RT-Thread STM32' ADSCMISC () ADSCDEFN (STM32F10X_HD, USE_STDPERIPH_DRIVER) ADSCUDEF () - ADSCINCD (Libraries\STM32F10x_StdPeriph_Driver\inc;Libraries\CMSIS\CM3\CoreSupport;..\..\components\dfs;..\..\components\finsh;..\..\components\net\lwip\src\include;.;..\..\components\net\lwip\src\include\ipv4;..\..\include;..\..\components\net\lwip\src\arch\include;..\..\components\dfs\include;..\..\components\net\lwip\src;..\..\libcpu\arm\common;..\..\libcpu\arm\stm32;..\..\components\net\lwip\src\include\netif;Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x) + ADSCINCD (Libraries\STM32F10x_StdPeriph_Driver\inc;..\..\components\finsh;.;..\..\include;Libraries\CMSIS\CM3\CoreSupport;..\..\libcpu\arm\common;..\..\libcpu\arm\stm32;Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x) ADSASFLG { 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } ADSAMISC () ADSADEFN () @@ -202,11 +157,11 @@ Options 1,0,0 // Target 'RT-Thread STM32' ADSLDSC () ADSLDIB () ADSLDIC () - ADSLDMC ( --keep __fsym_* --keep __vsym_*) + ADSLDMC ( --keep __fsym_* --keep __vsym_* ) ADSLDIF () ADSLDDW () OPTDL (SARMCM3.DLL)()(DARMSTM.DLL)(-pSTM32F103ZE)(SARMCM3.DLL)()(TARMSTM.DLL)(-pSTM32F103ZE) - OPTDBG 49149,7,()()()()()()()()()() (Segger\JL2CM3.dll)()()() + OPTDBG 49150,7,()()()()()()()()()() (Segger\JL2CM3.dll)()()() FLASH1 { 1,0,0,0,1,0,0,0,6,16,0,0,0,0,0,0,0,0,0,0 } FLASH2 (Segger\JL2CM3.dll) FLASH3 ("" ()) diff --git a/bsp/stm32f10x/project.ewd b/bsp/stm32f10x/project.ewd index 4f00f6cc0..68ee03819 100644 --- a/bsp/stm32f10x/project.ewd +++ b/bsp/stm32f10x/project.ewd @@ -12,7 +12,7 @@ C-SPY 2 - 22 + 21 1 1 - - - - - - @@ -317,7 +293,7 @@ JLINK_ID 2 - 11 + 10 1 1 - - - - - - - - - @@ -722,10 +662,6 @@ $TOOLKIT_DIR$\plugins\rtos\PowerPac\PowerPacRTOS.ewplugin 0 - - $TOOLKIT_DIR$\plugins\rtos\Quadros\Quadros_EWB5_Plugin.ewplugin - 0 - $TOOLKIT_DIR$\plugins\rtos\ThreadX\ThreadXArmPlugin.ENU.ewplugin 0 @@ -770,7 +706,7 @@ C-SPY 2 - 22 + 21 1 0 - - - - - - @@ -1075,7 +987,7 @@ JLINK_ID 2 - 11 + 10 1 0 - - - - - - - - - @@ -1480,10 +1356,6 @@ $TOOLKIT_DIR$\plugins\rtos\PowerPac\PowerPacRTOS.ewplugin 0 - - $TOOLKIT_DIR$\plugins\rtos\Quadros\Quadros_EWB5_Plugin.ewplugin - 0 - $TOOLKIT_DIR$\plugins\rtos\ThreadX\ThreadXArmPlugin.ENU.ewplugin 0 diff --git a/bsp/stm32f10x/project.ewp b/bsp/stm32f10x/project.ewp index 17a4d13f4..28b8a089c 100644 --- a/bsp/stm32f10x/project.ewp +++ b/bsp/stm32f10x/project.ewp @@ -29,8 +29,8 @@ @@ -575,7 +559,7 @@ ILINK 0 - 9 + 8 1 1 - - - @@ -857,7 +829,7 @@ @@ -1403,7 +1347,7 @@ ILINK 0 - 9 + 8 1 0 - - - @@ -1658,15 +1590,6 @@ - - CMSIS - - $PROJ_DIR$\Libraries\CMSIS\CM3\CoreSupport\core_cm3.c - - - $PROJ_DIR$\system_stm32f10x.c - - Filesystem @@ -1969,6 +1892,9 @@ $PROJ_DIR$\sdcard.c + + $PROJ_DIR$\serial.c + $PROJ_DIR$\startup.c @@ -1981,9 +1907,15 @@ StdPeriph_Driver + + $PROJ_DIR$\Libraries\CMSIS\CM3\CoreSupport\core_cm3.c + $PROJ_DIR$\Libraries\STM32F10x_StdPeriph_Driver\src\misc.c + + $PROJ_DIR$\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\iar\startup_stm32f10x_hd.s + $PROJ_DIR$\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_adc.c @@ -2047,6 +1979,9 @@ $PROJ_DIR$\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_wwdg.c + + $PROJ_DIR$\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\system_stm32f10x.c + STM32 @@ -2054,25 +1989,7 @@ $PROJ_DIR$\..\..\libcpu\arm\stm32\context_iar.S - $PROJ_DIR$\..\..\libcpu\arm\stm32\cpu.c - - - $PROJ_DIR$\..\..\libcpu\arm\stm32\fault.c - - - $PROJ_DIR$\..\..\libcpu\arm\stm32\fault_iar.S - - - $PROJ_DIR$\..\..\libcpu\arm\stm32\interrupt.c - - - $PROJ_DIR$\..\..\libcpu\arm\stm32\serial.c - - - $PROJ_DIR$\..\..\libcpu\arm\stm32\stack.c - - - $PROJ_DIR$\..\..\libcpu\arm\stm32\start_iar.s + $PROJ_DIR$\..\..\libcpu\arm\stm32\cpuport.c diff --git a/bsp/stm32f10x/readme.txt b/bsp/stm32f10x/readme.txt new file mode 100644 index 000000000..7ae88cd11 --- /dev/null +++ b/bsp/stm32f10x/readme.txt @@ -0,0 +1,11 @@ +-- cn -- +按需要生成工程文件: +1. 修改 rtconfig.py : +CROSS_TOOL='keil' #使用的工具链 +STM32_TYPE = 'STM32F10X_HD' #STM32对应的型号. +2. 修改 rtconfig.h 配置需要的功能. +2. 执行 scons --target=mdk 生成MDK工程文件. + +note: 需要安装 python,scons. + +-- en -- diff --git a/bsp/stm32f10x/rtconfig.h b/bsp/stm32f10x/rtconfig.h index 876682600..c48b25d15 100644 --- a/bsp/stm32f10x/rtconfig.h +++ b/bsp/stm32f10x/rtconfig.h @@ -73,8 +73,18 @@ #define FINSH_USING_DESCRIPTION /* SECTION: device filesystem */ -#define RT_USING_DFS +//#define RT_USING_DFS +/* #define RT_USING_DFS_EFSL */ +/* byte alignment for EFSL */ +#define BYTE_ALIGNMENT + #define RT_USING_DFS_ELMFAT +#define RT_DFS_ELM_WORD_ACCESS +#define RT_DFS_ELM_REENTRANT +#define RT_DFS_ELM_DRIVES 2 +//#define RT_DFS_ELM_USE_LFN +#define RT_DFS_ELM_MAX_LFN 255 +#define RT_DFS_ELM_MAX_SECTOR_SIZE 512 /* the max number of mounted filesystem */ #define DFS_FILESYSTEMS_MAX 2 @@ -84,7 +94,7 @@ #define DFS_CACHE_MAX_NUM 4 /* SECTION: lwip, a lighwight TCP/IP protocol stack */ -#define RT_USING_LWIP +//#define RT_USING_LWIP /* LwIP uses RT-Thread Memory Management */ #define RT_LWIP_USING_RT_MEM /* Enable ICMP protocol*/ @@ -99,6 +109,9 @@ /* the number of simulatenously active TCP connections*/ #define RT_LWIP_TCP_PCB_NUM 5 +/* Using DHCP */ +//#define RT_LWIP_DHCP + /* ip address of target*/ #define RT_LWIP_IPADDR0 192 #define RT_LWIP_IPADDR1 168 diff --git a/bsp/stm32f10x/rtconfig.py b/bsp/stm32f10x/rtconfig.py index 83813d45e..2b8561738 100644 --- a/bsp/stm32f10x/rtconfig.py +++ b/bsp/stm32f10x/rtconfig.py @@ -1,7 +1,7 @@ # toolchains options ARCH='arm' CPU='stm32' -CROSS_TOOL='gcc' +CROSS_TOOL='keil' if CROSS_TOOL == 'gcc': PLATFORM = 'gcc' diff --git a/bsp/stm32f10x/sdcard.c b/bsp/stm32f10x/sdcard.c index 4ace98175..a42cab6cf 100644 --- a/bsp/stm32f10x/sdcard.c +++ b/bsp/stm32f10x/sdcard.c @@ -3161,6 +3161,17 @@ static rt_err_t rt_sdcard_control(rt_device_t dev, rt_uint8_t cmd, void *args) void rt_hw_sdcard_init() { + /* SDIO POWER */ + GPIO_InitTypeDef GPIO_InitStructure; + + RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE); + GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6; + GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; + GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz; + GPIO_Init(GPIOC,&GPIO_InitStructure); + GPIO_ResetBits(GPIOC,GPIO_Pin_6); /* SD card power up */ + // delay same time for SD card power up + if (SD_Init() == SD_OK) { SD_Error status; @@ -3223,4 +3234,5 @@ void rt_hw_sdcard_init() __return: rt_kprintf("sdcard init failed\n"); + GPIO_SetBits(GPIOC,GPIO_Pin_6); /* SD card power down */ } diff --git a/bsp/stm32f10x/startup.c b/bsp/stm32f10x/startup.c index 9588e44a4..0218c4a69 100644 --- a/bsp/stm32f10x/startup.c +++ b/bsp/stm32f10x/startup.c @@ -135,13 +135,8 @@ void rtthread_startup(void) int main(void) { - rt_uint32_t UNUSED level; - /* disable interrupt first */ - level = rt_hw_interrupt_disable(); - - /* init system setting */ - SystemInit(); + rt_hw_interrupt_disable(); /* startup RT-Thread RTOS */ rtthread_startup(); diff --git a/bsp/stm32f10x/stm32f10x_it.c b/bsp/stm32f10x/stm32f10x_it.c index 41d62d9c6..edbd848a0 100644 --- a/bsp/stm32f10x/stm32f10x_it.c +++ b/bsp/stm32f10x/stm32f10x_it.c @@ -291,21 +291,21 @@ void EXTI0_IRQHandler(void) #if (STM32_ETH_IF == 1) /******************************************************************************* -* Function Name : EXTI9_5_IRQHandler +* Function Name : EXTI4_IRQHandler * Description : This function handles External lines 9 to 5 interrupt request. * Input : None * Output : None * Return : None *******************************************************************************/ -void EXTI9_5_IRQHandler(void) +void EXTI4_IRQHandler(void) { extern void rt_dm9000_isr(void); /* enter interrupt */ rt_interrupt_enter(); - /* Clear the Key Button EXTI line pending bit */ - EXTI_ClearITPendingBit(EXTI_Line7); + /* Clear the DM9000A EXTI line pending bit */ + EXTI_ClearITPendingBit(EXTI_Line4); rt_dm9000_isr();