From a8aaabae4c1cc64a01d740a436336ca31c1f79ba Mon Sep 17 00:00:00 2001 From: iperry Date: Thu, 17 Dec 2009 02:46:08 +0000 Subject: removed extraneous files, stm32lib examples git-svn-id: https://leaflabs.googlecode.com/svn/trunk/library@70 749a229e-a60e-11de-b98f-4500b42dc123 --- src/stm32lib/examples/FSMC/NAND/fsmc_nand.c | 491 ------------- src/stm32lib/examples/FSMC/NAND/fsmc_nand.h | 99 --- src/stm32lib/examples/FSMC/NAND/main.c | 247 ------- src/stm32lib/examples/FSMC/NAND/readme.txt | 56 -- src/stm32lib/examples/FSMC/NAND/stm32f10x_conf.h | 170 ----- src/stm32lib/examples/FSMC/NAND/stm32f10x_it.c | 810 --------------------- src/stm32lib/examples/FSMC/NAND/stm32f10x_it.h | 100 --- src/stm32lib/examples/FSMC/NOR/fsmc_nor.c | 416 ----------- src/stm32lib/examples/FSMC/NOR/fsmc_nor.h | 58 -- src/stm32lib/examples/FSMC/NOR/main.c | 233 ------ src/stm32lib/examples/FSMC/NOR/readme.txt | 55 -- src/stm32lib/examples/FSMC/NOR/stm32f10x_conf.h | 170 ----- src/stm32lib/examples/FSMC/NOR/stm32f10x_it.c | 810 --------------------- src/stm32lib/examples/FSMC/NOR/stm32f10x_it.h | 100 --- .../FSMC/NOR_CodeExecute/binary/FLASH_NOR.ini | 38 - .../NOR_CodeExecute/binary/STM3210E-EVAL_NOR.FLM | Bin 13260 -> 0 bytes .../examples/FSMC/NOR_CodeExecute/binary/main.c | 112 --- .../FSMC/NOR_CodeExecute/binary/readme.txt | 92 --- .../FSMC/NOR_CodeExecute/binary/stm32f10x_conf.h | 170 ----- .../FSMC/NOR_CodeExecute/binary/stm32f10x_it.c | 810 --------------------- .../FSMC/NOR_CodeExecute/binary/stm32f10x_it.h | 100 --- .../examples/FSMC/NOR_CodeExecute/fsmc_nor.c | 416 ----------- .../examples/FSMC/NOR_CodeExecute/fsmc_nor.h | 58 -- src/stm32lib/examples/FSMC/NOR_CodeExecute/main.c | 171 ----- .../examples/FSMC/NOR_CodeExecute/readme.txt | 56 -- .../examples/FSMC/NOR_CodeExecute/stm32f10x_conf.h | 170 ----- .../examples/FSMC/NOR_CodeExecute/stm32f10x_it.c | 810 --------------------- .../examples/FSMC/NOR_CodeExecute/stm32f10x_it.h | 100 --- src/stm32lib/examples/FSMC/SRAM/fsmc_sram.c | 161 ---- src/stm32lib/examples/FSMC/SRAM/fsmc_sram.h | 33 - src/stm32lib/examples/FSMC/SRAM/main.c | 223 ------ src/stm32lib/examples/FSMC/SRAM/readme.txt | 54 -- src/stm32lib/examples/FSMC/SRAM/stm32f10x_conf.h | 170 ----- src/stm32lib/examples/FSMC/SRAM/stm32f10x_it.c | 810 --------------------- src/stm32lib/examples/FSMC/SRAM/stm32f10x_it.h | 100 --- src/stm32lib/examples/FSMC/SRAM_DataMemory/main.c | 164 ----- .../examples/FSMC/SRAM_DataMemory/readme.txt | 76 -- .../examples/FSMC/SRAM_DataMemory/stm32f10x_conf.h | 170 ----- .../examples/FSMC/SRAM_DataMemory/stm32f10x_it.c | 810 --------------------- .../examples/FSMC/SRAM_DataMemory/stm32f10x_it.h | 100 --- .../FSMC/SRAM_DataMemory/stm32f10x_vector.s | 329 --------- 41 files changed, 10118 deletions(-) delete mode 100755 src/stm32lib/examples/FSMC/NAND/fsmc_nand.c delete mode 100755 src/stm32lib/examples/FSMC/NAND/fsmc_nand.h delete mode 100755 src/stm32lib/examples/FSMC/NAND/main.c delete mode 100755 src/stm32lib/examples/FSMC/NAND/readme.txt delete mode 100755 src/stm32lib/examples/FSMC/NAND/stm32f10x_conf.h delete mode 100755 src/stm32lib/examples/FSMC/NAND/stm32f10x_it.c delete mode 100755 src/stm32lib/examples/FSMC/NAND/stm32f10x_it.h delete mode 100755 src/stm32lib/examples/FSMC/NOR/fsmc_nor.c delete mode 100755 src/stm32lib/examples/FSMC/NOR/fsmc_nor.h delete mode 100755 src/stm32lib/examples/FSMC/NOR/main.c delete mode 100755 src/stm32lib/examples/FSMC/NOR/readme.txt delete mode 100755 src/stm32lib/examples/FSMC/NOR/stm32f10x_conf.h delete mode 100755 src/stm32lib/examples/FSMC/NOR/stm32f10x_it.c delete mode 100755 src/stm32lib/examples/FSMC/NOR/stm32f10x_it.h delete mode 100755 src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/FLASH_NOR.ini delete mode 100755 src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/STM3210E-EVAL_NOR.FLM delete mode 100755 src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/main.c delete mode 100755 src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/readme.txt delete mode 100755 src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/stm32f10x_conf.h delete mode 100755 src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/stm32f10x_it.c delete mode 100755 src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/stm32f10x_it.h delete mode 100755 src/stm32lib/examples/FSMC/NOR_CodeExecute/fsmc_nor.c delete mode 100755 src/stm32lib/examples/FSMC/NOR_CodeExecute/fsmc_nor.h delete mode 100755 src/stm32lib/examples/FSMC/NOR_CodeExecute/main.c delete mode 100755 src/stm32lib/examples/FSMC/NOR_CodeExecute/readme.txt delete mode 100755 src/stm32lib/examples/FSMC/NOR_CodeExecute/stm32f10x_conf.h delete mode 100755 src/stm32lib/examples/FSMC/NOR_CodeExecute/stm32f10x_it.c delete mode 100755 src/stm32lib/examples/FSMC/NOR_CodeExecute/stm32f10x_it.h delete mode 100755 src/stm32lib/examples/FSMC/SRAM/fsmc_sram.c delete mode 100755 src/stm32lib/examples/FSMC/SRAM/fsmc_sram.h delete mode 100755 src/stm32lib/examples/FSMC/SRAM/main.c delete mode 100755 src/stm32lib/examples/FSMC/SRAM/readme.txt delete mode 100755 src/stm32lib/examples/FSMC/SRAM/stm32f10x_conf.h delete mode 100755 src/stm32lib/examples/FSMC/SRAM/stm32f10x_it.c delete mode 100755 src/stm32lib/examples/FSMC/SRAM/stm32f10x_it.h delete mode 100755 src/stm32lib/examples/FSMC/SRAM_DataMemory/main.c delete mode 100755 src/stm32lib/examples/FSMC/SRAM_DataMemory/readme.txt delete mode 100755 src/stm32lib/examples/FSMC/SRAM_DataMemory/stm32f10x_conf.h delete mode 100755 src/stm32lib/examples/FSMC/SRAM_DataMemory/stm32f10x_it.c delete mode 100755 src/stm32lib/examples/FSMC/SRAM_DataMemory/stm32f10x_it.h delete mode 100755 src/stm32lib/examples/FSMC/SRAM_DataMemory/stm32f10x_vector.s (limited to 'src/stm32lib/examples/FSMC') diff --git a/src/stm32lib/examples/FSMC/NAND/fsmc_nand.c b/src/stm32lib/examples/FSMC/NAND/fsmc_nand.c deleted file mode 100755 index 7cc15e7..0000000 --- a/src/stm32lib/examples/FSMC/NAND/fsmc_nand.c +++ /dev/null @@ -1,491 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : fsmc_nand.c -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : This file provides a set of functions needed to drive the -* NAND512W3A2 memory mounted on STM3210E-EVAL board. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ -/* Includes ------------------------------------------------------------------*/ -#include "fsmc_nand.h" - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ - -#define FSMC_Bank_NAND FSMC_Bank2_NAND -#define Bank_NAND_ADDR Bank2_NAND_ADDR -#define Bank2_NAND_ADDR ((u32)0x70000000) - -/* Private macro -------------------------------------------------------------*/ -#define ROW_ADDRESS (Address.Page + (Address.Block + (Address.Zone * NAND_ZONE_SIZE)) * NAND_BLOCK_SIZE) - -/* Private variables ---------------------------------------------------------*/ -/* Private function prototypes -----------------------------------------------*/ -/* Private functions ---------------------------------------------------------*/ -/******************************************************************************* -* Function Name : FSMC_NAND_Init -* Description : Configures the FSMC and GPIOs to interface with the NAND memory. -* This function must be called before any write/read operation -* on the NAND. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void FSMC_NAND_Init(void) -{ - GPIO_InitTypeDef GPIO_InitStructure; - FSMC_NANDInitTypeDef FSMC_NANDInitStructure; - FSMC_NAND_PCCARDTimingInitTypeDef p; - - RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD | RCC_APB2Periph_GPIOE | - RCC_APB2Periph_GPIOF | RCC_APB2Periph_GPIOG, ENABLE); - -/*-- GPIO Configuration ------------------------------------------------------*/ -/* CLE, ALE, D0->D3, NOE, NWE and NCE2 NAND pin configuration */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11 | GPIO_Pin_12 | GPIO_Pin_14 | GPIO_Pin_15 | - GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_4 | GPIO_Pin_5 | - GPIO_Pin_7; - GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; - GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; - - GPIO_Init(GPIOD, &GPIO_InitStructure); - -/* D4->D7 NAND pin configuration */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10; - - GPIO_Init(GPIOE, &GPIO_InitStructure); - - -/* NWAIT NAND pin configuration */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6; - GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; - GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; - - GPIO_Init(GPIOD, &GPIO_InitStructure); - -/* INT2 NAND pin configuration */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6; - GPIO_Init(GPIOG, &GPIO_InitStructure); - - /*-- FSMC Configuration ------------------------------------------------------*/ - p.FSMC_SetupTime = 0x1; - p.FSMC_WaitSetupTime = 0x3; - p.FSMC_HoldSetupTime = 0x2; - p.FSMC_HiZSetupTime = 0x1; - - FSMC_NANDInitStructure.FSMC_Bank = FSMC_Bank2_NAND; - FSMC_NANDInitStructure.FSMC_Waitfeature = FSMC_Waitfeature_Enable; - FSMC_NANDInitStructure.FSMC_MemoryDataWidth = FSMC_MemoryDataWidth_8b; - FSMC_NANDInitStructure.FSMC_ECC = FSMC_ECC_Enable; - FSMC_NANDInitStructure.FSMC_ECCPageSize = FSMC_ECCPageSize_512Bytes; - FSMC_NANDInitStructure.FSMC_AddressLowMapping = FSMC_AddressLowMapping_Direct; - FSMC_NANDInitStructure.FSMC_TCLRSetupTime = 0x00; - FSMC_NANDInitStructure.FSMC_TARSetupTime = 0x00; - FSMC_NANDInitStructure.FSMC_CommonSpaceTimingStruct = &p; - FSMC_NANDInitStructure.FSMC_AttributeSpaceTimingStruct = &p; - - FSMC_NANDInit(&FSMC_NANDInitStructure); - - /* FSMC NAND Bank Cmd Test */ - FSMC_NANDCmd(FSMC_Bank2_NAND, ENABLE); -} - -/****************************************************************************** -* Function Name : FSMC_NAND_ReadID -* Description : Reads NAND memory's ID. -* Input : - NAND_ID: pointer to a NAND_IDTypeDef structure which will hold -* the Manufacturer and Device ID. -* Output : None -* Return : None -*******************************************************************************/ -void FSMC_NAND_ReadID(NAND_IDTypeDef* NAND_ID) -{ - u32 data = 0; - - /* Send Command to the command area */ - *(vu8 *)(Bank_NAND_ADDR | CMD_AREA) = 0x90; - *(vu8 *)(Bank_NAND_ADDR | ADDR_AREA) = 0x00; - - /* Sequence to read ID from NAND flash */ - data = *(vu32 *)(Bank_NAND_ADDR | DATA_AREA); - - NAND_ID->Maker_ID = ADDR_1st_CYCLE (data); - NAND_ID->Device_ID = ADDR_2nd_CYCLE (data); - NAND_ID->Third_ID = ADDR_3rd_CYCLE (data); - NAND_ID->Fourth_ID = ADDR_4th_CYCLE (data); -} - -/****************************************************************************** -* Function Name : FSMC_NAND_WriteSmallPage -* Description : This routine is for writing one or several 512 Bytes Page size. -* Input : - pBuffer: pointer on the Buffer containing data to be written -* - Address: First page address -* - NumPageToWrite: Number of page to write -* Output : None -* Return : New status of the NAND operation. This parameter can be: -* - NAND_TIMEOUT_ERROR: when the previous operation generate -* a Timeout error -* - NAND_READY: when memory is ready for the next operation -* And the new status of the increment address operation. It can be: -* - NAND_VALID_ADDRESS: When the new address is valid address -* - NAND_INVALID_ADDRESS: When the new address is invalid address -*******************************************************************************/ -u32 FSMC_NAND_WriteSmallPage(u8 *pBuffer, NAND_ADDRESS Address, u32 NumPageToWrite) -{ - u32 index = 0x00, numpagewritten = 0x00, addressstatus = NAND_VALID_ADDRESS; - u32 status = NAND_READY, size = 0x00; - - while((NumPageToWrite != 0x00) && (addressstatus == NAND_VALID_ADDRESS) && (status == NAND_READY)) - { - /* Page write command and address */ - *(vu8 *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_AREA_A; - *(vu8 *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_WRITE0; - - *(vu8 *)(Bank_NAND_ADDR | ADDR_AREA) = 0x00; - *(vu8 *)(Bank_NAND_ADDR | ADDR_AREA) = ADDR_1st_CYCLE(ROW_ADDRESS); - *(vu8 *)(Bank_NAND_ADDR | ADDR_AREA) = ADDR_2nd_CYCLE(ROW_ADDRESS); - *(vu8 *)(Bank_NAND_ADDR | ADDR_AREA) = ADDR_3rd_CYCLE(ROW_ADDRESS); - - /* Calculate the size */ - size = NAND_PAGE_SIZE + (NAND_PAGE_SIZE * numpagewritten); - - /* Write data */ - for(; index < size; index++) - { - *(vu8 *)(Bank_NAND_ADDR | DATA_AREA) = pBuffer[index]; - } - - *(vu8 *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_WRITE_TRUE1; - - /* Check status for successful operation */ - status = FSMC_NAND_GetStatus(); - - if(status == NAND_READY) - { - numpagewritten++; - - NumPageToWrite--; - - /* Calculate Next small page Address */ - addressstatus = FSMC_NAND_AddressIncrement(&Address); - } - } - - return (status | addressstatus); -} - -/****************************************************************************** -* Function Name : FSMC_NAND_ReadSmallPage -* Description : This routine is for sequential read from one or several -* 512 Bytes Page size. -* Input : - pBuffer: pointer on the Buffer to fill -* - Address: First page address -* - NumPageToRead: Number of page to read -* Output : None -* Return : New status of the NAND operation. This parameter can be: -* - NAND_TIMEOUT_ERROR: when the previous operation generate -* a Timeout error -* - NAND_READY: when memory is ready for the next operation -* And the new status of the increment address operation. It can be: -* - NAND_VALID_ADDRESS: When the new address is valid address -* - NAND_INVALID_ADDRESS: When the new address is invalid address -*******************************************************************************/ -u32 FSMC_NAND_ReadSmallPage(u8 *pBuffer, NAND_ADDRESS Address, u32 NumPageToRead) -{ - u32 index = 0x00, numpageread = 0x00, addressstatus = NAND_VALID_ADDRESS; - u32 status = NAND_READY, size = 0x00; - - while((NumPageToRead != 0x0) && (addressstatus == NAND_VALID_ADDRESS)) - { - /* Page Read command and page address */ - *(vu8 *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_AREA_A; - - *(vu8 *)(Bank_NAND_ADDR | ADDR_AREA) = 0x00; - *(vu8 *)(Bank_NAND_ADDR | ADDR_AREA) = ADDR_1st_CYCLE(ROW_ADDRESS); - *(vu8 *)(Bank_NAND_ADDR | ADDR_AREA) = ADDR_2nd_CYCLE(ROW_ADDRESS); - *(vu8 *)(Bank_NAND_ADDR | ADDR_AREA) = ADDR_3rd_CYCLE(ROW_ADDRESS); - - *(vu8 *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_AREA_TRUE1; - - /* Calculate the size */ - size = NAND_PAGE_SIZE + (NAND_PAGE_SIZE * numpageread); - - /* Get Data into Buffer */ - for(; index < size; index++) - { - pBuffer[index]= *(vu8 *)(Bank_NAND_ADDR | DATA_AREA); - } - - numpageread++; - - NumPageToRead--; - - /* Calculate page address */ - addressstatus = FSMC_NAND_AddressIncrement(&Address); - } - - status = FSMC_NAND_GetStatus(); - - return (status | addressstatus); -} - -/****************************************************************************** -* Function Name : FSMC_NAND_WriteSpareArea -* Description : This routine write the spare area information for the specified -* pages addresses. -* Input : - pBuffer: pointer on the Buffer containing data to be written -* - Address: First page address -* - NumSpareAreaTowrite: Number of Spare Area to write -* Output : None -* Return : New status of the NAND operation. This parameter can be: -* - NAND_TIMEOUT_ERROR: when the previous operation generate -* a Timeout error -* - NAND_READY: when memory is ready for the next operation -* And the new status of the increment address operation. It can be: -* - NAND_VALID_ADDRESS: When the new address is valid address -* - NAND_INVALID_ADDRESS: When the new address is invalid address -*******************************************************************************/ -u32 FSMC_NAND_WriteSpareArea(u8 *pBuffer, NAND_ADDRESS Address, u32 NumSpareAreaTowrite) -{ - u32 index = 0x00, numsparesreawritten = 0x00, addressstatus = NAND_VALID_ADDRESS; - u32 status = NAND_READY, size = 0x00; - - while((NumSpareAreaTowrite != 0x00) && (addressstatus == NAND_VALID_ADDRESS) && (status == NAND_READY)) - { - /* Page write Spare area command and address */ - *(vu8 *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_AREA_C; - *(vu8 *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_WRITE0; - - *(vu8 *)(Bank_NAND_ADDR | ADDR_AREA) = 0x00; - *(vu8 *)(Bank_NAND_ADDR | ADDR_AREA) = ADDR_1st_CYCLE(ROW_ADDRESS); - *(vu8 *)(Bank_NAND_ADDR | ADDR_AREA) = ADDR_2nd_CYCLE(ROW_ADDRESS); - *(vu8 *)(Bank_NAND_ADDR | ADDR_AREA) = ADDR_3rd_CYCLE(ROW_ADDRESS); - - /* Calculate the size */ - size = NAND_SPARE_AREA_SIZE + (NAND_SPARE_AREA_SIZE * numsparesreawritten); - - /* Write the data */ - for(; index < size; index++) - { - *(vu8 *)(Bank_NAND_ADDR | DATA_AREA) = pBuffer[index]; - } - - *(vu8 *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_WRITE_TRUE1; - - /* Check status for successful operation */ - status = FSMC_NAND_GetStatus(); - - if(status == NAND_READY) - { - numsparesreawritten++; - - NumSpareAreaTowrite--; - - /* Calculate Next page Address */ - addressstatus = FSMC_NAND_AddressIncrement(&Address); - } - } - - return (status | addressstatus); -} - -/****************************************************************************** -* Function Name : FSMC_NAND_ReadSpareArea -* Description : This routine read the spare area information from the specified -* pages addresses. -* Input : - pBuffer: pointer on the Buffer to fill -* - Address: First page address -* - NumSpareAreaToRead: Number of Spare Area to read -* Output : None -* Return : New status of the NAND operation. This parameter can be: -* - NAND_TIMEOUT_ERROR: when the previous operation generate -* a Timeout error -* - NAND_READY: when memory is ready for the next operation -* And the new status of the increment address operation. It can be: -* - NAND_VALID_ADDRESS: When the new address is valid address -* - NAND_INVALID_ADDRESS: When the new address is invalid address -*******************************************************************************/ -u32 FSMC_NAND_ReadSpareArea(u8 *pBuffer, NAND_ADDRESS Address, u32 NumSpareAreaToRead) -{ - u32 numsparearearead = 0x00, index = 0x00, addressstatus = NAND_VALID_ADDRESS; - u32 status = NAND_READY, size = 0x00; - - while((NumSpareAreaToRead != 0x0) && (addressstatus == NAND_VALID_ADDRESS)) - { - /* Page Read command and page address */ - *(vu8 *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_AREA_C; - - *(vu8 *)(Bank_NAND_ADDR | ADDR_AREA) = 0x00; - *(vu8 *)(Bank_NAND_ADDR | ADDR_AREA) = ADDR_1st_CYCLE(ROW_ADDRESS); - *(vu8 *)(Bank_NAND_ADDR | ADDR_AREA) = ADDR_2nd_CYCLE(ROW_ADDRESS); - *(vu8 *)(Bank_NAND_ADDR | ADDR_AREA) = ADDR_3rd_CYCLE(ROW_ADDRESS); - - *(vu8 *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_AREA_TRUE1; - - /* Data Read */ - size = NAND_SPARE_AREA_SIZE + (NAND_SPARE_AREA_SIZE * numsparearearead); - - /* Get Data into Buffer */ - for ( ;index < size; index++) - { - pBuffer[index] = *(vu8 *)(Bank_NAND_ADDR | DATA_AREA); - } - - numsparearearead++; - - NumSpareAreaToRead--; - - /* Calculate page address */ - addressstatus = FSMC_NAND_AddressIncrement(&Address); - } - - status = FSMC_NAND_GetStatus(); - - return (status | addressstatus); -} - -/****************************************************************************** -* Function Name : FSMC_NAND_EraseBlock -* Description : This routine erase complete block from NAND FLASH -* Input : - Address: Any address into block to be erased -* Output : None -* Return : New status of the NAND operation. This parameter can be: -* - NAND_TIMEOUT_ERROR: when the previous operation generate -* a Timeout error -* - NAND_READY: when memory is ready for the next operation -*******************************************************************************/ -u32 FSMC_NAND_EraseBlock(NAND_ADDRESS Address) -{ - *(vu8 *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_ERASE0; - - *(vu8 *)(Bank_NAND_ADDR | ADDR_AREA) = ADDR_1st_CYCLE(ROW_ADDRESS); - *(vu8 *)(Bank_NAND_ADDR | ADDR_AREA) = ADDR_2nd_CYCLE(ROW_ADDRESS); - *(vu8 *)(Bank_NAND_ADDR | ADDR_AREA) = ADDR_3rd_CYCLE(ROW_ADDRESS); - - *(vu8 *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_ERASE1; - - return (FSMC_NAND_GetStatus()); -} - -/****************************************************************************** -* Function Name : FSMC_NAND_Reset -* Description : This routine reset the NAND FLASH -* Input : None -* Output : None -* Return : NAND_READY -*******************************************************************************/ -u32 FSMC_NAND_Reset(void) -{ - *(vu8 *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_RESET; - - return (NAND_READY); -} - -/****************************************************************************** -* Function Name : FSMC_NAND_GetStatus -* Description : Get the NAND operation status -* Input : None -* Output : None -* Return : New status of the NAND operation. This parameter can be: -* - NAND_TIMEOUT_ERROR: when the previous operation generate -* a Timeout error -* - NAND_READY: when memory is ready for the next operation -*******************************************************************************/ -u32 FSMC_NAND_GetStatus(void) -{ - u32 timeout = 0x1000000, status = NAND_READY; - - status = FSMC_NAND_ReadStatus(); - - /* Wait for a NAND operation to complete or a TIMEOUT to occur */ - while ((status != NAND_READY) &&( timeout != 0x00)) - { - status = FSMC_NAND_ReadStatus(); - timeout --; - } - - if(timeout == 0x00) - { - status = NAND_TIMEOUT_ERROR; - } - - /* Return the operation status */ - return (status); -} -/****************************************************************************** -* Function Name : FSMC_NAND_ReadStatus -* Description : Reads the NAND memory status using the Read status command -* Input : None -* Output : None -* Return : The status of the NAND memory. This parameter can be: -* - NAND_BUSY: when memory is busy -* - NAND_READY: when memory is ready for the next operation -* - NAND_ERROR: when the previous operation gererates error -*******************************************************************************/ -u32 FSMC_NAND_ReadStatus(void) -{ - u32 data = 0x00, status = NAND_BUSY; - - /* Read status operation ------------------------------------ */ - *(vu8 *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_STATUS; - data = *(vu8 *)(Bank_NAND_ADDR); - - if((data & NAND_ERROR) == NAND_ERROR) - { - status = NAND_ERROR; - } - else if((data & NAND_READY) == NAND_READY) - { - status = NAND_READY; - } - else - { - status = NAND_BUSY; - } - - return (status); -} - -/****************************************************************************** -* Function Name : NAND_AddressIncrement -* Description : Increment the NAND memory address -* Input : - Address: address to be incremented. -* Output : None -* Return : The new status of the increment address operation. It can be: -* - NAND_VALID_ADDRESS: When the new address is valid address -* - NAND_INVALID_ADDRESS: When the new address is invalid address -*******************************************************************************/ -u32 FSMC_NAND_AddressIncrement(NAND_ADDRESS* Address) -{ - u32 status = NAND_VALID_ADDRESS; - - Address->Page++; - - if(Address->Page == NAND_BLOCK_SIZE) - { - Address->Page = 0; - Address->Block++; - - if(Address->Block == NAND_ZONE_SIZE) - { - Address->Block = 0; - Address->Zone++; - - if(Address->Zone == NAND_MAX_ZONE) - { - status = NAND_INVALID_ADDRESS; - } - } - } - - return (status); -} - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/NAND/fsmc_nand.h b/src/stm32lib/examples/FSMC/NAND/fsmc_nand.h deleted file mode 100755 index dd90682..0000000 --- a/src/stm32lib/examples/FSMC/NAND/fsmc_nand.h +++ /dev/null @@ -1,99 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : fsmc_nand.h -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Header for fsmc_nand.c file. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __FSMC_NAND_H -#define __FSMC_NAND_H - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_lib.h" - -/* Exported types ------------------------------------------------------------*/ -typedef struct -{ - u8 Maker_ID; - u8 Device_ID; - u8 Third_ID; - u8 Fourth_ID; -}NAND_IDTypeDef; - -typedef struct -{ - u16 Zone; - u16 Block; - u16 Page; -} NAND_ADDRESS; - -/* Exported constants --------------------------------------------------------*/ -/* NAND Area definition for STM3210E-EVAL Board RevD */ -#define CMD_AREA (u32)(1<<16) /* A16 = CLE high */ -#define ADDR_AREA (u32)(1<<17) /* A17 = ALE high */ - -#define DATA_AREA ((u32)0x00000000) - -/* FSMC NAND memory command */ -#define NAND_CMD_AREA_A ((u8)0x00) -#define NAND_CMD_AREA_B ((u8)0x01) -#define NAND_CMD_AREA_C ((u8)0x50) -#define NAND_CMD_AREA_TRUE1 ((u8)0x30) - -#define NAND_CMD_WRITE0 ((u8)0x80) -#define NAND_CMD_WRITE_TRUE1 ((u8)0x10) - -#define NAND_CMD_ERASE0 ((u8)0x60) -#define NAND_CMD_ERASE1 ((u8)0xD0) - -#define NAND_CMD_READID ((u8)0x90) -#define NAND_CMD_STATUS ((u8)0x70) -#define NAND_CMD_LOCK_STATUS ((u8)0x7A) -#define NAND_CMD_RESET ((u8)0xFF) - -/* NAND memory status */ -#define NAND_VALID_ADDRESS ((u32)0x00000100) -#define NAND_INVALID_ADDRESS ((u32)0x00000200) -#define NAND_TIMEOUT_ERROR ((u32)0x00000400) -#define NAND_BUSY ((u32)0x00000000) -#define NAND_ERROR ((u32)0x00000001) -#define NAND_READY ((u32)0x00000040) - -/* FSMC NAND memory parameters */ -#define NAND_PAGE_SIZE ((u16)0x0200) /* 512 bytes per page w/o Spare Area */ -#define NAND_BLOCK_SIZE ((u16)0x0020) /* 32x512 bytes pages per block */ -#define NAND_ZONE_SIZE ((u16)0x0400) /* 1024 Block per zone */ -#define NAND_SPARE_AREA_SIZE ((u16)0x0010) /* last 16 bytes as spare area */ -#define NAND_MAX_ZONE ((u16)0x0004) /* 4 zones of 1024 block */ - -/* FSMC NAND memory address computation */ -#define ADDR_1st_CYCLE(ADDR) (u8)((ADDR)& 0xFF) /* 1st addressing cycle */ -#define ADDR_2nd_CYCLE(ADDR) (u8)(((ADDR)& 0xFF00) >> 8) /* 2nd addressing cycle */ -#define ADDR_3rd_CYCLE(ADDR) (u8)(((ADDR)& 0xFF0000) >> 16) /* 3rd addressing cycle */ -#define ADDR_4th_CYCLE(ADDR) (u8)(((ADDR)& 0xFF000000) >> 24) /* 4th addressing cycle */ - -/* Exported macro ------------------------------------------------------------*/ -/* Exported functions ------------------------------------------------------- */ -void FSMC_NAND_Init(void); -void FSMC_NAND_ReadID(NAND_IDTypeDef* NAND_ID); -u32 FSMC_NAND_WriteSmallPage(u8 *pBuffer, NAND_ADDRESS Address, u32 NumPageToWrite); -u32 FSMC_NAND_ReadSmallPage (u8 *pBuffer, NAND_ADDRESS Address, u32 NumPageToRead); -u32 FSMC_NAND_WriteSpareArea(u8 *pBuffer, NAND_ADDRESS Address, u32 NumSpareAreaTowrite); -u32 FSMC_NAND_ReadSpareArea(u8 *pBuffer, NAND_ADDRESS Address, u32 NumSpareAreaToRead); -u32 FSMC_NAND_EraseBlock(NAND_ADDRESS Address); -u32 FSMC_NAND_Reset(void); -u32 FSMC_NAND_GetStatus(void); -u32 FSMC_NAND_ReadStatus(void); -u32 FSMC_NAND_AddressIncrement(NAND_ADDRESS* Address); - -#endif /* __FSMC_NAND_H */ - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/NAND/main.c b/src/stm32lib/examples/FSMC/NAND/main.c deleted file mode 100755 index 26ac17c..0000000 --- a/src/stm32lib/examples/FSMC/NAND/main.c +++ /dev/null @@ -1,247 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : main.c -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Main program body -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ -/* Includes ------------------------------------------------------------------*/ -#include "fsmc_nand.h" - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ -#define BUFFER_SIZE 0x400 -#define NAND_ST_MakerID 0x20 -#define NAND_ST_DeviceID 0x76 - -/* Private macro -------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ -NAND_IDTypeDef NAND_ID; -GPIO_InitTypeDef GPIO_InitStructure; -NAND_ADDRESS WriteReadAddr; - -u8 TxBuffer[BUFFER_SIZE], RxBuffer[BUFFER_SIZE]; - -ErrorStatus HSEStartUpStatus; -vu32 PageNumber = 2, WriteReadStatus = 0, status= 0; -u32 j = 0; - -/* Private function prototypes -----------------------------------------------*/ -void RCC_Configuration(void); -void NVIC_Configuration(void); -void Fill_Buffer(u8 *pBuffer, u16 BufferLenght, u32 Offset); - -/* Private functions ---------------------------------------------------------*/ -/******************************************************************************* -* Function Name : main -* Description : Main program. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -int main(void) -{ - -#ifdef DEBUG - debug(); -#endif - - /* System Clocks Configuration */ - RCC_Configuration(); - - /* NVIC Configuration */ - NVIC_Configuration(); - - /* PF.06, PF.07 and PF.08 config to drive LD1, LD2 and LD3 *****************/ - /* Enable GPIOF clock */ - RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOF, ENABLE); - - /* Configure PF.06, PF.07 and PF.08 as Output push-pull */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_8; - GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; - GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; - GPIO_Init(GPIOF, &GPIO_InitStructure); - - /* Enable the FSMC Clock */ - RCC_AHBPeriphClockCmd(RCC_AHBPeriph_FSMC, ENABLE); - - /* FSMC Initialization */ - FSMC_NAND_Init(); - - /* NAND read ID command */ - FSMC_NAND_ReadID(&NAND_ID); - - /* Verify the NAND ID */ - if((NAND_ID.Maker_ID == NAND_ST_MakerID) && (NAND_ID.Device_ID == NAND_ST_DeviceID)) - { - - /* NAND memory address to write to */ - WriteReadAddr.Zone = 0x00; - WriteReadAddr.Block = 0x00; - WriteReadAddr.Page = 0x00; - - /* Erase the NAND first Block */ - status = FSMC_NAND_EraseBlock(WriteReadAddr); - - /* Write data to FSMC NAND memory */ - /* Fill the buffer to send */ - Fill_Buffer(TxBuffer, BUFFER_SIZE , 0x66); - - status = FSMC_NAND_WriteSmallPage(TxBuffer, WriteReadAddr, PageNumber); - - /* Read back the written data */ - status = FSMC_NAND_ReadSmallPage (RxBuffer, WriteReadAddr, PageNumber); - - /* Verify the written data */ - for(j = 0; j < BUFFER_SIZE; j++) - { - if(TxBuffer[j] != RxBuffer[j]) - { - WriteReadStatus++; - } - } - - if (WriteReadStatus == 0) - { /* OK */ - /* Turn on LD1 */ - GPIO_SetBits(GPIOF, GPIO_Pin_6); - } - else - { /* KO */ - /* Turn on LD2 */ - GPIO_SetBits(GPIOF, GPIO_Pin_7); - } - } - else - { - /* Turn on LD3 */ - GPIO_SetBits(GPIOF, GPIO_Pin_8); - } - - while(1) - { - } -} - -/******************************************************************************* -* Function Name : RCC_Configuration -* Description : Configures the different system clocks. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RCC_Configuration(void) -{ - /* RCC system reset(for debug purpose) */ - RCC_DeInit(); - - /* Enable HSE */ - RCC_HSEConfig(RCC_HSE_ON); - - /* Wait till HSE is ready */ - HSEStartUpStatus = RCC_WaitForHSEStartUp(); - - if(HSEStartUpStatus == SUCCESS) - { - /* Enable Prefetch Buffer */ - FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable); - - /* Flash 2 wait state */ - FLASH_SetLatency(FLASH_Latency_2); - - /* HCLK = SYSCLK */ - RCC_HCLKConfig(RCC_SYSCLK_Div1); - - /* PCLK2 = HCLK */ - RCC_PCLK2Config(RCC_HCLK_Div1); - - /* PCLK1 = HCLK/2 */ - RCC_PCLK1Config(RCC_HCLK_Div2); - - /* PLLCLK = 8MHz * 9 = 72 MHz */ - RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_9); - - /* Enable PLL */ - RCC_PLLCmd(ENABLE); - - /* Wait till PLL is ready */ - while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET) - { - } - - /* Select PLL as system clock source */ - RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); - - /* Wait till PLL is used as system clock source */ - while(RCC_GetSYSCLKSource() != 0x08) - { - } - } -} - -/******************************************************************************* -* Function Name : NVIC_Configuration -* Description : Configures Vector Table base location. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void NVIC_Configuration(void) -{ -#ifdef VECT_TAB_RAM - /* Set the Vector Table base location at 0x20000000 */ - NVIC_SetVectorTable(NVIC_VectTab_RAM, 0x0); -#else /* VECT_TAB_FLASH */ - /* Set the Vector Table base location at 0x08000000 */ - NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x0); -#endif -} - -/******************************************************************************* -* Function name : Fill_Buffer -* Description : Fill the buffer -* Input : - pBuffer: pointer on the Buffer to fill -* - BufferSize: size of the buffer to fill -* - Offset: first value to fill on the Buffer -* Output param : None -*******************************************************************************/ -void Fill_Buffer(u8 *pBuffer, u16 BufferLenght, u32 Offset) -{ - u16 IndexTmp = 0; - - /* Put in global buffer same values */ - for (IndexTmp = 0; IndexTmp < BufferLenght; IndexTmp++ ) - { - pBuffer[IndexTmp] = IndexTmp + Offset; - } -} - -#ifdef DEBUG -/******************************************************************************* -* Function Name : assert_failed -* Description : Reports the name of the source file and the source line number -* where the assert_param error has occurred. -* Input : - file: pointer to the source file name -* - line: assert_param error line source number -* Output : None -* Return : None -*******************************************************************************/ -void assert_failed(u8* file, u32 line) -{ - /* User can add his own implementation to report the file name and line number, - ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */ - - /* Infinite loop */ - while (1) - { - } -} -#endif -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/NAND/readme.txt b/src/stm32lib/examples/FSMC/NAND/readme.txt deleted file mode 100755 index bd78bb4..0000000 --- a/src/stm32lib/examples/FSMC/NAND/readme.txt +++ /dev/null @@ -1,56 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : readme.txt -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Description of the FSMC NAND Example. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -Example description -=================== -This example provides a basic example of how to use the FSMC firmware library and -an associate driver to perform erase/read/write operations on the NAND512W3A2 memory -mounted on STM3210E-EVAL board. - - -Directory contents -================== -stm32f10x_conf.h Library Configuration file -stm32f10x_it.c Interrupt handlers -stm32f10x_it.h Header for stm32f10x_it.c -fsmc_nand.c Driver for NAND memory -fsmc_nand.h Header for fsmc_nand.c -main.c Main program - - -Hardware environment -==================== -This example runs on STMicroelectronics STM3210E-EVAL evaluation board RevD. - -Note: make sure that the Jumper 7 (JP7) is in position 1<-->2. - - -How to use it -============= -In order to make the program work, you must do the following: -- Create a project and setup all your toolchain's start-up files -- Compile the directory content files and required Library files: - + stm32f10x_lib.c - + stm32f10x_gpio.c - + stm32f10x_rcc.c - + stm32f10x_nvic.c - + stm32f10x_flash.c - + stm32f10x_fsmc.c - -- Link all compiled files and load your image into target memory -- Run the example - - -******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****** diff --git a/src/stm32lib/examples/FSMC/NAND/stm32f10x_conf.h b/src/stm32lib/examples/FSMC/NAND/stm32f10x_conf.h deleted file mode 100755 index 48e488f..0000000 --- a/src/stm32lib/examples/FSMC/NAND/stm32f10x_conf.h +++ /dev/null @@ -1,170 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : stm32f10x_conf.h -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Library configuration file. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F10x_CONF_H -#define __STM32F10x_CONF_H - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_type.h" - -/* Exported types ------------------------------------------------------------*/ -/* Exported constants --------------------------------------------------------*/ -/* Uncomment the line below to compile the library in DEBUG mode, this will expanse - the "assert_param" macro in the firmware library code (see "Exported macro" - section below) */ -/*#define DEBUG 1*/ - -/* Comment the line below to disable the specific peripheral inclusion */ -/************************************* ADC ************************************/ -//#define _ADC -//#define _ADC1 -//#define _ADC2 -//#define _ADC3 - -/************************************* BKP ************************************/ -//#define _BKP - -/************************************* CAN ************************************/ -//#define _CAN - -/************************************* CRC ************************************/ -//#define _CRC - -/************************************* DAC ************************************/ -//#define _DAC - -/************************************* DBGMCU *********************************/ -//#define _DBGMCU - -/************************************* DMA ************************************/ -//#define _DMA -//#define _DMA1_Channel1 -//#define _DMA1_Channel2 -//#define _DMA1_Channel3 -//#define _DMA1_Channel4 -//#define _DMA1_Channel5 -//#define _DMA1_Channel6 -//#define _DMA1_Channel7 -//#define _DMA2_Channel1 -//#define _DMA2_Channel2 -//#define _DMA2_Channel3 -//#define _DMA2_Channel4 -//#define _DMA2_Channel5 - -/************************************* EXTI ***********************************/ -//#define _EXTI - -/************************************* FLASH and Option Bytes *****************/ -#define _FLASH -/* Uncomment the line below to enable FLASH program/erase/protections functions, - otherwise only FLASH configuration (latency, prefetch, half cycle) functions - are enabled */ -/* #define _FLASH_PROG */ - -/************************************* FSMC ***********************************/ -#define _FSMC - -/************************************* GPIO ***********************************/ -#define _GPIO -//#define _GPIOA -//#define _GPIOB -//#define _GPIOC -#define _GPIOD -#define _GPIOE -#define _GPIOF -#define _GPIOG -#define _AFIO - -/************************************* I2C ************************************/ -//#define _I2C -//#define _I2C1 -//#define _I2C2 - -/************************************* IWDG ***********************************/ -//#define _IWDG - -/************************************* NVIC ***********************************/ -#define _NVIC - -/************************************* PWR ************************************/ -//#define _PWR - -/************************************* RCC ************************************/ -#define _RCC - -/************************************* RTC ************************************/ -//#define _RTC - -/************************************* SDIO ***********************************/ -//#define _SDIO - -/************************************* SPI ************************************/ -//#define _SPI -//#define _SPI1 -//#define _SPI2 -//#define _SPI3 - -/************************************* SysTick ********************************/ -//#define _SysTick - -/************************************* TIM ************************************/ -//#define _TIM -//#define _TIM1 -//#define _TIM2 -//#define _TIM3 -//#define _TIM4 -//#define _TIM5 -//#define _TIM6 -//#define _TIM7 -//#define _TIM8 - -/************************************* USART **********************************/ -//#define _USART -//#define _USART1 -//#define _USART2 -//#define _USART3 -//#define _UART4 -//#define _UART5 - -/************************************* WWDG ***********************************/ -//#define _WWDG - -/* In the following line adjust the value of External High Speed oscillator (HSE) - used in your application */ -#define HSE_Value ((u32)8000000) /* Value of the External oscillator in Hz*/ - -/* Exported macro ------------------------------------------------------------*/ -#ifdef DEBUG -/******************************************************************************* -* Macro Name : assert_param -* Description : The assert_param macro is used for function's parameters check. -* It is used only if the library is compiled in DEBUG mode. -* Input : - expr: If expr is false, it calls assert_failed function -* which reports the name of the source file and the source -* line number of the call that failed. -* If expr is true, it returns no value. -* Return : None -*******************************************************************************/ - #define assert_param(expr) ((expr) ? (void)0 : assert_failed((u8 *)__FILE__, __LINE__)) -/* Exported functions ------------------------------------------------------- */ - void assert_failed(u8* file, u32 line); -#else - #define assert_param(expr) ((void)0) -#endif /* DEBUG */ - -#endif /* __STM32F10x_CONF_H */ - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/NAND/stm32f10x_it.c b/src/stm32lib/examples/FSMC/NAND/stm32f10x_it.c deleted file mode 100755 index e27c1e7..0000000 --- a/src/stm32lib/examples/FSMC/NAND/stm32f10x_it.c +++ /dev/null @@ -1,810 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : stm32f10x_it.c -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Main Interrupt Service Routines. -* This file provides template for all exceptions handler -* and peripherals interrupt service routine. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_it.h" - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ -/* Private macro -------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ -/* Private function prototypes -----------------------------------------------*/ -/* Private functions ---------------------------------------------------------*/ - -/******************************************************************************* -* Function Name : NMIException -* Description : This function handles NMI exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void NMIException(void) -{ -} - -/******************************************************************************* -* Function Name : HardFaultException -* Description : This function handles Hard Fault exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void HardFaultException(void) -{ - /* Go to infinite loop when Hard Fault exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : MemManageException -* Description : This function handles Memory Manage exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void MemManageException(void) -{ - /* Go to infinite loop when Memory Manage exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : BusFaultException -* Description : This function handles Bus Fault exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void BusFaultException(void) -{ - /* Go to infinite loop when Bus Fault exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : UsageFaultException -* Description : This function handles Usage Fault exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void UsageFaultException(void) -{ - /* Go to infinite loop when Usage Fault exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : DebugMonitor -* Description : This function handles Debug Monitor exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DebugMonitor(void) -{ -} - -/******************************************************************************* -* Function Name : SVCHandler -* Description : This function handles SVCall exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SVCHandler(void) -{ -} - -/******************************************************************************* -* Function Name : PendSVC -* Description : This function handles PendSVC exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void PendSVC(void) -{ -} - -/******************************************************************************* -* Function Name : SysTickHandler -* Description : This function handles SysTick Handler. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SysTickHandler(void) -{ -} - -/******************************************************************************* -* Function Name : WWDG_IRQHandler -* Description : This function handles WWDG interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void WWDG_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : PVD_IRQHandler -* Description : This function handles PVD interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void PVD_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TAMPER_IRQHandler -* Description : This function handles Tamper interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TAMPER_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : RTC_IRQHandler -* Description : This function handles RTC global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RTC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : FLASH_IRQHandler -* Description : This function handles Flash interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void FLASH_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : RCC_IRQHandler -* Description : This function handles RCC interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RCC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI0_IRQHandler -* Description : This function handles External interrupt Line 0 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI0_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI1_IRQHandler -* Description : This function handles External interrupt Line 1 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI2_IRQHandler -* Description : This function handles External interrupt Line 2 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI3_IRQHandler -* Description : This function handles External interrupt Line 3 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI4_IRQHandler -* Description : This function handles External interrupt Line 4 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel1_IRQHandler -* Description : This function handles DMA1 Channel 1 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel2_IRQHandler -* Description : This function handles DMA1 Channel 2 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel3_IRQHandler -* Description : This function handles DMA1 Channel 3 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel4_IRQHandler -* Description : This function handles DMA1 Channel 4 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel5_IRQHandler -* Description : This function handles DMA1 Channel 5 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel6_IRQHandler -* Description : This function handles DMA1 Channel 6 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel6_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel7_IRQHandler -* Description : This function handles DMA1 Channel 7 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel7_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : ADC1_2_IRQHandler -* Description : This function handles ADC1 and ADC2 global interrupts requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void ADC1_2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USB_HP_CAN_TX_IRQHandler -* Description : This function handles USB High Priority or CAN TX interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USB_HP_CAN_TX_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USB_LP_CAN_RX0_IRQHandler -* Description : This function handles USB Low Priority or CAN RX0 interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USB_LP_CAN_RX0_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : CAN_RX1_IRQHandler -* Description : This function handles CAN RX1 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void CAN_RX1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : CAN_SCE_IRQHandler -* Description : This function handles CAN SCE interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void CAN_SCE_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI9_5_IRQHandler -* Description : This function handles External lines 9 to 5 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI9_5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_BRK_IRQHandler -* Description : This function handles TIM1 Break interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_BRK_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_UP_IRQHandler -* Description : This function handles TIM1 overflow and update interrupt -* request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_UP_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_TRG_COM_IRQHandler -* Description : This function handles TIM1 Trigger and commutation interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_TRG_COM_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_CC_IRQHandler -* Description : This function handles TIM1 capture compare interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_CC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM2_IRQHandler -* Description : This function handles TIM2 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM3_IRQHandler -* Description : This function handles TIM3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM4_IRQHandler -* Description : This function handles TIM4 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C1_EV_IRQHandler -* Description : This function handles I2C1 Event interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C1_EV_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C1_ER_IRQHandler -* Description : This function handles I2C1 Error interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C1_ER_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C2_EV_IRQHandler -* Description : This function handles I2C2 Event interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C2_EV_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C2_ER_IRQHandler -* Description : This function handles I2C2 Error interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C2_ER_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SPI1_IRQHandler -* Description : This function handles SPI1 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SPI1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SPI2_IRQHandler -* Description : This function handles SPI2 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SPI2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USART1_IRQHandler -* Description : This function handles USART1 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USART1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USART2_IRQHandler -* Description : This function handles USART2 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USART2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USART3_IRQHandler -* Description : This function handles USART3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USART3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI15_10_IRQHandler -* Description : This function handles External lines 15 to 10 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI15_10_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : RTCAlarm_IRQHandler -* Description : This function handles RTC Alarm interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RTCAlarm_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USBWakeUp_IRQHandler -* Description : This function handles USB WakeUp interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USBWakeUp_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_BRK_IRQHandler -* Description : This function handles TIM8 Break interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_BRK_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_UP_IRQHandler -* Description : This function handles TIM8 overflow and update interrupt -* request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_UP_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_TRG_COM_IRQHandler -* Description : This function handles TIM8 Trigger and commutation interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_TRG_COM_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_CC_IRQHandler -* Description : This function handles TIM8 capture compare interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_CC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : ADC3_IRQHandler -* Description : This function handles ADC3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void ADC3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : FSMC_IRQHandler -* Description : This function handles FSMC global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void FSMC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SDIO_IRQHandler -* Description : This function handles SDIO global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SDIO_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM5_IRQHandler -* Description : This function handles TIM5 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SPI3_IRQHandler -* Description : This function handles SPI3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SPI3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : UART4_IRQHandler -* Description : This function handles UART4 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void UART4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : UART5_IRQHandler -* Description : This function handles UART5 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void UART5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM6_IRQHandler -* Description : This function handles TIM6 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM6_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM7_IRQHandler -* Description : This function handles TIM7 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM7_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel1_IRQHandler -* Description : This function handles DMA2 Channel 1 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel2_IRQHandler -* Description : This function handles DMA2 Channel 2 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel3_IRQHandler -* Description : This function handles DMA2 Channel 3 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel4_5_IRQHandler -* Description : This function handles DMA2 Channel 4 and DMA2 Channel 5 -* interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel4_5_IRQHandler(void) -{ -} - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/NAND/stm32f10x_it.h b/src/stm32lib/examples/FSMC/NAND/stm32f10x_it.h deleted file mode 100755 index e74b6cc..0000000 --- a/src/stm32lib/examples/FSMC/NAND/stm32f10x_it.h +++ /dev/null @@ -1,100 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : stm32f10x_it.h -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : This file contains the headers of the interrupt handlers. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F10x_IT_H -#define __STM32F10x_IT_H - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_lib.h" - -/* Exported types ------------------------------------------------------------*/ -/* Exported constants --------------------------------------------------------*/ -/* Exported macro ------------------------------------------------------------*/ -/* Exported functions ------------------------------------------------------- */ - -void NMIException(void); -void HardFaultException(void); -void MemManageException(void); -void BusFaultException(void); -void UsageFaultException(void); -void DebugMonitor(void); -void SVCHandler(void); -void PendSVC(void); -void SysTickHandler(void); -void WWDG_IRQHandler(void); -void PVD_IRQHandler(void); -void TAMPER_IRQHandler(void); -void RTC_IRQHandler(void); -void FLASH_IRQHandler(void); -void RCC_IRQHandler(void); -void EXTI0_IRQHandler(void); -void EXTI1_IRQHandler(void); -void EXTI2_IRQHandler(void); -void EXTI3_IRQHandler(void); -void EXTI4_IRQHandler(void); -void DMA1_Channel1_IRQHandler(void); -void DMA1_Channel2_IRQHandler(void); -void DMA1_Channel3_IRQHandler(void); -void DMA1_Channel4_IRQHandler(void); -void DMA1_Channel5_IRQHandler(void); -void DMA1_Channel6_IRQHandler(void); -void DMA1_Channel7_IRQHandler(void); -void ADC1_2_IRQHandler(void); -void USB_HP_CAN_TX_IRQHandler(void); -void USB_LP_CAN_RX0_IRQHandler(void); -void CAN_RX1_IRQHandler(void); -void CAN_SCE_IRQHandler(void); -void EXTI9_5_IRQHandler(void); -void TIM1_BRK_IRQHandler(void); -void TIM1_UP_IRQHandler(void); -void TIM1_TRG_COM_IRQHandler(void); -void TIM1_CC_IRQHandler(void); -void TIM2_IRQHandler(void); -void TIM3_IRQHandler(void); -void TIM4_IRQHandler(void); -void I2C1_EV_IRQHandler(void); -void I2C1_ER_IRQHandler(void); -void I2C2_EV_IRQHandler(void); -void I2C2_ER_IRQHandler(void); -void SPI1_IRQHandler(void); -void SPI2_IRQHandler(void); -void USART1_IRQHandler(void); -void USART2_IRQHandler(void); -void USART3_IRQHandler(void); -void EXTI15_10_IRQHandler(void); -void RTCAlarm_IRQHandler(void); -void USBWakeUp_IRQHandler(void); -void TIM8_BRK_IRQHandler(void); -void TIM8_UP_IRQHandler(void); -void TIM8_TRG_COM_IRQHandler(void); -void TIM8_CC_IRQHandler(void); -void ADC3_IRQHandler(void); -void FSMC_IRQHandler(void); -void SDIO_IRQHandler(void); -void TIM5_IRQHandler(void); -void SPI3_IRQHandler(void); -void UART4_IRQHandler(void); -void UART5_IRQHandler(void); -void TIM6_IRQHandler(void); -void TIM7_IRQHandler(void); -void DMA2_Channel1_IRQHandler(void); -void DMA2_Channel2_IRQHandler(void); -void DMA2_Channel3_IRQHandler(void); -void DMA2_Channel4_5_IRQHandler(void); - -#endif /* __STM32F10x_IT_H */ - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/NOR/fsmc_nor.c b/src/stm32lib/examples/FSMC/NOR/fsmc_nor.c deleted file mode 100755 index f72a14c..0000000 --- a/src/stm32lib/examples/FSMC/NOR/fsmc_nor.c +++ /dev/null @@ -1,416 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : fsmc_nor.c -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : This file provides a set of functions needed to drive the -* M29W128FL, M29W128GL and S29GL128P NOR memories mounted -* on STM3210E-EVAL board. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ -/* Includes ------------------------------------------------------------------*/ -#include "fsmc_nor.h" - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ -#define Bank1_NOR2_ADDR ((u32)0x64000000) - -/* Delay definition */ -#define BlockErase_Timeout ((u32)0x00A00000) -#define ChipErase_Timeout ((u32)0x30000000) -#define Program_Timeout ((u32)0x00001400) - -/* Private macro -------------------------------------------------------------*/ -#define ADDR_SHIFT(A) (Bank1_NOR2_ADDR + (2 * (A))) -#define NOR_WRITE(Address, Data) (*(vu16 *)(Address) = (Data)) - -/* Private variables ---------------------------------------------------------*/ -/* Private function prototypes -----------------------------------------------*/ -/* Private functions ---------------------------------------------------------*/ -/******************************************************************************* -* Function Name : FSMC_NOR_Init -* Description : Configures the FSMC and GPIOs to interface with the NOR memory. -* This function must be called before any write/read operation -* on the NOR. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void FSMC_NOR_Init(void) -{ - FSMC_NORSRAMInitTypeDef FSMC_NORSRAMInitStructure; - FSMC_NORSRAMTimingInitTypeDef p; - GPIO_InitTypeDef GPIO_InitStructure; - - RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD | RCC_APB2Periph_GPIOE | - RCC_APB2Periph_GPIOF | RCC_APB2Periph_GPIOG, ENABLE); - - /*-- GPIO Configuration ------------------------------------------------------*/ - /* NOR Data lines configuration */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_8 | GPIO_Pin_9 | - GPIO_Pin_10 | GPIO_Pin_14 | GPIO_Pin_15; - GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; - GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; - GPIO_Init(GPIOD, &GPIO_InitStructure); - - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 | - GPIO_Pin_11 | GPIO_Pin_12 | GPIO_Pin_13 | - GPIO_Pin_14 | GPIO_Pin_15; - GPIO_Init(GPIOE, &GPIO_InitStructure); - - /* NOR Address lines configuration */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3 | - GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_12 | GPIO_Pin_13 | - GPIO_Pin_14 | GPIO_Pin_15; - GPIO_Init(GPIOF, &GPIO_InitStructure); - - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_2 | - GPIO_Pin_3 | GPIO_Pin_4 | GPIO_Pin_5; - GPIO_Init(GPIOG, &GPIO_InitStructure); - - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11 | GPIO_Pin_12 | GPIO_Pin_13; - GPIO_Init(GPIOD, &GPIO_InitStructure); - - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3 | GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_6; - GPIO_Init(GPIOE, &GPIO_InitStructure); - - /* NOE and NWE configuration */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4 | GPIO_Pin_5; - GPIO_Init(GPIOD, &GPIO_InitStructure); - - /* NE2 configuration */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9; - GPIO_Init(GPIOG, &GPIO_InitStructure); - - /*-- FSMC Configuration ----------------------------------------------------*/ - p.FSMC_AddressSetupTime = 0x05; - p.FSMC_AddressHoldTime = 0x00; - p.FSMC_DataSetupTime = 0x07; - p.FSMC_BusTurnAroundDuration = 0x00; - p.FSMC_CLKDivision = 0x00; - p.FSMC_DataLatency = 0x00; - p.FSMC_AccessMode = FSMC_AccessMode_B; - - FSMC_NORSRAMInitStructure.FSMC_Bank = FSMC_Bank1_NORSRAM2; - FSMC_NORSRAMInitStructure.FSMC_DataAddressMux = FSMC_DataAddressMux_Disable; - FSMC_NORSRAMInitStructure.FSMC_MemoryType = FSMC_MemoryType_NOR; - FSMC_NORSRAMInitStructure.FSMC_MemoryDataWidth = FSMC_MemoryDataWidth_16b; - FSMC_NORSRAMInitStructure.FSMC_BurstAccessMode = FSMC_BurstAccessMode_Disable; - FSMC_NORSRAMInitStructure.FSMC_WaitSignalPolarity = FSMC_WaitSignalPolarity_Low; - FSMC_NORSRAMInitStructure.FSMC_WrapMode = FSMC_WrapMode_Disable; - FSMC_NORSRAMInitStructure.FSMC_WaitSignalActive = FSMC_WaitSignalActive_BeforeWaitState; - FSMC_NORSRAMInitStructure.FSMC_WriteOperation = FSMC_WriteOperation_Enable; - FSMC_NORSRAMInitStructure.FSMC_WaitSignal = FSMC_WaitSignal_Disable; - FSMC_NORSRAMInitStructure.FSMC_ExtendedMode = FSMC_ExtendedMode_Disable; - FSMC_NORSRAMInitStructure.FSMC_AsyncWait = FSMC_AsyncWait_Disable; - FSMC_NORSRAMInitStructure.FSMC_WriteBurst = FSMC_WriteBurst_Disable; - FSMC_NORSRAMInitStructure.FSMC_ReadWriteTimingStruct = &p; - FSMC_NORSRAMInitStructure.FSMC_WriteTimingStruct = &p; - - FSMC_NORSRAMInit(&FSMC_NORSRAMInitStructure); - - /* Enable FSMC Bank1_NOR Bank */ - FSMC_NORSRAMCmd(FSMC_Bank1_NORSRAM2, ENABLE); -} - -/****************************************************************************** -* Function Name : FSMC_NOR_ReadID -* Description : Reads NOR memory's Manufacturer and Device Code. -* Input : - NOR_ID: pointer to a NOR_IDTypeDef structure which will hold -* the Manufacturer and Device Code. -* Output : None -* Return : None -*******************************************************************************/ -void FSMC_NOR_ReadID(NOR_IDTypeDef* NOR_ID) -{ - NOR_WRITE(ADDR_SHIFT(0x0555), 0x00AA); - NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055); - NOR_WRITE(ADDR_SHIFT(0x0555), 0x0090); - - NOR_ID->Manufacturer_Code = *(vu16 *) ADDR_SHIFT(0x0000); - NOR_ID->Device_Code1 = *(vu16 *) ADDR_SHIFT(0x0001); - NOR_ID->Device_Code2 = *(vu16 *) ADDR_SHIFT(0x000E); - NOR_ID->Device_Code3 = *(vu16 *) ADDR_SHIFT(0x000F); -} - -/******************************************************************************* -* Function Name : FSMC_NOR_EraseBlock -* Description : Erases the specified Nor memory block. -* Input : - BlockAddr: address of the block to erase. -* Output : None -* Return : NOR_Status:The returned value can be: NOR_SUCCESS, NOR_ERROR -* or NOR_TIMEOUT -*******************************************************************************/ -NOR_Status FSMC_NOR_EraseBlock(u32 BlockAddr) -{ - NOR_WRITE(ADDR_SHIFT(0x0555), 0x00AA); - NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055); - NOR_WRITE(ADDR_SHIFT(0x0555), 0x0080); - NOR_WRITE(ADDR_SHIFT(0x0555), 0x00AA); - NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055); - NOR_WRITE((Bank1_NOR2_ADDR + BlockAddr), 0x30); - - return (FSMC_NOR_GetStatus(BlockErase_Timeout)); -} - -/******************************************************************************* -* Function Name : FSMC_NOR_EraseChip -* Description : Erases the entire chip. -* Input : None -* Output : None -* Return : NOR_Status:The returned value can be: NOR_SUCCESS, NOR_ERROR -* or NOR_TIMEOUT -*******************************************************************************/ -NOR_Status FSMC_NOR_EraseChip(void) -{ - NOR_WRITE(ADDR_SHIFT(0x0555), 0x00AA); - NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055); - NOR_WRITE(ADDR_SHIFT(0x0555), 0x0080); - NOR_WRITE(ADDR_SHIFT(0x0555), 0x00AA); - NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055); - NOR_WRITE(ADDR_SHIFT(0x0555), 0x0010); - - return (FSMC_NOR_GetStatus(ChipErase_Timeout)); -} - -/****************************************************************************** -* Function Name : FSMC_NOR_WriteHalfWord -* Description : Writes a half-word to the NOR memory. -* Input : - WriteAddr : NOR memory internal address to write to. -* - Data : Data to write. -* Output : None -* Return : NOR_Status:The returned value can be: NOR_SUCCESS, NOR_ERROR -* or NOR_TIMEOUT -*******************************************************************************/ -NOR_Status FSMC_NOR_WriteHalfWord(u32 WriteAddr, u16 Data) -{ - NOR_WRITE(ADDR_SHIFT(0x0555), 0x00AA); - NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055); - NOR_WRITE(ADDR_SHIFT(0x0555), 0x00A0); - NOR_WRITE((Bank1_NOR2_ADDR + WriteAddr), Data); - - return (FSMC_NOR_GetStatus(Program_Timeout)); -} - -/******************************************************************************* -* Function Name : FSMC_NOR_WriteBuffer -* Description : Writes a half-word buffer to the FSMC NOR memory. -* Input : - pBuffer : pointer to buffer. -* - WriteAddr : NOR memory internal address from which the data -* will be written. -* - NumHalfwordToWrite : number of Half words to write. -* Output : None -* Return : NOR_Status:The returned value can be: NOR_SUCCESS, NOR_ERROR -* or NOR_TIMEOUT -*******************************************************************************/ -NOR_Status FSMC_NOR_WriteBuffer(u16* pBuffer, u32 WriteAddr, u32 NumHalfwordToWrite) -{ - NOR_Status status = NOR_ONGOING; - - do - { - /* Transfer data to the memory */ - status = FSMC_NOR_WriteHalfWord(WriteAddr, *pBuffer++); - WriteAddr = WriteAddr + 2; - NumHalfwordToWrite--; - } - while((status == NOR_SUCCESS) && (NumHalfwordToWrite != 0)); - - return (status); -} - -/******************************************************************************* -* Function Name : FSMC_NOR_ProgramBuffer -* Description : Writes a half-word buffer to the FSMC NOR memory. This function -* must be used only with S29GL128P NOR memory. -* Input : - pBuffer : pointer to buffer. -* - WriteAddr: NOR memory internal address from which the data -* will be written. -* - NumHalfwordToWrite: number of Half words to write. -* The maximum allowed value is 32 Half words (64 bytes). -* Output : None -* Return : NOR_Status:The returned value can be: NOR_SUCCESS, NOR_ERROR -* or NOR_TIMEOUT -*******************************************************************************/ -NOR_Status FSMC_NOR_ProgramBuffer(u16* pBuffer, u32 WriteAddr, u32 NumHalfwordToWrite) -{ - u32 lastloadedaddress = 0x00; - u32 currentaddress = 0x00; - u32 endaddress = 0x00; - - /* Initialize variables */ - currentaddress = WriteAddr; - endaddress = WriteAddr + NumHalfwordToWrite - 1; - lastloadedaddress = WriteAddr; - - /* Issue unlock command sequence */ - NOR_WRITE(ADDR_SHIFT(0x00555), 0x00AA); - - NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055); - - /* Write Write Buffer Load Command */ - NOR_WRITE(ADDR_SHIFT(WriteAddr), 0x0025); - NOR_WRITE(ADDR_SHIFT(WriteAddr), (NumHalfwordToWrite - 1)); - - /* Load Data into NOR Buffer */ - while(currentaddress <= endaddress) - { - /* Store last loaded address & data value (for polling) */ - lastloadedaddress = currentaddress; - - NOR_WRITE(ADDR_SHIFT(currentaddress), *pBuffer++); - currentaddress += 1; - } - - NOR_WRITE(ADDR_SHIFT(lastloadedaddress), 0x29); - - return(FSMC_NOR_GetStatus(Program_Timeout)); -} - -/****************************************************************************** -* Function Name : FSMC_NOR_ReadHalfWord -* Description : Reads a half-word from the NOR memory. -* Input : - ReadAddr : NOR memory internal address to read from. -* Output : None -* Return : Half-word read from the NOR memory -*******************************************************************************/ -u16 FSMC_NOR_ReadHalfWord(u32 ReadAddr) -{ - NOR_WRITE(ADDR_SHIFT(0x00555), 0x00AA); - NOR_WRITE(ADDR_SHIFT(0x002AA), 0x0055); - NOR_WRITE((Bank1_NOR2_ADDR + ReadAddr), 0x00F0 ); - - return (*(vu16 *)((Bank1_NOR2_ADDR + ReadAddr))); -} - -/******************************************************************************* -* Function Name : FSMC_NOR_ReadBuffer -* Description : Reads a block of data from the FSMC NOR memory. -* Input : - pBuffer : pointer to the buffer that receives the data read -* from the NOR memory. -* - ReadAddr : NOR memory internal address to read from. -* - NumHalfwordToRead : number of Half word to read. -* Output : None -* Return : None -*******************************************************************************/ -void FSMC_NOR_ReadBuffer(u16* pBuffer, u32 ReadAddr, u32 NumHalfwordToRead) -{ - NOR_WRITE(ADDR_SHIFT(0x0555), 0x00AA); - NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055); - NOR_WRITE((Bank1_NOR2_ADDR + ReadAddr), 0x00F0); - - for(; NumHalfwordToRead != 0x00; NumHalfwordToRead--) /* while there is data to read */ - { - /* Read a Halfword from the NOR */ - *pBuffer++ = *(vu16 *)((Bank1_NOR2_ADDR + ReadAddr)); - ReadAddr = ReadAddr + 2; - } -} - -/****************************************************************************** -* Function Name : FSMC_NOR_ReturnToReadMode -* Description : Returns the NOR memory to Read mode. -* Input : None -* Output : None -* Return : NOR_SUCCESS -*******************************************************************************/ -NOR_Status FSMC_NOR_ReturnToReadMode(void) -{ - NOR_WRITE(Bank1_NOR2_ADDR, 0x00F0); - - return (NOR_SUCCESS); -} - -/****************************************************************************** -* Function Name : FSMC_NOR_Reset -* Description : Returns the NOR memory to Read mode and resets the errors in -* the NOR memory Status Register. -* Input : None -* Output : None -* Return : NOR_SUCCESS -*******************************************************************************/ -NOR_Status FSMC_NOR_Reset(void) -{ - NOR_WRITE(ADDR_SHIFT(0x00555), 0x00AA); - NOR_WRITE(ADDR_SHIFT(0x002AA), 0x0055); - NOR_WRITE(Bank1_NOR2_ADDR, 0x00F0); - - return (NOR_SUCCESS); -} - -/****************************************************************************** -* Function Name : FSMC_NOR_GetStatus -* Description : Returns the NOR operation status. -* Input : - Timeout: NOR progamming Timeout -* Output : None -* Return : NOR_Status:The returned value can be: NOR_SUCCESS, NOR_ERROR -* or NOR_TIMEOUT -*******************************************************************************/ -NOR_Status FSMC_NOR_GetStatus(u32 Timeout) -{ - u16 val1 = 0x00, val2 = 0x00; - NOR_Status status = NOR_ONGOING; - u32 timeout = Timeout; - - /* Poll on NOR memory Ready/Busy signal ------------------------------------*/ - while((GPIO_ReadInputDataBit(GPIOD, GPIO_Pin_6) != RESET) && (timeout > 0)) - { - timeout--; - } - - timeout = Timeout; - - while((GPIO_ReadInputDataBit(GPIOD, GPIO_Pin_6) == RESET) && (timeout > 0)) - { - timeout--; - } - - /* Get the NOR memory operation status -------------------------------------*/ - while((Timeout != 0x00) && (status != NOR_SUCCESS)) - { - Timeout--; - - /* Read DQ6 and DQ5 */ - val1 = *(vu16 *)(Bank1_NOR2_ADDR); - val2 = *(vu16 *)(Bank1_NOR2_ADDR); - - /* If DQ6 did not toggle between the two reads then return NOR_Success */ - if((val1 & 0x0040) == (val2 & 0x0040)) - { - return NOR_SUCCESS; - } - - if((val1 & 0x0020) != 0x0020) - { - status = NOR_ONGOING; - } - - val1 = *(vu16 *)(Bank1_NOR2_ADDR); - val2 = *(vu16 *)(Bank1_NOR2_ADDR); - - if((val1 & 0x0040) == (val2 & 0x0040)) - { - return NOR_SUCCESS; - } - else if((val1 & 0x0020) == 0x0020) - { - return NOR_ERROR; - } - } - - if(Timeout == 0x00) - { - status = NOR_TIMEOUT; - } - - /* Return the operation status */ - return (status); -} - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/NOR/fsmc_nor.h b/src/stm32lib/examples/FSMC/NOR/fsmc_nor.h deleted file mode 100755 index 264f231..0000000 --- a/src/stm32lib/examples/FSMC/NOR/fsmc_nor.h +++ /dev/null @@ -1,58 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : fsmc_nor.h -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Header for fsmc_nor.c file. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __FSMC_NOR_H -#define __FSMC_NOR_H - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_lib.h" - -/* Exported types ------------------------------------------------------------*/ -typedef struct -{ - u16 Manufacturer_Code; - u16 Device_Code1; - u16 Device_Code2; - u16 Device_Code3; -}NOR_IDTypeDef; - -/* NOR Status */ -typedef enum -{ - NOR_SUCCESS = 0, - NOR_ONGOING, - NOR_ERROR, - NOR_TIMEOUT -}NOR_Status; - -/* Exported constants --------------------------------------------------------*/ -/* Exported macro ------------------------------------------------------------*/ -/* Exported functions ------------------------------------------------------- */ -void FSMC_NOR_Init(void); -void FSMC_NOR_ReadID(NOR_IDTypeDef* NOR_ID); -NOR_Status FSMC_NOR_EraseBlock(u32 BlockAddr); -NOR_Status FSMC_NOR_EraseChip(void); -NOR_Status FSMC_NOR_WriteHalfWord(u32 WriteAddr, u16 Data); -NOR_Status FSMC_NOR_WriteBuffer(u16* pBuffer, u32 WriteAddr, u32 NumHalfwordToWrite); -NOR_Status FSMC_NOR_ProgramBuffer(u16* pBuffer, u32 WriteAddr, u32 NumHalfwordToWrite); -u16 FSMC_NOR_ReadHalfWord(u32 ReadAddr); -void FSMC_NOR_ReadBuffer(u16* pBuffer, u32 ReadAddr, u32 NumHalfwordToRead); -NOR_Status FSMC_NOR_ReturnToReadMode(void); -NOR_Status FSMC_NOR_Reset(void); -NOR_Status FSMC_NOR_GetStatus(u32 Timeout); - -#endif /* __FSMC_NOR_H */ - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/NOR/main.c b/src/stm32lib/examples/FSMC/NOR/main.c deleted file mode 100755 index 508fc6f..0000000 --- a/src/stm32lib/examples/FSMC/NOR/main.c +++ /dev/null @@ -1,233 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : main.c -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Main program body -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Includes ------------------------------------------------------------------*/ -#include "fsmc_nor.h" - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ -#define BUFFER_SIZE 0x400 -#define WRITE_READ_ADDR 0x8000 - -/* Private macro -------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ -GPIO_InitTypeDef GPIO_InitStructure; -ErrorStatus HSEStartUpStatus; - -u16 TxBuffer[BUFFER_SIZE]; -u16 RxBuffer[BUFFER_SIZE]; -u32 WriteReadStatus = 0, Index = 0; -NOR_IDTypeDef NOR_ID; - -/* Private function prototypes -----------------------------------------------*/ -void RCC_Configuration(void); -void NVIC_Configuration(void); - -void Fill_Buffer(u16 *pBuffer, u16 BufferLenght, u32 Offset); - -/* Private functions ---------------------------------------------------------*/ -/******************************************************************************* -* Function Name : main -* Description : Main program. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -int main(void) -{ -#ifdef DEBUG - debug(); -#endif - - /* System Clocks Configuration */ - RCC_Configuration(); - - /* NVIC Configuration */ - NVIC_Configuration(); - - /* PF.06 and PF.07 config to drive LD1 and LD2 *****************************/ - /* Enable GPIOF clock */ - RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOF, ENABLE); - - /* Configure PF.06 and PF.07 as Output push-pull */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6 | GPIO_Pin_7; - GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; - GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; - GPIO_Init(GPIOF, &GPIO_InitStructure); - - /* Write/read to/from FSMC SRAM memory *************************************/ - /* Enable the FSMC Clock */ - RCC_AHBPeriphClockCmd(RCC_AHBPeriph_FSMC, ENABLE); - - /* Configure FSMC Bank1 NOR/SRAM2 */ - FSMC_NOR_Init(); - - /* Read NOR memory ID */ - FSMC_NOR_ReadID(&NOR_ID); - - FSMC_NOR_ReturnToReadMode(); - - /* Erase the NOR memory block to write on */ - FSMC_NOR_EraseBlock(WRITE_READ_ADDR); - - /* Write data to FSMC NOR memory */ - /* Fill the buffer to send */ - Fill_Buffer(TxBuffer, BUFFER_SIZE, 0x3210); - FSMC_NOR_WriteBuffer(TxBuffer, WRITE_READ_ADDR, BUFFER_SIZE); - - /* Read data from FSMC NOR memory */ - FSMC_NOR_ReadBuffer(RxBuffer, WRITE_READ_ADDR, BUFFER_SIZE); - - /* Read back NOR memory and check content correctness */ - for (Index = 0x00; (Index < BUFFER_SIZE) && (WriteReadStatus == 0); Index++) - { - if (RxBuffer[Index] != TxBuffer[Index]) - { - WriteReadStatus = Index + 1; - } - } - - if (WriteReadStatus == 0) - { /* OK */ - /* Turn on LD1 */ - GPIO_SetBits(GPIOF, GPIO_Pin_6); - } - else - { /* KO */ - /* Turn on LD2 */ - GPIO_SetBits(GPIOF, GPIO_Pin_7); - } - - while (1) - { - } -} - -/******************************************************************************* -* Function Name : RCC_Configuration -* Description : Configures the different system clocks. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RCC_Configuration(void) -{ - /* RCC system reset(for debug purpose) */ - RCC_DeInit(); - - /* Enable HSE */ - RCC_HSEConfig(RCC_HSE_ON); - - /* Wait till HSE is ready */ - HSEStartUpStatus = RCC_WaitForHSEStartUp(); - - if(HSEStartUpStatus == SUCCESS) - { - /* Enable Prefetch Buffer */ - FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable); - - /* Flash 2 wait state */ - FLASH_SetLatency(FLASH_Latency_2); - - /* HCLK = SYSCLK */ - RCC_HCLKConfig(RCC_SYSCLK_Div1); - - /* PCLK2 = HCLK */ - RCC_PCLK2Config(RCC_HCLK_Div1); - - /* PCLK1 = HCLK/2 */ - RCC_PCLK1Config(RCC_HCLK_Div2); - - /* PLLCLK = 8MHz * 9 = 72 MHz */ - RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_9); - - /* Enable PLL */ - RCC_PLLCmd(ENABLE); - - /* Wait till PLL is ready */ - while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET) - { - } - - /* Select PLL as system clock source */ - RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); - - /* Wait till PLL is used as system clock source */ - while(RCC_GetSYSCLKSource() != 0x08) - { - } - } -} - -/******************************************************************************* -* Function Name : NVIC_Configuration -* Description : Configures Vector Table base location. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void NVIC_Configuration(void) -{ -#ifdef VECT_TAB_RAM - /* Set the Vector Table base location at 0x20000000 */ - NVIC_SetVectorTable(NVIC_VectTab_RAM, 0x0); -#else /* VECT_TAB_FLASH */ - /* Set the Vector Table base location at 0x08000000 */ - NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x0); -#endif -} - -/******************************************************************************* -* Function name : Fill_Buffer -* Description : Fill the global buffer -* Input : - pBuffer: pointer on the Buffer to fill -* - BufferSize: size of the buffer to fill -* - Offset: first value to fill on the Buffer -* Output param : None -*******************************************************************************/ -void Fill_Buffer(u16 *pBuffer, u16 BufferLenght, u32 Offset) -{ - u16 IndexTmp = 0; - - /* Put in global buffer same values */ - for (IndexTmp = 0; IndexTmp < BufferLenght; IndexTmp++ ) - { - pBuffer[IndexTmp] = IndexTmp + Offset; - } -} - -#ifdef DEBUG -/******************************************************************************* -* Function Name : assert_failed -* Description : Reports the name of the source file and the source line number -* where the assert_param error has occurred. -* Input : - file: pointer to the source file name -* - line: assert_param error line source number -* Output : None -* Return : None -*******************************************************************************/ -void assert_failed(u8* file, u32 line) -{ - /* User can add his own implementation to report the file name and line number, - ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */ - - /* Infinite loop */ - while (1) - { - } -} -#endif - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/NOR/readme.txt b/src/stm32lib/examples/FSMC/NOR/readme.txt deleted file mode 100755 index 79deab2..0000000 --- a/src/stm32lib/examples/FSMC/NOR/readme.txt +++ /dev/null @@ -1,55 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : readme.txt -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Description of the FSMC NOR Example. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -Example description -=================== - -This example provides a basic example of how to use the FSMC firmware library and -an associate driver to perform erase/read/write operations on the M29W128FL, -M29W128GL or S29GL128P NOR memories mounted on the STM3210E-EVAL board. - - -Directory contents -================== -stm32f10x_conf.h Library Configuration file -stm32f10x_it.c Interrupt handlers -stm32f10x_it.h Header for stm32f10x_it.c -fsmc_nor.c Driver for NOR memory -fsmc_nor.h Header for fsmc_nor.c -main.c Main program - - -Hardware environment -==================== -This example runs on STMicroelectronics STM3210E-EVAL evaluation board. - - -How to use it -============= -In order to make the program work, you must do the following: -- Create a project and setup all your toolchain's start-up files -- Compile the directory content files and required Library files: - + stm32f10x_lib.c - + stm32f10x_gpio.c - + stm32f10x_rcc.c - + stm32f10x_nvic.c - + stm32f10x_flash.c - + stm32f10x_fsmc.c - -- Link all compiled files and load your image into target memory -- Run the example - - -******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****** diff --git a/src/stm32lib/examples/FSMC/NOR/stm32f10x_conf.h b/src/stm32lib/examples/FSMC/NOR/stm32f10x_conf.h deleted file mode 100755 index 48e488f..0000000 --- a/src/stm32lib/examples/FSMC/NOR/stm32f10x_conf.h +++ /dev/null @@ -1,170 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : stm32f10x_conf.h -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Library configuration file. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F10x_CONF_H -#define __STM32F10x_CONF_H - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_type.h" - -/* Exported types ------------------------------------------------------------*/ -/* Exported constants --------------------------------------------------------*/ -/* Uncomment the line below to compile the library in DEBUG mode, this will expanse - the "assert_param" macro in the firmware library code (see "Exported macro" - section below) */ -/*#define DEBUG 1*/ - -/* Comment the line below to disable the specific peripheral inclusion */ -/************************************* ADC ************************************/ -//#define _ADC -//#define _ADC1 -//#define _ADC2 -//#define _ADC3 - -/************************************* BKP ************************************/ -//#define _BKP - -/************************************* CAN ************************************/ -//#define _CAN - -/************************************* CRC ************************************/ -//#define _CRC - -/************************************* DAC ************************************/ -//#define _DAC - -/************************************* DBGMCU *********************************/ -//#define _DBGMCU - -/************************************* DMA ************************************/ -//#define _DMA -//#define _DMA1_Channel1 -//#define _DMA1_Channel2 -//#define _DMA1_Channel3 -//#define _DMA1_Channel4 -//#define _DMA1_Channel5 -//#define _DMA1_Channel6 -//#define _DMA1_Channel7 -//#define _DMA2_Channel1 -//#define _DMA2_Channel2 -//#define _DMA2_Channel3 -//#define _DMA2_Channel4 -//#define _DMA2_Channel5 - -/************************************* EXTI ***********************************/ -//#define _EXTI - -/************************************* FLASH and Option Bytes *****************/ -#define _FLASH -/* Uncomment the line below to enable FLASH program/erase/protections functions, - otherwise only FLASH configuration (latency, prefetch, half cycle) functions - are enabled */ -/* #define _FLASH_PROG */ - -/************************************* FSMC ***********************************/ -#define _FSMC - -/************************************* GPIO ***********************************/ -#define _GPIO -//#define _GPIOA -//#define _GPIOB -//#define _GPIOC -#define _GPIOD -#define _GPIOE -#define _GPIOF -#define _GPIOG -#define _AFIO - -/************************************* I2C ************************************/ -//#define _I2C -//#define _I2C1 -//#define _I2C2 - -/************************************* IWDG ***********************************/ -//#define _IWDG - -/************************************* NVIC ***********************************/ -#define _NVIC - -/************************************* PWR ************************************/ -//#define _PWR - -/************************************* RCC ************************************/ -#define _RCC - -/************************************* RTC ************************************/ -//#define _RTC - -/************************************* SDIO ***********************************/ -//#define _SDIO - -/************************************* SPI ************************************/ -//#define _SPI -//#define _SPI1 -//#define _SPI2 -//#define _SPI3 - -/************************************* SysTick ********************************/ -//#define _SysTick - -/************************************* TIM ************************************/ -//#define _TIM -//#define _TIM1 -//#define _TIM2 -//#define _TIM3 -//#define _TIM4 -//#define _TIM5 -//#define _TIM6 -//#define _TIM7 -//#define _TIM8 - -/************************************* USART **********************************/ -//#define _USART -//#define _USART1 -//#define _USART2 -//#define _USART3 -//#define _UART4 -//#define _UART5 - -/************************************* WWDG ***********************************/ -//#define _WWDG - -/* In the following line adjust the value of External High Speed oscillator (HSE) - used in your application */ -#define HSE_Value ((u32)8000000) /* Value of the External oscillator in Hz*/ - -/* Exported macro ------------------------------------------------------------*/ -#ifdef DEBUG -/******************************************************************************* -* Macro Name : assert_param -* Description : The assert_param macro is used for function's parameters check. -* It is used only if the library is compiled in DEBUG mode. -* Input : - expr: If expr is false, it calls assert_failed function -* which reports the name of the source file and the source -* line number of the call that failed. -* If expr is true, it returns no value. -* Return : None -*******************************************************************************/ - #define assert_param(expr) ((expr) ? (void)0 : assert_failed((u8 *)__FILE__, __LINE__)) -/* Exported functions ------------------------------------------------------- */ - void assert_failed(u8* file, u32 line); -#else - #define assert_param(expr) ((void)0) -#endif /* DEBUG */ - -#endif /* __STM32F10x_CONF_H */ - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/NOR/stm32f10x_it.c b/src/stm32lib/examples/FSMC/NOR/stm32f10x_it.c deleted file mode 100755 index e27c1e7..0000000 --- a/src/stm32lib/examples/FSMC/NOR/stm32f10x_it.c +++ /dev/null @@ -1,810 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : stm32f10x_it.c -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Main Interrupt Service Routines. -* This file provides template for all exceptions handler -* and peripherals interrupt service routine. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_it.h" - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ -/* Private macro -------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ -/* Private function prototypes -----------------------------------------------*/ -/* Private functions ---------------------------------------------------------*/ - -/******************************************************************************* -* Function Name : NMIException -* Description : This function handles NMI exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void NMIException(void) -{ -} - -/******************************************************************************* -* Function Name : HardFaultException -* Description : This function handles Hard Fault exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void HardFaultException(void) -{ - /* Go to infinite loop when Hard Fault exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : MemManageException -* Description : This function handles Memory Manage exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void MemManageException(void) -{ - /* Go to infinite loop when Memory Manage exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : BusFaultException -* Description : This function handles Bus Fault exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void BusFaultException(void) -{ - /* Go to infinite loop when Bus Fault exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : UsageFaultException -* Description : This function handles Usage Fault exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void UsageFaultException(void) -{ - /* Go to infinite loop when Usage Fault exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : DebugMonitor -* Description : This function handles Debug Monitor exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DebugMonitor(void) -{ -} - -/******************************************************************************* -* Function Name : SVCHandler -* Description : This function handles SVCall exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SVCHandler(void) -{ -} - -/******************************************************************************* -* Function Name : PendSVC -* Description : This function handles PendSVC exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void PendSVC(void) -{ -} - -/******************************************************************************* -* Function Name : SysTickHandler -* Description : This function handles SysTick Handler. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SysTickHandler(void) -{ -} - -/******************************************************************************* -* Function Name : WWDG_IRQHandler -* Description : This function handles WWDG interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void WWDG_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : PVD_IRQHandler -* Description : This function handles PVD interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void PVD_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TAMPER_IRQHandler -* Description : This function handles Tamper interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TAMPER_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : RTC_IRQHandler -* Description : This function handles RTC global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RTC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : FLASH_IRQHandler -* Description : This function handles Flash interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void FLASH_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : RCC_IRQHandler -* Description : This function handles RCC interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RCC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI0_IRQHandler -* Description : This function handles External interrupt Line 0 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI0_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI1_IRQHandler -* Description : This function handles External interrupt Line 1 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI2_IRQHandler -* Description : This function handles External interrupt Line 2 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI3_IRQHandler -* Description : This function handles External interrupt Line 3 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI4_IRQHandler -* Description : This function handles External interrupt Line 4 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel1_IRQHandler -* Description : This function handles DMA1 Channel 1 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel2_IRQHandler -* Description : This function handles DMA1 Channel 2 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel3_IRQHandler -* Description : This function handles DMA1 Channel 3 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel4_IRQHandler -* Description : This function handles DMA1 Channel 4 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel5_IRQHandler -* Description : This function handles DMA1 Channel 5 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel6_IRQHandler -* Description : This function handles DMA1 Channel 6 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel6_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel7_IRQHandler -* Description : This function handles DMA1 Channel 7 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel7_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : ADC1_2_IRQHandler -* Description : This function handles ADC1 and ADC2 global interrupts requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void ADC1_2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USB_HP_CAN_TX_IRQHandler -* Description : This function handles USB High Priority or CAN TX interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USB_HP_CAN_TX_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USB_LP_CAN_RX0_IRQHandler -* Description : This function handles USB Low Priority or CAN RX0 interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USB_LP_CAN_RX0_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : CAN_RX1_IRQHandler -* Description : This function handles CAN RX1 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void CAN_RX1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : CAN_SCE_IRQHandler -* Description : This function handles CAN SCE interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void CAN_SCE_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI9_5_IRQHandler -* Description : This function handles External lines 9 to 5 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI9_5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_BRK_IRQHandler -* Description : This function handles TIM1 Break interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_BRK_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_UP_IRQHandler -* Description : This function handles TIM1 overflow and update interrupt -* request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_UP_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_TRG_COM_IRQHandler -* Description : This function handles TIM1 Trigger and commutation interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_TRG_COM_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_CC_IRQHandler -* Description : This function handles TIM1 capture compare interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_CC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM2_IRQHandler -* Description : This function handles TIM2 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM3_IRQHandler -* Description : This function handles TIM3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM4_IRQHandler -* Description : This function handles TIM4 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C1_EV_IRQHandler -* Description : This function handles I2C1 Event interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C1_EV_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C1_ER_IRQHandler -* Description : This function handles I2C1 Error interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C1_ER_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C2_EV_IRQHandler -* Description : This function handles I2C2 Event interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C2_EV_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C2_ER_IRQHandler -* Description : This function handles I2C2 Error interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C2_ER_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SPI1_IRQHandler -* Description : This function handles SPI1 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SPI1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SPI2_IRQHandler -* Description : This function handles SPI2 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SPI2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USART1_IRQHandler -* Description : This function handles USART1 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USART1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USART2_IRQHandler -* Description : This function handles USART2 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USART2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USART3_IRQHandler -* Description : This function handles USART3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USART3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI15_10_IRQHandler -* Description : This function handles External lines 15 to 10 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI15_10_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : RTCAlarm_IRQHandler -* Description : This function handles RTC Alarm interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RTCAlarm_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USBWakeUp_IRQHandler -* Description : This function handles USB WakeUp interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USBWakeUp_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_BRK_IRQHandler -* Description : This function handles TIM8 Break interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_BRK_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_UP_IRQHandler -* Description : This function handles TIM8 overflow and update interrupt -* request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_UP_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_TRG_COM_IRQHandler -* Description : This function handles TIM8 Trigger and commutation interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_TRG_COM_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_CC_IRQHandler -* Description : This function handles TIM8 capture compare interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_CC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : ADC3_IRQHandler -* Description : This function handles ADC3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void ADC3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : FSMC_IRQHandler -* Description : This function handles FSMC global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void FSMC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SDIO_IRQHandler -* Description : This function handles SDIO global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SDIO_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM5_IRQHandler -* Description : This function handles TIM5 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SPI3_IRQHandler -* Description : This function handles SPI3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SPI3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : UART4_IRQHandler -* Description : This function handles UART4 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void UART4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : UART5_IRQHandler -* Description : This function handles UART5 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void UART5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM6_IRQHandler -* Description : This function handles TIM6 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM6_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM7_IRQHandler -* Description : This function handles TIM7 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM7_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel1_IRQHandler -* Description : This function handles DMA2 Channel 1 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel2_IRQHandler -* Description : This function handles DMA2 Channel 2 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel3_IRQHandler -* Description : This function handles DMA2 Channel 3 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel4_5_IRQHandler -* Description : This function handles DMA2 Channel 4 and DMA2 Channel 5 -* interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel4_5_IRQHandler(void) -{ -} - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/NOR/stm32f10x_it.h b/src/stm32lib/examples/FSMC/NOR/stm32f10x_it.h deleted file mode 100755 index e74b6cc..0000000 --- a/src/stm32lib/examples/FSMC/NOR/stm32f10x_it.h +++ /dev/null @@ -1,100 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : stm32f10x_it.h -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : This file contains the headers of the interrupt handlers. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F10x_IT_H -#define __STM32F10x_IT_H - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_lib.h" - -/* Exported types ------------------------------------------------------------*/ -/* Exported constants --------------------------------------------------------*/ -/* Exported macro ------------------------------------------------------------*/ -/* Exported functions ------------------------------------------------------- */ - -void NMIException(void); -void HardFaultException(void); -void MemManageException(void); -void BusFaultException(void); -void UsageFaultException(void); -void DebugMonitor(void); -void SVCHandler(void); -void PendSVC(void); -void SysTickHandler(void); -void WWDG_IRQHandler(void); -void PVD_IRQHandler(void); -void TAMPER_IRQHandler(void); -void RTC_IRQHandler(void); -void FLASH_IRQHandler(void); -void RCC_IRQHandler(void); -void EXTI0_IRQHandler(void); -void EXTI1_IRQHandler(void); -void EXTI2_IRQHandler(void); -void EXTI3_IRQHandler(void); -void EXTI4_IRQHandler(void); -void DMA1_Channel1_IRQHandler(void); -void DMA1_Channel2_IRQHandler(void); -void DMA1_Channel3_IRQHandler(void); -void DMA1_Channel4_IRQHandler(void); -void DMA1_Channel5_IRQHandler(void); -void DMA1_Channel6_IRQHandler(void); -void DMA1_Channel7_IRQHandler(void); -void ADC1_2_IRQHandler(void); -void USB_HP_CAN_TX_IRQHandler(void); -void USB_LP_CAN_RX0_IRQHandler(void); -void CAN_RX1_IRQHandler(void); -void CAN_SCE_IRQHandler(void); -void EXTI9_5_IRQHandler(void); -void TIM1_BRK_IRQHandler(void); -void TIM1_UP_IRQHandler(void); -void TIM1_TRG_COM_IRQHandler(void); -void TIM1_CC_IRQHandler(void); -void TIM2_IRQHandler(void); -void TIM3_IRQHandler(void); -void TIM4_IRQHandler(void); -void I2C1_EV_IRQHandler(void); -void I2C1_ER_IRQHandler(void); -void I2C2_EV_IRQHandler(void); -void I2C2_ER_IRQHandler(void); -void SPI1_IRQHandler(void); -void SPI2_IRQHandler(void); -void USART1_IRQHandler(void); -void USART2_IRQHandler(void); -void USART3_IRQHandler(void); -void EXTI15_10_IRQHandler(void); -void RTCAlarm_IRQHandler(void); -void USBWakeUp_IRQHandler(void); -void TIM8_BRK_IRQHandler(void); -void TIM8_UP_IRQHandler(void); -void TIM8_TRG_COM_IRQHandler(void); -void TIM8_CC_IRQHandler(void); -void ADC3_IRQHandler(void); -void FSMC_IRQHandler(void); -void SDIO_IRQHandler(void); -void TIM5_IRQHandler(void); -void SPI3_IRQHandler(void); -void UART4_IRQHandler(void); -void UART5_IRQHandler(void); -void TIM6_IRQHandler(void); -void TIM7_IRQHandler(void); -void DMA2_Channel1_IRQHandler(void); -void DMA2_Channel2_IRQHandler(void); -void DMA2_Channel3_IRQHandler(void); -void DMA2_Channel4_5_IRQHandler(void); - -#endif /* __STM32F10x_IT_H */ - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/FLASH_NOR.ini b/src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/FLASH_NOR.ini deleted file mode 100755 index 62440b9..0000000 --- a/src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/FLASH_NOR.ini +++ /dev/null @@ -1,38 +0,0 @@ -/******************************************************************************/ -/* FLASH_NOR.ini: NOR Initialization File */ -/******************************************************************************/ -// <<< Use Configuration Wizard in Context Menu >>> // -/******************************************************************************/ -/* This file is part of the uVision/ARM development tools. */ -/* Copyright (c) 2005-2006 Keil Software. All rights reserved. */ -/* This software may only be used under the terms of a valid, current, */ -/* end user licence from KEIL for a compatible version of KEIL software */ -/* development tools. Nothing else gives you the right to use this software. */ -/******************************************************************************/ - -FUNC void Setup(void) { - - _WDWORD(0x40021014, 0x00000114); // FSMC clock enable - _WDWORD(0x40021018, 0x000001FD); // GPIOD~G clock enable - - _WDWORD(0x40011400, 0x44BB44BB); // GPIOD config - _WDWORD(0x40011404, 0xBBBBBBBB); // GPIOD config - - _WDWORD(0x40011800, 0xBBBBB444); // GPIOE config - _WDWORD(0x40011804, 0xBBBBBBBB); // GPIOE config - - _WDWORD(0x40011C00, 0x44BBBBBB); // GPIOF config - _WDWORD(0x40011C04, 0xBBBB4444); // GPIOF config - - _WDWORD(0x40012000, 0x44BBBBBB); // GPIOG config - _WDWORD(0x40012004, 0x444444B4); // GPIOG config - - _WDWORD(0xA0000000, 0x000030DB); // FSMC config - _WDWORD(0xA0000008, 0x00001059); // FSMC config - _WDWORD(0xA000000C, 0x10000705); // FSMC config - _WDWORD(0xA0000104, 0x0FFFFFFF); // FSMC config -} - -Setup(); - - diff --git a/src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/STM3210E-EVAL_NOR.FLM b/src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/STM3210E-EVAL_NOR.FLM deleted file mode 100755 index f8be719..0000000 Binary files a/src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/STM3210E-EVAL_NOR.FLM and /dev/null differ diff --git a/src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/main.c b/src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/main.c deleted file mode 100755 index 1c7c69d..0000000 --- a/src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/main.c +++ /dev/null @@ -1,112 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : main.c -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Main program body. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_lib.h" - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ -/* Private macro -------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ -GPIO_InitTypeDef GPIO_InitStructure; - -/* Private function prototypes -----------------------------------------------*/ -void Delay(vu32 nCount); - -/* Private functions ---------------------------------------------------------*/ - -/******************************************************************************* -* Function Name : main -* Description : Main program. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -int main(void) -{ -#ifdef DEBUG - debug(); -#endif - - /* Enable GPIOF clock */ - RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOF, ENABLE); - - /* Configure IO connected to LD1, LD2, LD3 and LD4 leds */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9; - GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; - GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; - GPIO_Init(GPIOF, &GPIO_InitStructure); - - while (1) - { - /* Turn on LD1 */ - GPIO_SetBits(GPIOF, GPIO_Pin_6); - /* Insert delay */ - Delay(0xAFFFF); - - /* Turn on LD2 and LD3 */ - GPIO_SetBits(GPIOF, GPIO_Pin_7 | GPIO_Pin_8); - /* Turn off LD1 */ - GPIO_ResetBits(GPIOF, GPIO_Pin_6); - /* Insert delay */ - Delay(0xAFFFF); - - /* Turn on LD4 */ - GPIO_SetBits(GPIOF, GPIO_Pin_9); - /* Turn off LD2 and LD3 */ - GPIO_ResetBits(GPIOF, GPIO_Pin_8 | GPIO_Pin_7); - /* Insert delay */ - Delay(0xAFFFF); - - /* Turn off LD4 */ - GPIO_ResetBits(GPIOF, GPIO_Pin_9); - } -} - -/******************************************************************************* -* Function Name : Delay -* Description : Inserts a delay time. -* Input : nCount: specifies the delay time length. -* Output : None -* Return : None -*******************************************************************************/ -void Delay(vu32 nCount) -{ - for(; nCount != 0; nCount--); -} - -#ifdef DEBUG -/******************************************************************************* -* Function Name : assert_failed -* Description : Reports the name of the source file and the source line number -* where the assert_param error has occurred. -* Input : - file: pointer to the source file name -* - line: assert_param error line source number -* Output : None -* Return : None -*******************************************************************************/ -void assert_failed(u8* file, u32 line) -{ - /* User can add his own implementation to report the file name and line number, - ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */ - - /* Infinite loop */ - while (1) - { - } -} -#endif - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/readme.txt b/src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/readme.txt deleted file mode 100755 index 709393c..0000000 --- a/src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/readme.txt +++ /dev/null @@ -1,92 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : readme.txt -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Description of the binary directory. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -Description -=================== -This directory contains a set of sources files that build the application to be -loaded into the NOR memory mounted on STM3210E-EVAL board. - -The GPIO IOToggle example provided within the STM32F10x Firmware library is used -as illustration. In this example four LEDs connected to the PF.06, PF.07, PF.08 -and PF.09 pins are toggled in an infinite loop. - - -Directory contents -================== -stm32f10x_conf.h Library Configuration file -stm32f10x_it.c Interrupt handlers -stm32f10x_it.h Header for stm32f10x_it.c -main.c Main program -FLASH_NOR.ini NOR Initialization File for RVMDK toolchain. -STM3210E-EVAL_NOR.FLM STM3210E-EVAL board NOR flasher for RVMDK toolchain. - - -Hardware environment -==================== -This example runs on STMicroelectronics STM3210E-EVAL evaluation board and can be -easily tailored to any other hardware. - - -How to use it -============= -In order to make the program work, you must do the following: -- Create a project and setup all your toolchain's start-up files: - + RVMDK - - copy "STM3210E-EVAL_NOR.FLM" file under "C:\Keil\ARM\Flash" directory - - in Project->Options->Target window, select 'ROM1', enter 0x64000000 as - start address with size of 0x1000000 ans check "Startup" option (IROM1 must be un-checked) - - in Project->Options->Linker window, enter 0x64000000 as R/O base address - - in Project->Options->Utilities window, select "Use Target Driver for Flash Programming" - - Click on 'Settings' button then select "STM3210E_EVAL NOR Flash" as - Programming Algorithms (start:0x64000000, size:0x1000000) - - in "Init File" select "FLASH_NOR.ini" provided within this example directory - - + EWARM4 - - use "lnkarm_nor.xcl" as linker file - - in project->options ->debugger-> setup , the "run to main" option should be - un-checked - - in project->options ->debugger->download click on "edit" button("Use flash - loader(s)" option must be checked) - - select the default flash loader then click on "edit" button - - check the "Relocate" option and enter 0x64000000 as Base address - - check "override default flash loader path" option and use "FlashSTM32F10x_NOR.d79" - as flash loader - - + EWARM5 - - use "stm32f10x_nor.icf" as linker file - - in project->options ->debugger-> setup , the "run to main" option should be - un-checked - - in project->options ->debugger->download click on "edit" button("Use flash - loader(s)" option must be checked) - - select the default flash loader then click on "edit" button - - check the "Relocate" option and enter 0x64000000 as Base address - - check "override default flash loader path" option and use "FlashSTM32F10x_NOR.out" - as flash loader - - + HiTOP - - in project->settings->project->tool settings ->linker, use "linknor.lnk" - as linker file. - - run the script Flash_Nor (click on the button Flash_Nor from the toolbar menu) - before loading the image into target. - -- Compile the directory content files and required Library files: - + stm32f10x_lib.c - + stm32f10x_gpio.c - + stm32f10x_rcc.c - + stm32f10x_flash.c - -- Link all compiled files and load your image into NOR memory - -******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****** diff --git a/src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/stm32f10x_conf.h b/src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/stm32f10x_conf.h deleted file mode 100755 index 53aa202..0000000 --- a/src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/stm32f10x_conf.h +++ /dev/null @@ -1,170 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : stm32f10x_conf.h -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Library configuration file. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F10x_CONF_H -#define __STM32F10x_CONF_H - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_type.h" - -/* Exported types ------------------------------------------------------------*/ -/* Exported constants --------------------------------------------------------*/ -/* Uncomment the line below to compile the library in DEBUG mode, this will expanse - the "assert_param" macro in the firmware library code (see "Exported macro" - section below) */ -/*#define DEBUG 1*/ - -/* Comment the line below to disable the specific peripheral inclusion */ -/************************************* ADC ************************************/ -//#define _ADC -//#define _ADC1 -//#define _ADC2 -//#define _ADC3 - -/************************************* BKP ************************************/ -//#define _BKP - -/************************************* CAN ************************************/ -//#define _CAN - -/************************************* CRC ************************************/ -//#define _CRC - -/************************************* DAC ************************************/ -//#define _DAC - -/************************************* DBGMCU *********************************/ -//#define _DBGMCU - -/************************************* DMA ************************************/ -//#define _DMA -//#define _DMA1_Channel1 -//#define _DMA1_Channel2 -//#define _DMA1_Channel3 -//#define _DMA1_Channel4 -//#define _DMA1_Channel5 -//#define _DMA1_Channel6 -//#define _DMA1_Channel7 -//#define _DMA2_Channel1 -//#define _DMA2_Channel2 -//#define _DMA2_Channel3 -//#define _DMA2_Channel4 -//#define _DMA2_Channel5 - -/************************************* EXTI ***********************************/ -//#define _EXTI - -/************************************* FLASH and Option Bytes *****************/ -#define _FLASH -/* Uncomment the line below to enable FLASH program/erase/protections functions, - otherwise only FLASH configuration (latency, prefetch, half cycle) functions - are enabled */ -/* #define _FLASH_PROG */ - -/************************************* FSMC ***********************************/ -//#define _FSMC - -/************************************* GPIO ***********************************/ -#define _GPIO -//#define _GPIOA -//#define _GPIOB -//#define _GPIOC -//#define _GPIOD -//#define _GPIOE -#define _GPIOF -//#define _GPIOG -#define _AFIO - -/************************************* I2C ************************************/ -//#define _I2C -//#define _I2C1 -//#define _I2C2 - -/************************************* IWDG ***********************************/ -//#define _IWDG - -/************************************* NVIC ***********************************/ -//#define _NVIC - -/************************************* PWR ************************************/ -//#define _PWR - -/************************************* RCC ************************************/ -#define _RCC - -/************************************* RTC ************************************/ -//#define _RTC - -/************************************* SDIO ***********************************/ -//#define _SDIO - -/************************************* SPI ************************************/ -//#define _SPI -//#define _SPI1 -//#define _SPI2 -//#define _SPI3 - -/************************************* SysTick ********************************/ -//#define _SysTick - -/************************************* TIM ************************************/ -//#define _TIM -//#define _TIM1 -//#define _TIM2 -//#define _TIM3 -//#define _TIM4 -//#define _TIM5 -//#define _TIM6 -//#define _TIM7 -//#define _TIM8 - -/************************************* USART **********************************/ -//#define _USART -//#define _USART1 -//#define _USART2 -//#define _USART3 -//#define _UART4 -//#define _UART5 - -/************************************* WWDG ***********************************/ -//#define _WWDG - -/* In the following line adjust the value of External High Speed oscillator (HSE) - used in your application */ -#define HSE_Value ((u32)8000000) /* Value of the External oscillator in Hz */ - -/* Exported macro ------------------------------------------------------------*/ -#ifdef DEBUG -/******************************************************************************* -* Macro Name : assert_param -* Description : The assert_param macro is used for function's parameters check. -* It is used only if the library is compiled in DEBUG mode. -* Input : - expr: If expr is false, it calls assert_failed function -* which reports the name of the source file and the source -* line number of the call that failed. -* If expr is true, it returns no value. -* Return : None -*******************************************************************************/ - #define assert_param(expr) ((expr) ? (void)0 : assert_failed((u8 *)__FILE__, __LINE__)) -/* Exported functions ------------------------------------------------------- */ - void assert_failed(u8* file, u32 line); -#else - #define assert_param(expr) ((void)0) -#endif /* DEBUG */ - -#endif /* __STM32F10x_CONF_H */ - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/stm32f10x_it.c b/src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/stm32f10x_it.c deleted file mode 100755 index e27c1e7..0000000 --- a/src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/stm32f10x_it.c +++ /dev/null @@ -1,810 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : stm32f10x_it.c -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Main Interrupt Service Routines. -* This file provides template for all exceptions handler -* and peripherals interrupt service routine. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_it.h" - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ -/* Private macro -------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ -/* Private function prototypes -----------------------------------------------*/ -/* Private functions ---------------------------------------------------------*/ - -/******************************************************************************* -* Function Name : NMIException -* Description : This function handles NMI exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void NMIException(void) -{ -} - -/******************************************************************************* -* Function Name : HardFaultException -* Description : This function handles Hard Fault exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void HardFaultException(void) -{ - /* Go to infinite loop when Hard Fault exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : MemManageException -* Description : This function handles Memory Manage exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void MemManageException(void) -{ - /* Go to infinite loop when Memory Manage exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : BusFaultException -* Description : This function handles Bus Fault exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void BusFaultException(void) -{ - /* Go to infinite loop when Bus Fault exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : UsageFaultException -* Description : This function handles Usage Fault exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void UsageFaultException(void) -{ - /* Go to infinite loop when Usage Fault exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : DebugMonitor -* Description : This function handles Debug Monitor exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DebugMonitor(void) -{ -} - -/******************************************************************************* -* Function Name : SVCHandler -* Description : This function handles SVCall exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SVCHandler(void) -{ -} - -/******************************************************************************* -* Function Name : PendSVC -* Description : This function handles PendSVC exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void PendSVC(void) -{ -} - -/******************************************************************************* -* Function Name : SysTickHandler -* Description : This function handles SysTick Handler. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SysTickHandler(void) -{ -} - -/******************************************************************************* -* Function Name : WWDG_IRQHandler -* Description : This function handles WWDG interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void WWDG_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : PVD_IRQHandler -* Description : This function handles PVD interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void PVD_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TAMPER_IRQHandler -* Description : This function handles Tamper interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TAMPER_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : RTC_IRQHandler -* Description : This function handles RTC global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RTC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : FLASH_IRQHandler -* Description : This function handles Flash interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void FLASH_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : RCC_IRQHandler -* Description : This function handles RCC interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RCC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI0_IRQHandler -* Description : This function handles External interrupt Line 0 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI0_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI1_IRQHandler -* Description : This function handles External interrupt Line 1 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI2_IRQHandler -* Description : This function handles External interrupt Line 2 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI3_IRQHandler -* Description : This function handles External interrupt Line 3 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI4_IRQHandler -* Description : This function handles External interrupt Line 4 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel1_IRQHandler -* Description : This function handles DMA1 Channel 1 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel2_IRQHandler -* Description : This function handles DMA1 Channel 2 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel3_IRQHandler -* Description : This function handles DMA1 Channel 3 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel4_IRQHandler -* Description : This function handles DMA1 Channel 4 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel5_IRQHandler -* Description : This function handles DMA1 Channel 5 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel6_IRQHandler -* Description : This function handles DMA1 Channel 6 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel6_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel7_IRQHandler -* Description : This function handles DMA1 Channel 7 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel7_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : ADC1_2_IRQHandler -* Description : This function handles ADC1 and ADC2 global interrupts requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void ADC1_2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USB_HP_CAN_TX_IRQHandler -* Description : This function handles USB High Priority or CAN TX interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USB_HP_CAN_TX_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USB_LP_CAN_RX0_IRQHandler -* Description : This function handles USB Low Priority or CAN RX0 interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USB_LP_CAN_RX0_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : CAN_RX1_IRQHandler -* Description : This function handles CAN RX1 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void CAN_RX1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : CAN_SCE_IRQHandler -* Description : This function handles CAN SCE interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void CAN_SCE_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI9_5_IRQHandler -* Description : This function handles External lines 9 to 5 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI9_5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_BRK_IRQHandler -* Description : This function handles TIM1 Break interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_BRK_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_UP_IRQHandler -* Description : This function handles TIM1 overflow and update interrupt -* request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_UP_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_TRG_COM_IRQHandler -* Description : This function handles TIM1 Trigger and commutation interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_TRG_COM_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_CC_IRQHandler -* Description : This function handles TIM1 capture compare interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_CC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM2_IRQHandler -* Description : This function handles TIM2 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM3_IRQHandler -* Description : This function handles TIM3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM4_IRQHandler -* Description : This function handles TIM4 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C1_EV_IRQHandler -* Description : This function handles I2C1 Event interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C1_EV_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C1_ER_IRQHandler -* Description : This function handles I2C1 Error interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C1_ER_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C2_EV_IRQHandler -* Description : This function handles I2C2 Event interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C2_EV_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C2_ER_IRQHandler -* Description : This function handles I2C2 Error interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C2_ER_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SPI1_IRQHandler -* Description : This function handles SPI1 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SPI1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SPI2_IRQHandler -* Description : This function handles SPI2 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SPI2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USART1_IRQHandler -* Description : This function handles USART1 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USART1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USART2_IRQHandler -* Description : This function handles USART2 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USART2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USART3_IRQHandler -* Description : This function handles USART3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USART3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI15_10_IRQHandler -* Description : This function handles External lines 15 to 10 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI15_10_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : RTCAlarm_IRQHandler -* Description : This function handles RTC Alarm interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RTCAlarm_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USBWakeUp_IRQHandler -* Description : This function handles USB WakeUp interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USBWakeUp_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_BRK_IRQHandler -* Description : This function handles TIM8 Break interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_BRK_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_UP_IRQHandler -* Description : This function handles TIM8 overflow and update interrupt -* request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_UP_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_TRG_COM_IRQHandler -* Description : This function handles TIM8 Trigger and commutation interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_TRG_COM_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_CC_IRQHandler -* Description : This function handles TIM8 capture compare interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_CC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : ADC3_IRQHandler -* Description : This function handles ADC3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void ADC3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : FSMC_IRQHandler -* Description : This function handles FSMC global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void FSMC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SDIO_IRQHandler -* Description : This function handles SDIO global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SDIO_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM5_IRQHandler -* Description : This function handles TIM5 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SPI3_IRQHandler -* Description : This function handles SPI3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SPI3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : UART4_IRQHandler -* Description : This function handles UART4 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void UART4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : UART5_IRQHandler -* Description : This function handles UART5 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void UART5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM6_IRQHandler -* Description : This function handles TIM6 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM6_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM7_IRQHandler -* Description : This function handles TIM7 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM7_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel1_IRQHandler -* Description : This function handles DMA2 Channel 1 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel2_IRQHandler -* Description : This function handles DMA2 Channel 2 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel3_IRQHandler -* Description : This function handles DMA2 Channel 3 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel4_5_IRQHandler -* Description : This function handles DMA2 Channel 4 and DMA2 Channel 5 -* interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel4_5_IRQHandler(void) -{ -} - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/stm32f10x_it.h b/src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/stm32f10x_it.h deleted file mode 100755 index e74b6cc..0000000 --- a/src/stm32lib/examples/FSMC/NOR_CodeExecute/binary/stm32f10x_it.h +++ /dev/null @@ -1,100 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : stm32f10x_it.h -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : This file contains the headers of the interrupt handlers. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F10x_IT_H -#define __STM32F10x_IT_H - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_lib.h" - -/* Exported types ------------------------------------------------------------*/ -/* Exported constants --------------------------------------------------------*/ -/* Exported macro ------------------------------------------------------------*/ -/* Exported functions ------------------------------------------------------- */ - -void NMIException(void); -void HardFaultException(void); -void MemManageException(void); -void BusFaultException(void); -void UsageFaultException(void); -void DebugMonitor(void); -void SVCHandler(void); -void PendSVC(void); -void SysTickHandler(void); -void WWDG_IRQHandler(void); -void PVD_IRQHandler(void); -void TAMPER_IRQHandler(void); -void RTC_IRQHandler(void); -void FLASH_IRQHandler(void); -void RCC_IRQHandler(void); -void EXTI0_IRQHandler(void); -void EXTI1_IRQHandler(void); -void EXTI2_IRQHandler(void); -void EXTI3_IRQHandler(void); -void EXTI4_IRQHandler(void); -void DMA1_Channel1_IRQHandler(void); -void DMA1_Channel2_IRQHandler(void); -void DMA1_Channel3_IRQHandler(void); -void DMA1_Channel4_IRQHandler(void); -void DMA1_Channel5_IRQHandler(void); -void DMA1_Channel6_IRQHandler(void); -void DMA1_Channel7_IRQHandler(void); -void ADC1_2_IRQHandler(void); -void USB_HP_CAN_TX_IRQHandler(void); -void USB_LP_CAN_RX0_IRQHandler(void); -void CAN_RX1_IRQHandler(void); -void CAN_SCE_IRQHandler(void); -void EXTI9_5_IRQHandler(void); -void TIM1_BRK_IRQHandler(void); -void TIM1_UP_IRQHandler(void); -void TIM1_TRG_COM_IRQHandler(void); -void TIM1_CC_IRQHandler(void); -void TIM2_IRQHandler(void); -void TIM3_IRQHandler(void); -void TIM4_IRQHandler(void); -void I2C1_EV_IRQHandler(void); -void I2C1_ER_IRQHandler(void); -void I2C2_EV_IRQHandler(void); -void I2C2_ER_IRQHandler(void); -void SPI1_IRQHandler(void); -void SPI2_IRQHandler(void); -void USART1_IRQHandler(void); -void USART2_IRQHandler(void); -void USART3_IRQHandler(void); -void EXTI15_10_IRQHandler(void); -void RTCAlarm_IRQHandler(void); -void USBWakeUp_IRQHandler(void); -void TIM8_BRK_IRQHandler(void); -void TIM8_UP_IRQHandler(void); -void TIM8_TRG_COM_IRQHandler(void); -void TIM8_CC_IRQHandler(void); -void ADC3_IRQHandler(void); -void FSMC_IRQHandler(void); -void SDIO_IRQHandler(void); -void TIM5_IRQHandler(void); -void SPI3_IRQHandler(void); -void UART4_IRQHandler(void); -void UART5_IRQHandler(void); -void TIM6_IRQHandler(void); -void TIM7_IRQHandler(void); -void DMA2_Channel1_IRQHandler(void); -void DMA2_Channel2_IRQHandler(void); -void DMA2_Channel3_IRQHandler(void); -void DMA2_Channel4_5_IRQHandler(void); - -#endif /* __STM32F10x_IT_H */ - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/NOR_CodeExecute/fsmc_nor.c b/src/stm32lib/examples/FSMC/NOR_CodeExecute/fsmc_nor.c deleted file mode 100755 index f72a14c..0000000 --- a/src/stm32lib/examples/FSMC/NOR_CodeExecute/fsmc_nor.c +++ /dev/null @@ -1,416 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : fsmc_nor.c -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : This file provides a set of functions needed to drive the -* M29W128FL, M29W128GL and S29GL128P NOR memories mounted -* on STM3210E-EVAL board. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ -/* Includes ------------------------------------------------------------------*/ -#include "fsmc_nor.h" - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ -#define Bank1_NOR2_ADDR ((u32)0x64000000) - -/* Delay definition */ -#define BlockErase_Timeout ((u32)0x00A00000) -#define ChipErase_Timeout ((u32)0x30000000) -#define Program_Timeout ((u32)0x00001400) - -/* Private macro -------------------------------------------------------------*/ -#define ADDR_SHIFT(A) (Bank1_NOR2_ADDR + (2 * (A))) -#define NOR_WRITE(Address, Data) (*(vu16 *)(Address) = (Data)) - -/* Private variables ---------------------------------------------------------*/ -/* Private function prototypes -----------------------------------------------*/ -/* Private functions ---------------------------------------------------------*/ -/******************************************************************************* -* Function Name : FSMC_NOR_Init -* Description : Configures the FSMC and GPIOs to interface with the NOR memory. -* This function must be called before any write/read operation -* on the NOR. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void FSMC_NOR_Init(void) -{ - FSMC_NORSRAMInitTypeDef FSMC_NORSRAMInitStructure; - FSMC_NORSRAMTimingInitTypeDef p; - GPIO_InitTypeDef GPIO_InitStructure; - - RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD | RCC_APB2Periph_GPIOE | - RCC_APB2Periph_GPIOF | RCC_APB2Periph_GPIOG, ENABLE); - - /*-- GPIO Configuration ------------------------------------------------------*/ - /* NOR Data lines configuration */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_8 | GPIO_Pin_9 | - GPIO_Pin_10 | GPIO_Pin_14 | GPIO_Pin_15; - GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; - GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; - GPIO_Init(GPIOD, &GPIO_InitStructure); - - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 | - GPIO_Pin_11 | GPIO_Pin_12 | GPIO_Pin_13 | - GPIO_Pin_14 | GPIO_Pin_15; - GPIO_Init(GPIOE, &GPIO_InitStructure); - - /* NOR Address lines configuration */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3 | - GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_12 | GPIO_Pin_13 | - GPIO_Pin_14 | GPIO_Pin_15; - GPIO_Init(GPIOF, &GPIO_InitStructure); - - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_2 | - GPIO_Pin_3 | GPIO_Pin_4 | GPIO_Pin_5; - GPIO_Init(GPIOG, &GPIO_InitStructure); - - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11 | GPIO_Pin_12 | GPIO_Pin_13; - GPIO_Init(GPIOD, &GPIO_InitStructure); - - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3 | GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_6; - GPIO_Init(GPIOE, &GPIO_InitStructure); - - /* NOE and NWE configuration */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4 | GPIO_Pin_5; - GPIO_Init(GPIOD, &GPIO_InitStructure); - - /* NE2 configuration */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9; - GPIO_Init(GPIOG, &GPIO_InitStructure); - - /*-- FSMC Configuration ----------------------------------------------------*/ - p.FSMC_AddressSetupTime = 0x05; - p.FSMC_AddressHoldTime = 0x00; - p.FSMC_DataSetupTime = 0x07; - p.FSMC_BusTurnAroundDuration = 0x00; - p.FSMC_CLKDivision = 0x00; - p.FSMC_DataLatency = 0x00; - p.FSMC_AccessMode = FSMC_AccessMode_B; - - FSMC_NORSRAMInitStructure.FSMC_Bank = FSMC_Bank1_NORSRAM2; - FSMC_NORSRAMInitStructure.FSMC_DataAddressMux = FSMC_DataAddressMux_Disable; - FSMC_NORSRAMInitStructure.FSMC_MemoryType = FSMC_MemoryType_NOR; - FSMC_NORSRAMInitStructure.FSMC_MemoryDataWidth = FSMC_MemoryDataWidth_16b; - FSMC_NORSRAMInitStructure.FSMC_BurstAccessMode = FSMC_BurstAccessMode_Disable; - FSMC_NORSRAMInitStructure.FSMC_WaitSignalPolarity = FSMC_WaitSignalPolarity_Low; - FSMC_NORSRAMInitStructure.FSMC_WrapMode = FSMC_WrapMode_Disable; - FSMC_NORSRAMInitStructure.FSMC_WaitSignalActive = FSMC_WaitSignalActive_BeforeWaitState; - FSMC_NORSRAMInitStructure.FSMC_WriteOperation = FSMC_WriteOperation_Enable; - FSMC_NORSRAMInitStructure.FSMC_WaitSignal = FSMC_WaitSignal_Disable; - FSMC_NORSRAMInitStructure.FSMC_ExtendedMode = FSMC_ExtendedMode_Disable; - FSMC_NORSRAMInitStructure.FSMC_AsyncWait = FSMC_AsyncWait_Disable; - FSMC_NORSRAMInitStructure.FSMC_WriteBurst = FSMC_WriteBurst_Disable; - FSMC_NORSRAMInitStructure.FSMC_ReadWriteTimingStruct = &p; - FSMC_NORSRAMInitStructure.FSMC_WriteTimingStruct = &p; - - FSMC_NORSRAMInit(&FSMC_NORSRAMInitStructure); - - /* Enable FSMC Bank1_NOR Bank */ - FSMC_NORSRAMCmd(FSMC_Bank1_NORSRAM2, ENABLE); -} - -/****************************************************************************** -* Function Name : FSMC_NOR_ReadID -* Description : Reads NOR memory's Manufacturer and Device Code. -* Input : - NOR_ID: pointer to a NOR_IDTypeDef structure which will hold -* the Manufacturer and Device Code. -* Output : None -* Return : None -*******************************************************************************/ -void FSMC_NOR_ReadID(NOR_IDTypeDef* NOR_ID) -{ - NOR_WRITE(ADDR_SHIFT(0x0555), 0x00AA); - NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055); - NOR_WRITE(ADDR_SHIFT(0x0555), 0x0090); - - NOR_ID->Manufacturer_Code = *(vu16 *) ADDR_SHIFT(0x0000); - NOR_ID->Device_Code1 = *(vu16 *) ADDR_SHIFT(0x0001); - NOR_ID->Device_Code2 = *(vu16 *) ADDR_SHIFT(0x000E); - NOR_ID->Device_Code3 = *(vu16 *) ADDR_SHIFT(0x000F); -} - -/******************************************************************************* -* Function Name : FSMC_NOR_EraseBlock -* Description : Erases the specified Nor memory block. -* Input : - BlockAddr: address of the block to erase. -* Output : None -* Return : NOR_Status:The returned value can be: NOR_SUCCESS, NOR_ERROR -* or NOR_TIMEOUT -*******************************************************************************/ -NOR_Status FSMC_NOR_EraseBlock(u32 BlockAddr) -{ - NOR_WRITE(ADDR_SHIFT(0x0555), 0x00AA); - NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055); - NOR_WRITE(ADDR_SHIFT(0x0555), 0x0080); - NOR_WRITE(ADDR_SHIFT(0x0555), 0x00AA); - NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055); - NOR_WRITE((Bank1_NOR2_ADDR + BlockAddr), 0x30); - - return (FSMC_NOR_GetStatus(BlockErase_Timeout)); -} - -/******************************************************************************* -* Function Name : FSMC_NOR_EraseChip -* Description : Erases the entire chip. -* Input : None -* Output : None -* Return : NOR_Status:The returned value can be: NOR_SUCCESS, NOR_ERROR -* or NOR_TIMEOUT -*******************************************************************************/ -NOR_Status FSMC_NOR_EraseChip(void) -{ - NOR_WRITE(ADDR_SHIFT(0x0555), 0x00AA); - NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055); - NOR_WRITE(ADDR_SHIFT(0x0555), 0x0080); - NOR_WRITE(ADDR_SHIFT(0x0555), 0x00AA); - NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055); - NOR_WRITE(ADDR_SHIFT(0x0555), 0x0010); - - return (FSMC_NOR_GetStatus(ChipErase_Timeout)); -} - -/****************************************************************************** -* Function Name : FSMC_NOR_WriteHalfWord -* Description : Writes a half-word to the NOR memory. -* Input : - WriteAddr : NOR memory internal address to write to. -* - Data : Data to write. -* Output : None -* Return : NOR_Status:The returned value can be: NOR_SUCCESS, NOR_ERROR -* or NOR_TIMEOUT -*******************************************************************************/ -NOR_Status FSMC_NOR_WriteHalfWord(u32 WriteAddr, u16 Data) -{ - NOR_WRITE(ADDR_SHIFT(0x0555), 0x00AA); - NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055); - NOR_WRITE(ADDR_SHIFT(0x0555), 0x00A0); - NOR_WRITE((Bank1_NOR2_ADDR + WriteAddr), Data); - - return (FSMC_NOR_GetStatus(Program_Timeout)); -} - -/******************************************************************************* -* Function Name : FSMC_NOR_WriteBuffer -* Description : Writes a half-word buffer to the FSMC NOR memory. -* Input : - pBuffer : pointer to buffer. -* - WriteAddr : NOR memory internal address from which the data -* will be written. -* - NumHalfwordToWrite : number of Half words to write. -* Output : None -* Return : NOR_Status:The returned value can be: NOR_SUCCESS, NOR_ERROR -* or NOR_TIMEOUT -*******************************************************************************/ -NOR_Status FSMC_NOR_WriteBuffer(u16* pBuffer, u32 WriteAddr, u32 NumHalfwordToWrite) -{ - NOR_Status status = NOR_ONGOING; - - do - { - /* Transfer data to the memory */ - status = FSMC_NOR_WriteHalfWord(WriteAddr, *pBuffer++); - WriteAddr = WriteAddr + 2; - NumHalfwordToWrite--; - } - while((status == NOR_SUCCESS) && (NumHalfwordToWrite != 0)); - - return (status); -} - -/******************************************************************************* -* Function Name : FSMC_NOR_ProgramBuffer -* Description : Writes a half-word buffer to the FSMC NOR memory. This function -* must be used only with S29GL128P NOR memory. -* Input : - pBuffer : pointer to buffer. -* - WriteAddr: NOR memory internal address from which the data -* will be written. -* - NumHalfwordToWrite: number of Half words to write. -* The maximum allowed value is 32 Half words (64 bytes). -* Output : None -* Return : NOR_Status:The returned value can be: NOR_SUCCESS, NOR_ERROR -* or NOR_TIMEOUT -*******************************************************************************/ -NOR_Status FSMC_NOR_ProgramBuffer(u16* pBuffer, u32 WriteAddr, u32 NumHalfwordToWrite) -{ - u32 lastloadedaddress = 0x00; - u32 currentaddress = 0x00; - u32 endaddress = 0x00; - - /* Initialize variables */ - currentaddress = WriteAddr; - endaddress = WriteAddr + NumHalfwordToWrite - 1; - lastloadedaddress = WriteAddr; - - /* Issue unlock command sequence */ - NOR_WRITE(ADDR_SHIFT(0x00555), 0x00AA); - - NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055); - - /* Write Write Buffer Load Command */ - NOR_WRITE(ADDR_SHIFT(WriteAddr), 0x0025); - NOR_WRITE(ADDR_SHIFT(WriteAddr), (NumHalfwordToWrite - 1)); - - /* Load Data into NOR Buffer */ - while(currentaddress <= endaddress) - { - /* Store last loaded address & data value (for polling) */ - lastloadedaddress = currentaddress; - - NOR_WRITE(ADDR_SHIFT(currentaddress), *pBuffer++); - currentaddress += 1; - } - - NOR_WRITE(ADDR_SHIFT(lastloadedaddress), 0x29); - - return(FSMC_NOR_GetStatus(Program_Timeout)); -} - -/****************************************************************************** -* Function Name : FSMC_NOR_ReadHalfWord -* Description : Reads a half-word from the NOR memory. -* Input : - ReadAddr : NOR memory internal address to read from. -* Output : None -* Return : Half-word read from the NOR memory -*******************************************************************************/ -u16 FSMC_NOR_ReadHalfWord(u32 ReadAddr) -{ - NOR_WRITE(ADDR_SHIFT(0x00555), 0x00AA); - NOR_WRITE(ADDR_SHIFT(0x002AA), 0x0055); - NOR_WRITE((Bank1_NOR2_ADDR + ReadAddr), 0x00F0 ); - - return (*(vu16 *)((Bank1_NOR2_ADDR + ReadAddr))); -} - -/******************************************************************************* -* Function Name : FSMC_NOR_ReadBuffer -* Description : Reads a block of data from the FSMC NOR memory. -* Input : - pBuffer : pointer to the buffer that receives the data read -* from the NOR memory. -* - ReadAddr : NOR memory internal address to read from. -* - NumHalfwordToRead : number of Half word to read. -* Output : None -* Return : None -*******************************************************************************/ -void FSMC_NOR_ReadBuffer(u16* pBuffer, u32 ReadAddr, u32 NumHalfwordToRead) -{ - NOR_WRITE(ADDR_SHIFT(0x0555), 0x00AA); - NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055); - NOR_WRITE((Bank1_NOR2_ADDR + ReadAddr), 0x00F0); - - for(; NumHalfwordToRead != 0x00; NumHalfwordToRead--) /* while there is data to read */ - { - /* Read a Halfword from the NOR */ - *pBuffer++ = *(vu16 *)((Bank1_NOR2_ADDR + ReadAddr)); - ReadAddr = ReadAddr + 2; - } -} - -/****************************************************************************** -* Function Name : FSMC_NOR_ReturnToReadMode -* Description : Returns the NOR memory to Read mode. -* Input : None -* Output : None -* Return : NOR_SUCCESS -*******************************************************************************/ -NOR_Status FSMC_NOR_ReturnToReadMode(void) -{ - NOR_WRITE(Bank1_NOR2_ADDR, 0x00F0); - - return (NOR_SUCCESS); -} - -/****************************************************************************** -* Function Name : FSMC_NOR_Reset -* Description : Returns the NOR memory to Read mode and resets the errors in -* the NOR memory Status Register. -* Input : None -* Output : None -* Return : NOR_SUCCESS -*******************************************************************************/ -NOR_Status FSMC_NOR_Reset(void) -{ - NOR_WRITE(ADDR_SHIFT(0x00555), 0x00AA); - NOR_WRITE(ADDR_SHIFT(0x002AA), 0x0055); - NOR_WRITE(Bank1_NOR2_ADDR, 0x00F0); - - return (NOR_SUCCESS); -} - -/****************************************************************************** -* Function Name : FSMC_NOR_GetStatus -* Description : Returns the NOR operation status. -* Input : - Timeout: NOR progamming Timeout -* Output : None -* Return : NOR_Status:The returned value can be: NOR_SUCCESS, NOR_ERROR -* or NOR_TIMEOUT -*******************************************************************************/ -NOR_Status FSMC_NOR_GetStatus(u32 Timeout) -{ - u16 val1 = 0x00, val2 = 0x00; - NOR_Status status = NOR_ONGOING; - u32 timeout = Timeout; - - /* Poll on NOR memory Ready/Busy signal ------------------------------------*/ - while((GPIO_ReadInputDataBit(GPIOD, GPIO_Pin_6) != RESET) && (timeout > 0)) - { - timeout--; - } - - timeout = Timeout; - - while((GPIO_ReadInputDataBit(GPIOD, GPIO_Pin_6) == RESET) && (timeout > 0)) - { - timeout--; - } - - /* Get the NOR memory operation status -------------------------------------*/ - while((Timeout != 0x00) && (status != NOR_SUCCESS)) - { - Timeout--; - - /* Read DQ6 and DQ5 */ - val1 = *(vu16 *)(Bank1_NOR2_ADDR); - val2 = *(vu16 *)(Bank1_NOR2_ADDR); - - /* If DQ6 did not toggle between the two reads then return NOR_Success */ - if((val1 & 0x0040) == (val2 & 0x0040)) - { - return NOR_SUCCESS; - } - - if((val1 & 0x0020) != 0x0020) - { - status = NOR_ONGOING; - } - - val1 = *(vu16 *)(Bank1_NOR2_ADDR); - val2 = *(vu16 *)(Bank1_NOR2_ADDR); - - if((val1 & 0x0040) == (val2 & 0x0040)) - { - return NOR_SUCCESS; - } - else if((val1 & 0x0020) == 0x0020) - { - return NOR_ERROR; - } - } - - if(Timeout == 0x00) - { - status = NOR_TIMEOUT; - } - - /* Return the operation status */ - return (status); -} - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/NOR_CodeExecute/fsmc_nor.h b/src/stm32lib/examples/FSMC/NOR_CodeExecute/fsmc_nor.h deleted file mode 100755 index 264f231..0000000 --- a/src/stm32lib/examples/FSMC/NOR_CodeExecute/fsmc_nor.h +++ /dev/null @@ -1,58 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : fsmc_nor.h -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Header for fsmc_nor.c file. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __FSMC_NOR_H -#define __FSMC_NOR_H - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_lib.h" - -/* Exported types ------------------------------------------------------------*/ -typedef struct -{ - u16 Manufacturer_Code; - u16 Device_Code1; - u16 Device_Code2; - u16 Device_Code3; -}NOR_IDTypeDef; - -/* NOR Status */ -typedef enum -{ - NOR_SUCCESS = 0, - NOR_ONGOING, - NOR_ERROR, - NOR_TIMEOUT -}NOR_Status; - -/* Exported constants --------------------------------------------------------*/ -/* Exported macro ------------------------------------------------------------*/ -/* Exported functions ------------------------------------------------------- */ -void FSMC_NOR_Init(void); -void FSMC_NOR_ReadID(NOR_IDTypeDef* NOR_ID); -NOR_Status FSMC_NOR_EraseBlock(u32 BlockAddr); -NOR_Status FSMC_NOR_EraseChip(void); -NOR_Status FSMC_NOR_WriteHalfWord(u32 WriteAddr, u16 Data); -NOR_Status FSMC_NOR_WriteBuffer(u16* pBuffer, u32 WriteAddr, u32 NumHalfwordToWrite); -NOR_Status FSMC_NOR_ProgramBuffer(u16* pBuffer, u32 WriteAddr, u32 NumHalfwordToWrite); -u16 FSMC_NOR_ReadHalfWord(u32 ReadAddr); -void FSMC_NOR_ReadBuffer(u16* pBuffer, u32 ReadAddr, u32 NumHalfwordToRead); -NOR_Status FSMC_NOR_ReturnToReadMode(void); -NOR_Status FSMC_NOR_Reset(void); -NOR_Status FSMC_NOR_GetStatus(u32 Timeout); - -#endif /* __FSMC_NOR_H */ - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/NOR_CodeExecute/main.c b/src/stm32lib/examples/FSMC/NOR_CodeExecute/main.c deleted file mode 100755 index d78ec16..0000000 --- a/src/stm32lib/examples/FSMC/NOR_CodeExecute/main.c +++ /dev/null @@ -1,171 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : main.c -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Main program body. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Includes ------------------------------------------------------------------*/ -#include "fsmc_nor.h" - -/* Private typedef -----------------------------------------------------------*/ -typedef void (*pFunction)(void); - -/* Private define ------------------------------------------------------------*/ -#define ApplicationAddress ((u32)0x64000000) - -/* Private macro -------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ -pFunction Jump_To_Application; -vu32 JumpAddress; -ErrorStatus HSEStartUpStatus; - -/* Private function prototypes -----------------------------------------------*/ -void RCC_Configuration(void); -void NVIC_Configuration(void); - -/* Private functions ---------------------------------------------------------*/ - -/******************************************************************************* -* Function Name : main -* Description : Main program. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -int main(void) -{ -#ifdef DEBUG - debug(); -#endif - - /* System Clocks Configuration */ - RCC_Configuration(); - - /* FSMC nOR configuration **************************************************/ - /* Enable the FSMC Clock */ - RCC_AHBPeriphClockCmd(RCC_AHBPeriph_FSMC, ENABLE); - - /* Configure FSMC Bank1 NOR/SRAM2 */ - FSMC_NOR_Init(); - - - /* Jump to code loaded in NOR memory and execute it *************************/ - JumpAddress = *(vu32*) (ApplicationAddress + 4); - Jump_To_Application = (pFunction) JumpAddress; - - /* Initialize user application's Stack Pointer */ - __MSR_MSP(*(vu32*) ApplicationAddress); - - Jump_To_Application(); - - while (1) - { - } -} - -/******************************************************************************* -* Function Name : RCC_Configuration -* Description : Configures the different system clocks. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RCC_Configuration(void) -{ - /* RCC system reset(for debug purpose) */ - RCC_DeInit(); - - /* Enable HSE */ - RCC_HSEConfig(RCC_HSE_ON); - - /* Wait till HSE is ready */ - HSEStartUpStatus = RCC_WaitForHSEStartUp(); - - if(HSEStartUpStatus == SUCCESS) - { - /* Enable Prefetch Buffer */ - FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable); - - /* Flash 2 wait state */ - FLASH_SetLatency(FLASH_Latency_2); - - /* HCLK = SYSCLK */ - RCC_HCLKConfig(RCC_SYSCLK_Div1); - - /* PCLK2 = HCLK */ - RCC_PCLK2Config(RCC_HCLK_Div1); - - /* PCLK1 = HCLK/2 */ - RCC_PCLK1Config(RCC_HCLK_Div2); - - /* PLLCLK = 8MHz * 9 = 72 MHz */ - RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_9); - - /* Enable PLL */ - RCC_PLLCmd(ENABLE); - - /* Wait till PLL is ready */ - while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET) - { - } - - /* Select PLL as system clock source */ - RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); - - /* Wait till PLL is used as system clock source */ - while(RCC_GetSYSCLKSource() != 0x08) - { - } - } -} - -/******************************************************************************* -* Function Name : NVIC_Configuration -* Description : Configures Vector Table base location. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void NVIC_Configuration(void) -{ -#ifdef VECT_TAB_RAM - /* Set the Vector Table base location at 0x20000000 */ - NVIC_SetVectorTable(NVIC_VectTab_RAM, 0x0); -#else /* VECT_TAB_FLASH */ - /* Set the Vector Table base location at 0x08000000 */ - NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x0); -#endif -} - -#ifdef DEBUG -/******************************************************************************* -* Function Name : assert_failed -* Description : Reports the name of the source file and the source line number -* where the assert_param error has occurred. -* Input : - file: pointer to the source file name -* - line: assert_param error line source number -* Output : None -* Return : None -*******************************************************************************/ -void assert_failed(u8* file, u32 line) -{ - /* User can add his own implementation to report the file name and line number, - ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */ - - /* Infinite loop */ - while (1) - { - } -} -#endif - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/NOR_CodeExecute/readme.txt b/src/stm32lib/examples/FSMC/NOR_CodeExecute/readme.txt deleted file mode 100755 index 71ac2fd..0000000 --- a/src/stm32lib/examples/FSMC/NOR_CodeExecute/readme.txt +++ /dev/null @@ -1,56 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : readme.txt -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Description of the FSMC NOR_CodeExecute Example. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -Example description -=================== -This directory contains a set of sources files that describes how to build an -application to be loaded into the NOR memory mounted on STM3210E-EVAL board then -execute it from internal Flash. - - -Directory contents -================== - + \binary Contains a set of sources files that build the application - to be loaded into the NOR memory mounted on STM3210E-EVAL board. - + stm32f10x_conf.h Library Configuration file - + stm32f10x_it.c Interrupt handlers - + stm32f10x_it.h Header for stm32f10x_it.c - + main.c Main program - - -Hardware environment -==================== -This example runs on STMicroelectronics STM3210B-EVAL and STM3210E-EVAL evaluation -boards and can be easily tailored to any other hardware. - - -How to use it -============= -In order to make the program work, you must do the following: -1. Program the NOR memory with the example provided in the \binary directory -2. Program the internal Flash with the code that will jump to the NOR memory to execute - the loaded example, for this you have to: - - Create a project and setup all your toolchain's start-up files - - Compile the directory content files and required Library files: - + stm32f10x_lib.c - + stm32f10x_gpio.c - + stm32f10x_rcc.c - + stm32f10x_nvic.c - + stm32f10x_flash.c - - Link all compiled files and load your image into target memory - - Run the example - - -******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****** diff --git a/src/stm32lib/examples/FSMC/NOR_CodeExecute/stm32f10x_conf.h b/src/stm32lib/examples/FSMC/NOR_CodeExecute/stm32f10x_conf.h deleted file mode 100755 index 48e488f..0000000 --- a/src/stm32lib/examples/FSMC/NOR_CodeExecute/stm32f10x_conf.h +++ /dev/null @@ -1,170 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : stm32f10x_conf.h -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Library configuration file. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F10x_CONF_H -#define __STM32F10x_CONF_H - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_type.h" - -/* Exported types ------------------------------------------------------------*/ -/* Exported constants --------------------------------------------------------*/ -/* Uncomment the line below to compile the library in DEBUG mode, this will expanse - the "assert_param" macro in the firmware library code (see "Exported macro" - section below) */ -/*#define DEBUG 1*/ - -/* Comment the line below to disable the specific peripheral inclusion */ -/************************************* ADC ************************************/ -//#define _ADC -//#define _ADC1 -//#define _ADC2 -//#define _ADC3 - -/************************************* BKP ************************************/ -//#define _BKP - -/************************************* CAN ************************************/ -//#define _CAN - -/************************************* CRC ************************************/ -//#define _CRC - -/************************************* DAC ************************************/ -//#define _DAC - -/************************************* DBGMCU *********************************/ -//#define _DBGMCU - -/************************************* DMA ************************************/ -//#define _DMA -//#define _DMA1_Channel1 -//#define _DMA1_Channel2 -//#define _DMA1_Channel3 -//#define _DMA1_Channel4 -//#define _DMA1_Channel5 -//#define _DMA1_Channel6 -//#define _DMA1_Channel7 -//#define _DMA2_Channel1 -//#define _DMA2_Channel2 -//#define _DMA2_Channel3 -//#define _DMA2_Channel4 -//#define _DMA2_Channel5 - -/************************************* EXTI ***********************************/ -//#define _EXTI - -/************************************* FLASH and Option Bytes *****************/ -#define _FLASH -/* Uncomment the line below to enable FLASH program/erase/protections functions, - otherwise only FLASH configuration (latency, prefetch, half cycle) functions - are enabled */ -/* #define _FLASH_PROG */ - -/************************************* FSMC ***********************************/ -#define _FSMC - -/************************************* GPIO ***********************************/ -#define _GPIO -//#define _GPIOA -//#define _GPIOB -//#define _GPIOC -#define _GPIOD -#define _GPIOE -#define _GPIOF -#define _GPIOG -#define _AFIO - -/************************************* I2C ************************************/ -//#define _I2C -//#define _I2C1 -//#define _I2C2 - -/************************************* IWDG ***********************************/ -//#define _IWDG - -/************************************* NVIC ***********************************/ -#define _NVIC - -/************************************* PWR ************************************/ -//#define _PWR - -/************************************* RCC ************************************/ -#define _RCC - -/************************************* RTC ************************************/ -//#define _RTC - -/************************************* SDIO ***********************************/ -//#define _SDIO - -/************************************* SPI ************************************/ -//#define _SPI -//#define _SPI1 -//#define _SPI2 -//#define _SPI3 - -/************************************* SysTick ********************************/ -//#define _SysTick - -/************************************* TIM ************************************/ -//#define _TIM -//#define _TIM1 -//#define _TIM2 -//#define _TIM3 -//#define _TIM4 -//#define _TIM5 -//#define _TIM6 -//#define _TIM7 -//#define _TIM8 - -/************************************* USART **********************************/ -//#define _USART -//#define _USART1 -//#define _USART2 -//#define _USART3 -//#define _UART4 -//#define _UART5 - -/************************************* WWDG ***********************************/ -//#define _WWDG - -/* In the following line adjust the value of External High Speed oscillator (HSE) - used in your application */ -#define HSE_Value ((u32)8000000) /* Value of the External oscillator in Hz*/ - -/* Exported macro ------------------------------------------------------------*/ -#ifdef DEBUG -/******************************************************************************* -* Macro Name : assert_param -* Description : The assert_param macro is used for function's parameters check. -* It is used only if the library is compiled in DEBUG mode. -* Input : - expr: If expr is false, it calls assert_failed function -* which reports the name of the source file and the source -* line number of the call that failed. -* If expr is true, it returns no value. -* Return : None -*******************************************************************************/ - #define assert_param(expr) ((expr) ? (void)0 : assert_failed((u8 *)__FILE__, __LINE__)) -/* Exported functions ------------------------------------------------------- */ - void assert_failed(u8* file, u32 line); -#else - #define assert_param(expr) ((void)0) -#endif /* DEBUG */ - -#endif /* __STM32F10x_CONF_H */ - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/NOR_CodeExecute/stm32f10x_it.c b/src/stm32lib/examples/FSMC/NOR_CodeExecute/stm32f10x_it.c deleted file mode 100755 index e27c1e7..0000000 --- a/src/stm32lib/examples/FSMC/NOR_CodeExecute/stm32f10x_it.c +++ /dev/null @@ -1,810 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : stm32f10x_it.c -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Main Interrupt Service Routines. -* This file provides template for all exceptions handler -* and peripherals interrupt service routine. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_it.h" - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ -/* Private macro -------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ -/* Private function prototypes -----------------------------------------------*/ -/* Private functions ---------------------------------------------------------*/ - -/******************************************************************************* -* Function Name : NMIException -* Description : This function handles NMI exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void NMIException(void) -{ -} - -/******************************************************************************* -* Function Name : HardFaultException -* Description : This function handles Hard Fault exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void HardFaultException(void) -{ - /* Go to infinite loop when Hard Fault exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : MemManageException -* Description : This function handles Memory Manage exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void MemManageException(void) -{ - /* Go to infinite loop when Memory Manage exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : BusFaultException -* Description : This function handles Bus Fault exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void BusFaultException(void) -{ - /* Go to infinite loop when Bus Fault exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : UsageFaultException -* Description : This function handles Usage Fault exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void UsageFaultException(void) -{ - /* Go to infinite loop when Usage Fault exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : DebugMonitor -* Description : This function handles Debug Monitor exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DebugMonitor(void) -{ -} - -/******************************************************************************* -* Function Name : SVCHandler -* Description : This function handles SVCall exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SVCHandler(void) -{ -} - -/******************************************************************************* -* Function Name : PendSVC -* Description : This function handles PendSVC exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void PendSVC(void) -{ -} - -/******************************************************************************* -* Function Name : SysTickHandler -* Description : This function handles SysTick Handler. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SysTickHandler(void) -{ -} - -/******************************************************************************* -* Function Name : WWDG_IRQHandler -* Description : This function handles WWDG interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void WWDG_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : PVD_IRQHandler -* Description : This function handles PVD interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void PVD_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TAMPER_IRQHandler -* Description : This function handles Tamper interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TAMPER_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : RTC_IRQHandler -* Description : This function handles RTC global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RTC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : FLASH_IRQHandler -* Description : This function handles Flash interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void FLASH_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : RCC_IRQHandler -* Description : This function handles RCC interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RCC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI0_IRQHandler -* Description : This function handles External interrupt Line 0 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI0_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI1_IRQHandler -* Description : This function handles External interrupt Line 1 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI2_IRQHandler -* Description : This function handles External interrupt Line 2 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI3_IRQHandler -* Description : This function handles External interrupt Line 3 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI4_IRQHandler -* Description : This function handles External interrupt Line 4 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel1_IRQHandler -* Description : This function handles DMA1 Channel 1 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel2_IRQHandler -* Description : This function handles DMA1 Channel 2 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel3_IRQHandler -* Description : This function handles DMA1 Channel 3 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel4_IRQHandler -* Description : This function handles DMA1 Channel 4 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel5_IRQHandler -* Description : This function handles DMA1 Channel 5 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel6_IRQHandler -* Description : This function handles DMA1 Channel 6 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel6_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel7_IRQHandler -* Description : This function handles DMA1 Channel 7 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel7_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : ADC1_2_IRQHandler -* Description : This function handles ADC1 and ADC2 global interrupts requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void ADC1_2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USB_HP_CAN_TX_IRQHandler -* Description : This function handles USB High Priority or CAN TX interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USB_HP_CAN_TX_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USB_LP_CAN_RX0_IRQHandler -* Description : This function handles USB Low Priority or CAN RX0 interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USB_LP_CAN_RX0_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : CAN_RX1_IRQHandler -* Description : This function handles CAN RX1 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void CAN_RX1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : CAN_SCE_IRQHandler -* Description : This function handles CAN SCE interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void CAN_SCE_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI9_5_IRQHandler -* Description : This function handles External lines 9 to 5 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI9_5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_BRK_IRQHandler -* Description : This function handles TIM1 Break interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_BRK_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_UP_IRQHandler -* Description : This function handles TIM1 overflow and update interrupt -* request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_UP_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_TRG_COM_IRQHandler -* Description : This function handles TIM1 Trigger and commutation interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_TRG_COM_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_CC_IRQHandler -* Description : This function handles TIM1 capture compare interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_CC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM2_IRQHandler -* Description : This function handles TIM2 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM3_IRQHandler -* Description : This function handles TIM3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM4_IRQHandler -* Description : This function handles TIM4 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C1_EV_IRQHandler -* Description : This function handles I2C1 Event interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C1_EV_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C1_ER_IRQHandler -* Description : This function handles I2C1 Error interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C1_ER_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C2_EV_IRQHandler -* Description : This function handles I2C2 Event interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C2_EV_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C2_ER_IRQHandler -* Description : This function handles I2C2 Error interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C2_ER_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SPI1_IRQHandler -* Description : This function handles SPI1 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SPI1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SPI2_IRQHandler -* Description : This function handles SPI2 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SPI2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USART1_IRQHandler -* Description : This function handles USART1 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USART1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USART2_IRQHandler -* Description : This function handles USART2 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USART2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USART3_IRQHandler -* Description : This function handles USART3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USART3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI15_10_IRQHandler -* Description : This function handles External lines 15 to 10 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI15_10_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : RTCAlarm_IRQHandler -* Description : This function handles RTC Alarm interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RTCAlarm_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USBWakeUp_IRQHandler -* Description : This function handles USB WakeUp interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USBWakeUp_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_BRK_IRQHandler -* Description : This function handles TIM8 Break interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_BRK_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_UP_IRQHandler -* Description : This function handles TIM8 overflow and update interrupt -* request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_UP_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_TRG_COM_IRQHandler -* Description : This function handles TIM8 Trigger and commutation interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_TRG_COM_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_CC_IRQHandler -* Description : This function handles TIM8 capture compare interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_CC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : ADC3_IRQHandler -* Description : This function handles ADC3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void ADC3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : FSMC_IRQHandler -* Description : This function handles FSMC global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void FSMC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SDIO_IRQHandler -* Description : This function handles SDIO global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SDIO_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM5_IRQHandler -* Description : This function handles TIM5 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SPI3_IRQHandler -* Description : This function handles SPI3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SPI3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : UART4_IRQHandler -* Description : This function handles UART4 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void UART4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : UART5_IRQHandler -* Description : This function handles UART5 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void UART5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM6_IRQHandler -* Description : This function handles TIM6 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM6_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM7_IRQHandler -* Description : This function handles TIM7 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM7_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel1_IRQHandler -* Description : This function handles DMA2 Channel 1 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel2_IRQHandler -* Description : This function handles DMA2 Channel 2 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel3_IRQHandler -* Description : This function handles DMA2 Channel 3 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel4_5_IRQHandler -* Description : This function handles DMA2 Channel 4 and DMA2 Channel 5 -* interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel4_5_IRQHandler(void) -{ -} - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/NOR_CodeExecute/stm32f10x_it.h b/src/stm32lib/examples/FSMC/NOR_CodeExecute/stm32f10x_it.h deleted file mode 100755 index e74b6cc..0000000 --- a/src/stm32lib/examples/FSMC/NOR_CodeExecute/stm32f10x_it.h +++ /dev/null @@ -1,100 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : stm32f10x_it.h -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : This file contains the headers of the interrupt handlers. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F10x_IT_H -#define __STM32F10x_IT_H - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_lib.h" - -/* Exported types ------------------------------------------------------------*/ -/* Exported constants --------------------------------------------------------*/ -/* Exported macro ------------------------------------------------------------*/ -/* Exported functions ------------------------------------------------------- */ - -void NMIException(void); -void HardFaultException(void); -void MemManageException(void); -void BusFaultException(void); -void UsageFaultException(void); -void DebugMonitor(void); -void SVCHandler(void); -void PendSVC(void); -void SysTickHandler(void); -void WWDG_IRQHandler(void); -void PVD_IRQHandler(void); -void TAMPER_IRQHandler(void); -void RTC_IRQHandler(void); -void FLASH_IRQHandler(void); -void RCC_IRQHandler(void); -void EXTI0_IRQHandler(void); -void EXTI1_IRQHandler(void); -void EXTI2_IRQHandler(void); -void EXTI3_IRQHandler(void); -void EXTI4_IRQHandler(void); -void DMA1_Channel1_IRQHandler(void); -void DMA1_Channel2_IRQHandler(void); -void DMA1_Channel3_IRQHandler(void); -void DMA1_Channel4_IRQHandler(void); -void DMA1_Channel5_IRQHandler(void); -void DMA1_Channel6_IRQHandler(void); -void DMA1_Channel7_IRQHandler(void); -void ADC1_2_IRQHandler(void); -void USB_HP_CAN_TX_IRQHandler(void); -void USB_LP_CAN_RX0_IRQHandler(void); -void CAN_RX1_IRQHandler(void); -void CAN_SCE_IRQHandler(void); -void EXTI9_5_IRQHandler(void); -void TIM1_BRK_IRQHandler(void); -void TIM1_UP_IRQHandler(void); -void TIM1_TRG_COM_IRQHandler(void); -void TIM1_CC_IRQHandler(void); -void TIM2_IRQHandler(void); -void TIM3_IRQHandler(void); -void TIM4_IRQHandler(void); -void I2C1_EV_IRQHandler(void); -void I2C1_ER_IRQHandler(void); -void I2C2_EV_IRQHandler(void); -void I2C2_ER_IRQHandler(void); -void SPI1_IRQHandler(void); -void SPI2_IRQHandler(void); -void USART1_IRQHandler(void); -void USART2_IRQHandler(void); -void USART3_IRQHandler(void); -void EXTI15_10_IRQHandler(void); -void RTCAlarm_IRQHandler(void); -void USBWakeUp_IRQHandler(void); -void TIM8_BRK_IRQHandler(void); -void TIM8_UP_IRQHandler(void); -void TIM8_TRG_COM_IRQHandler(void); -void TIM8_CC_IRQHandler(void); -void ADC3_IRQHandler(void); -void FSMC_IRQHandler(void); -void SDIO_IRQHandler(void); -void TIM5_IRQHandler(void); -void SPI3_IRQHandler(void); -void UART4_IRQHandler(void); -void UART5_IRQHandler(void); -void TIM6_IRQHandler(void); -void TIM7_IRQHandler(void); -void DMA2_Channel1_IRQHandler(void); -void DMA2_Channel2_IRQHandler(void); -void DMA2_Channel3_IRQHandler(void); -void DMA2_Channel4_5_IRQHandler(void); - -#endif /* __STM32F10x_IT_H */ - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/SRAM/fsmc_sram.c b/src/stm32lib/examples/FSMC/SRAM/fsmc_sram.c deleted file mode 100755 index ea7d248..0000000 --- a/src/stm32lib/examples/FSMC/SRAM/fsmc_sram.c +++ /dev/null @@ -1,161 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : fsmc_sram.c -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : This file provides a set of functions needed to drive the -* IS61WV51216BLL SRAM memory mounted on STM3210E-EVAL board. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Includes ------------------------------------------------------------------*/ -#include "fsmc_sram.h" - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ -#define Bank1_SRAM3_ADDR ((u32)0x68000000) - -/* Private macro -------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ -/* Private function prototypes -----------------------------------------------*/ -/* Private functions ---------------------------------------------------------*/ - -/******************************************************************************* -* Function Name : FSMC_SRAM_Init -* Description : Configures the FSMC and GPIOs to interface with the SRAM memory. -* This function must be called before any write/read operation -* on the SRAM. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void FSMC_SRAM_Init(void) -{ - FSMC_NORSRAMInitTypeDef FSMC_NORSRAMInitStructure; - FSMC_NORSRAMTimingInitTypeDef p; - GPIO_InitTypeDef GPIO_InitStructure; - - RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD | RCC_APB2Periph_GPIOG | RCC_APB2Periph_GPIOE | - RCC_APB2Periph_GPIOF, ENABLE); - -/*-- GPIO Configuration ------------------------------------------------------*/ - /* SRAM Data lines configuration */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_8 | GPIO_Pin_9 | - GPIO_Pin_10 | GPIO_Pin_14 | GPIO_Pin_15; - GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; - GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; - GPIO_Init(GPIOD, &GPIO_InitStructure); - - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 | - GPIO_Pin_11 | GPIO_Pin_12 | GPIO_Pin_13 | GPIO_Pin_14 | - GPIO_Pin_15; - GPIO_Init(GPIOE, &GPIO_InitStructure); - - /* SRAM Address lines configuration */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3 | - GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_12 | GPIO_Pin_13 | - GPIO_Pin_14 | GPIO_Pin_15; - GPIO_Init(GPIOF, &GPIO_InitStructure); - - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3 | - GPIO_Pin_4 | GPIO_Pin_5; - GPIO_Init(GPIOG, &GPIO_InitStructure); - - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11 | GPIO_Pin_12 | GPIO_Pin_13; - GPIO_Init(GPIOD, &GPIO_InitStructure); - - /* NOE and NWE configuration */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4 |GPIO_Pin_5; - GPIO_Init(GPIOD, &GPIO_InitStructure); - - /* NE3 configuration */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10; - GPIO_Init(GPIOG, &GPIO_InitStructure); - - /* NBL0, NBL1 configuration */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1; - GPIO_Init(GPIOE, &GPIO_InitStructure); - -/*-- FSMC Configuration ------------------------------------------------------*/ - p.FSMC_AddressSetupTime = 0; - p.FSMC_AddressHoldTime = 0; - p.FSMC_DataSetupTime = 2; - p.FSMC_BusTurnAroundDuration = 0; - p.FSMC_CLKDivision = 0; - p.FSMC_DataLatency = 0; - p.FSMC_AccessMode = FSMC_AccessMode_A; - - FSMC_NORSRAMInitStructure.FSMC_Bank = FSMC_Bank1_NORSRAM3; - FSMC_NORSRAMInitStructure.FSMC_DataAddressMux = FSMC_DataAddressMux_Disable; - FSMC_NORSRAMInitStructure.FSMC_MemoryType = FSMC_MemoryType_SRAM; - FSMC_NORSRAMInitStructure.FSMC_MemoryDataWidth = FSMC_MemoryDataWidth_16b; - FSMC_NORSRAMInitStructure.FSMC_BurstAccessMode = FSMC_BurstAccessMode_Disable; - FSMC_NORSRAMInitStructure.FSMC_WaitSignalPolarity = FSMC_WaitSignalPolarity_Low; - FSMC_NORSRAMInitStructure.FSMC_WrapMode = FSMC_WrapMode_Disable; - FSMC_NORSRAMInitStructure.FSMC_WaitSignalActive = FSMC_WaitSignalActive_BeforeWaitState; - FSMC_NORSRAMInitStructure.FSMC_WriteOperation = FSMC_WriteOperation_Enable; - FSMC_NORSRAMInitStructure.FSMC_WaitSignal = FSMC_WaitSignal_Disable; - FSMC_NORSRAMInitStructure.FSMC_ExtendedMode = FSMC_ExtendedMode_Disable; - FSMC_NORSRAMInitStructure.FSMC_AsyncWait = FSMC_AsyncWait_Disable; - FSMC_NORSRAMInitStructure.FSMC_WriteBurst = FSMC_WriteBurst_Disable; - FSMC_NORSRAMInitStructure.FSMC_ReadWriteTimingStruct = &p; - FSMC_NORSRAMInitStructure.FSMC_WriteTimingStruct = &p; - - FSMC_NORSRAMInit(&FSMC_NORSRAMInitStructure); - - /* Enable FSMC Bank1_SRAM Bank */ - FSMC_NORSRAMCmd(FSMC_Bank1_NORSRAM3, ENABLE); -} - -/******************************************************************************* -* Function Name : FSMC_SRAM_WriteBuffer -* Description : Writes a Half-word buffer to the FSMC SRAM memory. -* Input : - pBuffer : pointer to buffer. -* - WriteAddr : SRAM memory internal address from which the data -* will be written. -* - NumHalfwordToWrite : number of half-words to write. -* -* Output : None -* Return : None -*******************************************************************************/ -void FSMC_SRAM_WriteBuffer(u16* pBuffer, u32 WriteAddr, u32 NumHalfwordToWrite) -{ - for(; NumHalfwordToWrite != 0; NumHalfwordToWrite--) /* while there is data to write */ - { - /* Transfer data to the memory */ - *(u16 *) (Bank1_SRAM3_ADDR + WriteAddr) = *pBuffer++; - - /* Increment the address*/ - WriteAddr += 2; - } -} - -/******************************************************************************* -* Function Name : FSMC_SRAM_ReadBuffer -* Description : Reads a block of data from the FSMC SRAM memory. -* Input : - pBuffer : pointer to the buffer that receives the data read -* from the SRAM memory. -* - ReadAddr : SRAM memory internal address to read from. -* - NumHalfwordToRead : number of half-words to read. -* Output : None -* Return : None -*******************************************************************************/ -void FSMC_SRAM_ReadBuffer(u16* pBuffer, u32 ReadAddr, u32 NumHalfwordToRead) -{ - for(; NumHalfwordToRead != 0; NumHalfwordToRead--) /* while there is data to read */ - { - /* Read a half-word from the memory */ - *pBuffer++ = *(vu16*) (Bank1_SRAM3_ADDR + ReadAddr); - - /* Increment the address*/ - ReadAddr += 2; - } -} - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/SRAM/fsmc_sram.h b/src/stm32lib/examples/FSMC/SRAM/fsmc_sram.h deleted file mode 100755 index f599266..0000000 --- a/src/stm32lib/examples/FSMC/SRAM/fsmc_sram.h +++ /dev/null @@ -1,33 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : fsmc_sram.h -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Header for fsmc_sram.c file. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __FSMC_SRAM_H -#define __FSMC_SRAM_H - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_lib.h" - -/* Exported types ------------------------------------------------------------*/ -/* Exported constants --------------------------------------------------------*/ -/* Exported macro ------------------------------------------------------------*/ -/* Exported functions ------------------------------------------------------- */ -void FSMC_SRAM_Init(void); -void FSMC_SRAM_WriteBuffer(u16* pBuffer, u32 WriteAddr, u32 NumHalfwordToWrite); -void FSMC_SRAM_ReadBuffer(u16* pBuffer, u32 ReadAddr, u32 NumHalfwordToRead); - -#endif /* __FSMC_SRAM_H */ - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/SRAM/main.c b/src/stm32lib/examples/FSMC/SRAM/main.c deleted file mode 100755 index f7c2f0d..0000000 --- a/src/stm32lib/examples/FSMC/SRAM/main.c +++ /dev/null @@ -1,223 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : main.c -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Main program body -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ -/* Includes ------------------------------------------------------------------*/ -#include "fsmc_sram.h" - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ -#define BUFFER_SIZE 0x400 -#define WRITE_READ_ADDR 0x8000 - -/* Private macro -------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ -GPIO_InitTypeDef GPIO_InitStructure; -ErrorStatus HSEStartUpStatus; - -u16 TxBuffer[BUFFER_SIZE]; -u16 RxBuffer[BUFFER_SIZE]; -u32 WriteReadStatus = 0, Index = 0; - -/* Private function prototypes -----------------------------------------------*/ -void RCC_Configuration(void); -void NVIC_Configuration(void); -void Fill_Buffer(u16 *pBuffer, u16 BufferLenght, u32 Offset); - -/* Private functions ---------------------------------------------------------*/ -/******************************************************************************* -* Function Name : main -* Description : Main program. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -int main(void) -{ -#ifdef DEBUG - debug(); -#endif - - /* System Clocks Configuration */ - RCC_Configuration(); - - /* NVIC Configuration */ - NVIC_Configuration(); - - /* PF.06 and PF.07 config to drive LD1 and LD2 ******************************/ - /* Enable GPIOF clock */ - RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOF, ENABLE); - - /* Configure PF.06 and PF.07 as Output push-pull */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6 | GPIO_Pin_7; - GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; - GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; - GPIO_Init(GPIOF, &GPIO_InitStructure); - - /* Write/read to/from FSMC SRAM memory *************************************/ - /* Enable the FSMC Clock */ - RCC_AHBPeriphClockCmd(RCC_AHBPeriph_FSMC, ENABLE); - - /* Configure FSMC Bank1 NOR/SRAM3 */ - FSMC_SRAM_Init(); - - /* Write data to FSMC SRAM memory */ - /* Fill the buffer to send */ - Fill_Buffer(TxBuffer, BUFFER_SIZE, 0x3212); - FSMC_SRAM_WriteBuffer(TxBuffer, WRITE_READ_ADDR, BUFFER_SIZE); - - - /* Read data from FSMC SRAM memory */ - FSMC_SRAM_ReadBuffer(RxBuffer, WRITE_READ_ADDR, BUFFER_SIZE); - - /* Read back SRAM memory and check content correctness */ - for (Index = 0x00; (Index < BUFFER_SIZE) && (WriteReadStatus == 0); Index++) - { - if (RxBuffer[Index] != TxBuffer[Index]) - { - WriteReadStatus = Index + 1; - } - } - - if (WriteReadStatus == 0) - { /* OK */ - /* Turn on LD1 */ - GPIO_SetBits(GPIOF, GPIO_Pin_6); - } - else - { /* KO */ - /* Turn off LD2 */ - GPIO_SetBits(GPIOF, GPIO_Pin_7); - } - - while (1) - { - } -} - -/******************************************************************************* -* Function Name : RCC_Configuration -* Description : Configures the different system clocks. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RCC_Configuration(void) -{ - /* RCC system reset(for debug purpose) */ - RCC_DeInit(); - - /* Enable HSE */ - RCC_HSEConfig(RCC_HSE_ON); - - /* Wait till HSE is ready */ - HSEStartUpStatus = RCC_WaitForHSEStartUp(); - - if(HSEStartUpStatus == SUCCESS) - { - /* Enable Prefetch Buffer */ - FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable); - - /* Flash 2 wait state */ - FLASH_SetLatency(FLASH_Latency_2); - - /* HCLK = SYSCLK */ - RCC_HCLKConfig(RCC_SYSCLK_Div1); - - /* PCLK2 = HCLK */ - RCC_PCLK2Config(RCC_HCLK_Div1); - - /* PCLK1 = HCLK/2 */ - RCC_PCLK1Config(RCC_HCLK_Div2); - - /* PLLCLK = 8MHz * 9 = 72 MHz */ - RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_9); - - /* Enable PLL */ - RCC_PLLCmd(ENABLE); - - /* Wait till PLL is ready */ - while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET) - { - } - - /* Select PLL as system clock source */ - RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); - - /* Wait till PLL is used as system clock source */ - while(RCC_GetSYSCLKSource() != 0x08) - { - } - } -} - -/******************************************************************************* -* Function Name : NVIC_Configuration -* Description : Configures Vector Table base location. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void NVIC_Configuration(void) -{ -#ifdef VECT_TAB_RAM - /* Set the Vector Table base location at 0x20000000 */ - NVIC_SetVectorTable(NVIC_VectTab_RAM, 0x0); -#else /* VECT_TAB_FLASH */ - /* Set the Vector Table base location at 0x08000000 */ - NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x0); -#endif -} - -/******************************************************************************* -* Function name : Fill_Buffer -* Description : Fill the global buffer -* Input : - pBuffer: pointer on the Buffer to fill -* - BufferSize: size of the buffer to fill -* - Offset: first value to fill on the Buffer -* Output param : None -*******************************************************************************/ -void Fill_Buffer(u16 *pBuffer, u16 BufferLenght, u32 Offset) -{ - u16 IndexTmp = 0; - - /* Put in global buffer same values */ - for (IndexTmp = 0; IndexTmp < BufferLenght; IndexTmp++ ) - { - pBuffer[IndexTmp] = IndexTmp + Offset; - } -} - -#ifdef DEBUG -/******************************************************************************* -* Function Name : assert_failed -* Description : Reports the name of the source file and the source line number -* where the assert_param error has occurred. -* Input : - file: pointer to the source file name -* - line: assert_param error line source number -* Output : None -* Return : None -*******************************************************************************/ -void assert_failed(u8* file, u32 line) -{ - /* User can add his own implementation to report the file name and line number, - ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */ - - /* Infinite loop */ - while (1) - { - } -} -#endif - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/SRAM/readme.txt b/src/stm32lib/examples/FSMC/SRAM/readme.txt deleted file mode 100755 index b9aefda..0000000 --- a/src/stm32lib/examples/FSMC/SRAM/readme.txt +++ /dev/null @@ -1,54 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : readme.txt -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Description of the FSMC SRAM Example. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -Example description -=================== -This example provides a basic example of how to use the FSMC firmware library and -an associate driver to perform read/write operations on the IS61WV51216BLL SRAM -memory mounted on STM3210E-EVAL board. - - -Directory contents -================== -stm32f10x_conf.h Library Configuration file -stm32f10x_it.c Interrupt handlers -stm32f10x_it.h Header for stm32f10x_it.c -fsmc_sram.c Driver for SRAM memory -fsmc_sram.h Header for fsmc_sram.c -main.c Main program - - -Hardware environment -==================== -This example runs on STMicroelectronics STM3210E-EVAL evaluation board. - - -How to use it -============= -In order to make the program work, you must do the following: -- Create a project and setup all your toolchain's start-up files -- Compile the directory content files and required Library files: - + stm32f10x_lib.c - + stm32f10x_gpio.c - + stm32f10x_rcc.c - + stm32f10x_nvic.c - + stm32f10x_flash.c - + stm32f10x_fsmc.c - -- Link all compiled files and load your image into target memory -- Run the example - - -******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****** diff --git a/src/stm32lib/examples/FSMC/SRAM/stm32f10x_conf.h b/src/stm32lib/examples/FSMC/SRAM/stm32f10x_conf.h deleted file mode 100755 index 48e488f..0000000 --- a/src/stm32lib/examples/FSMC/SRAM/stm32f10x_conf.h +++ /dev/null @@ -1,170 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : stm32f10x_conf.h -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Library configuration file. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F10x_CONF_H -#define __STM32F10x_CONF_H - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_type.h" - -/* Exported types ------------------------------------------------------------*/ -/* Exported constants --------------------------------------------------------*/ -/* Uncomment the line below to compile the library in DEBUG mode, this will expanse - the "assert_param" macro in the firmware library code (see "Exported macro" - section below) */ -/*#define DEBUG 1*/ - -/* Comment the line below to disable the specific peripheral inclusion */ -/************************************* ADC ************************************/ -//#define _ADC -//#define _ADC1 -//#define _ADC2 -//#define _ADC3 - -/************************************* BKP ************************************/ -//#define _BKP - -/************************************* CAN ************************************/ -//#define _CAN - -/************************************* CRC ************************************/ -//#define _CRC - -/************************************* DAC ************************************/ -//#define _DAC - -/************************************* DBGMCU *********************************/ -//#define _DBGMCU - -/************************************* DMA ************************************/ -//#define _DMA -//#define _DMA1_Channel1 -//#define _DMA1_Channel2 -//#define _DMA1_Channel3 -//#define _DMA1_Channel4 -//#define _DMA1_Channel5 -//#define _DMA1_Channel6 -//#define _DMA1_Channel7 -//#define _DMA2_Channel1 -//#define _DMA2_Channel2 -//#define _DMA2_Channel3 -//#define _DMA2_Channel4 -//#define _DMA2_Channel5 - -/************************************* EXTI ***********************************/ -//#define _EXTI - -/************************************* FLASH and Option Bytes *****************/ -#define _FLASH -/* Uncomment the line below to enable FLASH program/erase/protections functions, - otherwise only FLASH configuration (latency, prefetch, half cycle) functions - are enabled */ -/* #define _FLASH_PROG */ - -/************************************* FSMC ***********************************/ -#define _FSMC - -/************************************* GPIO ***********************************/ -#define _GPIO -//#define _GPIOA -//#define _GPIOB -//#define _GPIOC -#define _GPIOD -#define _GPIOE -#define _GPIOF -#define _GPIOG -#define _AFIO - -/************************************* I2C ************************************/ -//#define _I2C -//#define _I2C1 -//#define _I2C2 - -/************************************* IWDG ***********************************/ -//#define _IWDG - -/************************************* NVIC ***********************************/ -#define _NVIC - -/************************************* PWR ************************************/ -//#define _PWR - -/************************************* RCC ************************************/ -#define _RCC - -/************************************* RTC ************************************/ -//#define _RTC - -/************************************* SDIO ***********************************/ -//#define _SDIO - -/************************************* SPI ************************************/ -//#define _SPI -//#define _SPI1 -//#define _SPI2 -//#define _SPI3 - -/************************************* SysTick ********************************/ -//#define _SysTick - -/************************************* TIM ************************************/ -//#define _TIM -//#define _TIM1 -//#define _TIM2 -//#define _TIM3 -//#define _TIM4 -//#define _TIM5 -//#define _TIM6 -//#define _TIM7 -//#define _TIM8 - -/************************************* USART **********************************/ -//#define _USART -//#define _USART1 -//#define _USART2 -//#define _USART3 -//#define _UART4 -//#define _UART5 - -/************************************* WWDG ***********************************/ -//#define _WWDG - -/* In the following line adjust the value of External High Speed oscillator (HSE) - used in your application */ -#define HSE_Value ((u32)8000000) /* Value of the External oscillator in Hz*/ - -/* Exported macro ------------------------------------------------------------*/ -#ifdef DEBUG -/******************************************************************************* -* Macro Name : assert_param -* Description : The assert_param macro is used for function's parameters check. -* It is used only if the library is compiled in DEBUG mode. -* Input : - expr: If expr is false, it calls assert_failed function -* which reports the name of the source file and the source -* line number of the call that failed. -* If expr is true, it returns no value. -* Return : None -*******************************************************************************/ - #define assert_param(expr) ((expr) ? (void)0 : assert_failed((u8 *)__FILE__, __LINE__)) -/* Exported functions ------------------------------------------------------- */ - void assert_failed(u8* file, u32 line); -#else - #define assert_param(expr) ((void)0) -#endif /* DEBUG */ - -#endif /* __STM32F10x_CONF_H */ - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/SRAM/stm32f10x_it.c b/src/stm32lib/examples/FSMC/SRAM/stm32f10x_it.c deleted file mode 100755 index e27c1e7..0000000 --- a/src/stm32lib/examples/FSMC/SRAM/stm32f10x_it.c +++ /dev/null @@ -1,810 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : stm32f10x_it.c -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Main Interrupt Service Routines. -* This file provides template for all exceptions handler -* and peripherals interrupt service routine. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_it.h" - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ -/* Private macro -------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ -/* Private function prototypes -----------------------------------------------*/ -/* Private functions ---------------------------------------------------------*/ - -/******************************************************************************* -* Function Name : NMIException -* Description : This function handles NMI exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void NMIException(void) -{ -} - -/******************************************************************************* -* Function Name : HardFaultException -* Description : This function handles Hard Fault exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void HardFaultException(void) -{ - /* Go to infinite loop when Hard Fault exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : MemManageException -* Description : This function handles Memory Manage exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void MemManageException(void) -{ - /* Go to infinite loop when Memory Manage exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : BusFaultException -* Description : This function handles Bus Fault exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void BusFaultException(void) -{ - /* Go to infinite loop when Bus Fault exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : UsageFaultException -* Description : This function handles Usage Fault exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void UsageFaultException(void) -{ - /* Go to infinite loop when Usage Fault exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : DebugMonitor -* Description : This function handles Debug Monitor exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DebugMonitor(void) -{ -} - -/******************************************************************************* -* Function Name : SVCHandler -* Description : This function handles SVCall exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SVCHandler(void) -{ -} - -/******************************************************************************* -* Function Name : PendSVC -* Description : This function handles PendSVC exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void PendSVC(void) -{ -} - -/******************************************************************************* -* Function Name : SysTickHandler -* Description : This function handles SysTick Handler. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SysTickHandler(void) -{ -} - -/******************************************************************************* -* Function Name : WWDG_IRQHandler -* Description : This function handles WWDG interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void WWDG_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : PVD_IRQHandler -* Description : This function handles PVD interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void PVD_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TAMPER_IRQHandler -* Description : This function handles Tamper interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TAMPER_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : RTC_IRQHandler -* Description : This function handles RTC global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RTC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : FLASH_IRQHandler -* Description : This function handles Flash interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void FLASH_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : RCC_IRQHandler -* Description : This function handles RCC interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RCC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI0_IRQHandler -* Description : This function handles External interrupt Line 0 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI0_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI1_IRQHandler -* Description : This function handles External interrupt Line 1 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI2_IRQHandler -* Description : This function handles External interrupt Line 2 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI3_IRQHandler -* Description : This function handles External interrupt Line 3 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI4_IRQHandler -* Description : This function handles External interrupt Line 4 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel1_IRQHandler -* Description : This function handles DMA1 Channel 1 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel2_IRQHandler -* Description : This function handles DMA1 Channel 2 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel3_IRQHandler -* Description : This function handles DMA1 Channel 3 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel4_IRQHandler -* Description : This function handles DMA1 Channel 4 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel5_IRQHandler -* Description : This function handles DMA1 Channel 5 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel6_IRQHandler -* Description : This function handles DMA1 Channel 6 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel6_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel7_IRQHandler -* Description : This function handles DMA1 Channel 7 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel7_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : ADC1_2_IRQHandler -* Description : This function handles ADC1 and ADC2 global interrupts requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void ADC1_2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USB_HP_CAN_TX_IRQHandler -* Description : This function handles USB High Priority or CAN TX interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USB_HP_CAN_TX_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USB_LP_CAN_RX0_IRQHandler -* Description : This function handles USB Low Priority or CAN RX0 interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USB_LP_CAN_RX0_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : CAN_RX1_IRQHandler -* Description : This function handles CAN RX1 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void CAN_RX1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : CAN_SCE_IRQHandler -* Description : This function handles CAN SCE interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void CAN_SCE_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI9_5_IRQHandler -* Description : This function handles External lines 9 to 5 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI9_5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_BRK_IRQHandler -* Description : This function handles TIM1 Break interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_BRK_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_UP_IRQHandler -* Description : This function handles TIM1 overflow and update interrupt -* request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_UP_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_TRG_COM_IRQHandler -* Description : This function handles TIM1 Trigger and commutation interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_TRG_COM_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_CC_IRQHandler -* Description : This function handles TIM1 capture compare interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_CC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM2_IRQHandler -* Description : This function handles TIM2 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM3_IRQHandler -* Description : This function handles TIM3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM4_IRQHandler -* Description : This function handles TIM4 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C1_EV_IRQHandler -* Description : This function handles I2C1 Event interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C1_EV_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C1_ER_IRQHandler -* Description : This function handles I2C1 Error interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C1_ER_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C2_EV_IRQHandler -* Description : This function handles I2C2 Event interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C2_EV_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C2_ER_IRQHandler -* Description : This function handles I2C2 Error interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C2_ER_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SPI1_IRQHandler -* Description : This function handles SPI1 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SPI1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SPI2_IRQHandler -* Description : This function handles SPI2 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SPI2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USART1_IRQHandler -* Description : This function handles USART1 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USART1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USART2_IRQHandler -* Description : This function handles USART2 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USART2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USART3_IRQHandler -* Description : This function handles USART3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USART3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI15_10_IRQHandler -* Description : This function handles External lines 15 to 10 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI15_10_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : RTCAlarm_IRQHandler -* Description : This function handles RTC Alarm interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RTCAlarm_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USBWakeUp_IRQHandler -* Description : This function handles USB WakeUp interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USBWakeUp_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_BRK_IRQHandler -* Description : This function handles TIM8 Break interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_BRK_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_UP_IRQHandler -* Description : This function handles TIM8 overflow and update interrupt -* request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_UP_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_TRG_COM_IRQHandler -* Description : This function handles TIM8 Trigger and commutation interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_TRG_COM_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_CC_IRQHandler -* Description : This function handles TIM8 capture compare interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_CC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : ADC3_IRQHandler -* Description : This function handles ADC3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void ADC3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : FSMC_IRQHandler -* Description : This function handles FSMC global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void FSMC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SDIO_IRQHandler -* Description : This function handles SDIO global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SDIO_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM5_IRQHandler -* Description : This function handles TIM5 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SPI3_IRQHandler -* Description : This function handles SPI3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SPI3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : UART4_IRQHandler -* Description : This function handles UART4 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void UART4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : UART5_IRQHandler -* Description : This function handles UART5 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void UART5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM6_IRQHandler -* Description : This function handles TIM6 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM6_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM7_IRQHandler -* Description : This function handles TIM7 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM7_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel1_IRQHandler -* Description : This function handles DMA2 Channel 1 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel2_IRQHandler -* Description : This function handles DMA2 Channel 2 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel3_IRQHandler -* Description : This function handles DMA2 Channel 3 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel4_5_IRQHandler -* Description : This function handles DMA2 Channel 4 and DMA2 Channel 5 -* interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel4_5_IRQHandler(void) -{ -} - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/SRAM/stm32f10x_it.h b/src/stm32lib/examples/FSMC/SRAM/stm32f10x_it.h deleted file mode 100755 index e74b6cc..0000000 --- a/src/stm32lib/examples/FSMC/SRAM/stm32f10x_it.h +++ /dev/null @@ -1,100 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : stm32f10x_it.h -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : This file contains the headers of the interrupt handlers. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F10x_IT_H -#define __STM32F10x_IT_H - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_lib.h" - -/* Exported types ------------------------------------------------------------*/ -/* Exported constants --------------------------------------------------------*/ -/* Exported macro ------------------------------------------------------------*/ -/* Exported functions ------------------------------------------------------- */ - -void NMIException(void); -void HardFaultException(void); -void MemManageException(void); -void BusFaultException(void); -void UsageFaultException(void); -void DebugMonitor(void); -void SVCHandler(void); -void PendSVC(void); -void SysTickHandler(void); -void WWDG_IRQHandler(void); -void PVD_IRQHandler(void); -void TAMPER_IRQHandler(void); -void RTC_IRQHandler(void); -void FLASH_IRQHandler(void); -void RCC_IRQHandler(void); -void EXTI0_IRQHandler(void); -void EXTI1_IRQHandler(void); -void EXTI2_IRQHandler(void); -void EXTI3_IRQHandler(void); -void EXTI4_IRQHandler(void); -void DMA1_Channel1_IRQHandler(void); -void DMA1_Channel2_IRQHandler(void); -void DMA1_Channel3_IRQHandler(void); -void DMA1_Channel4_IRQHandler(void); -void DMA1_Channel5_IRQHandler(void); -void DMA1_Channel6_IRQHandler(void); -void DMA1_Channel7_IRQHandler(void); -void ADC1_2_IRQHandler(void); -void USB_HP_CAN_TX_IRQHandler(void); -void USB_LP_CAN_RX0_IRQHandler(void); -void CAN_RX1_IRQHandler(void); -void CAN_SCE_IRQHandler(void); -void EXTI9_5_IRQHandler(void); -void TIM1_BRK_IRQHandler(void); -void TIM1_UP_IRQHandler(void); -void TIM1_TRG_COM_IRQHandler(void); -void TIM1_CC_IRQHandler(void); -void TIM2_IRQHandler(void); -void TIM3_IRQHandler(void); -void TIM4_IRQHandler(void); -void I2C1_EV_IRQHandler(void); -void I2C1_ER_IRQHandler(void); -void I2C2_EV_IRQHandler(void); -void I2C2_ER_IRQHandler(void); -void SPI1_IRQHandler(void); -void SPI2_IRQHandler(void); -void USART1_IRQHandler(void); -void USART2_IRQHandler(void); -void USART3_IRQHandler(void); -void EXTI15_10_IRQHandler(void); -void RTCAlarm_IRQHandler(void); -void USBWakeUp_IRQHandler(void); -void TIM8_BRK_IRQHandler(void); -void TIM8_UP_IRQHandler(void); -void TIM8_TRG_COM_IRQHandler(void); -void TIM8_CC_IRQHandler(void); -void ADC3_IRQHandler(void); -void FSMC_IRQHandler(void); -void SDIO_IRQHandler(void); -void TIM5_IRQHandler(void); -void SPI3_IRQHandler(void); -void UART4_IRQHandler(void); -void UART5_IRQHandler(void); -void TIM6_IRQHandler(void); -void TIM7_IRQHandler(void); -void DMA2_Channel1_IRQHandler(void); -void DMA2_Channel2_IRQHandler(void); -void DMA2_Channel3_IRQHandler(void); -void DMA2_Channel4_5_IRQHandler(void); - -#endif /* __STM32F10x_IT_H */ - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/SRAM_DataMemory/main.c b/src/stm32lib/examples/FSMC/SRAM_DataMemory/main.c deleted file mode 100755 index 0a5a0d9..0000000 --- a/src/stm32lib/examples/FSMC/SRAM_DataMemory/main.c +++ /dev/null @@ -1,164 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : main.c -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Main program body -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_lib.h" - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ -/* Private macro -------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ -u32 Tab[1024], Index; -vu32 TabAddr, MSPValue = 0; -ErrorStatus HSEStartUpStatus; - -/* Private function prototypes -----------------------------------------------*/ -void RCC_Configuration(void); -void NVIC_Configuration(void); - -/* Private functions ---------------------------------------------------------*/ -/******************************************************************************* -* Function Name : main -* Description : Main program. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -int main(void) -{ -#ifdef DEBUG - debug(); -#endif - - /* System Clocks Configuration */ - RCC_Configuration(); - - /* NVIC Configuration */ - NVIC_Configuration(); - - - for (Index = 0; Index <1024 ; Index++) - { - Tab[Index] =Index; - } - - TabAddr = (u32)Tab; /* should be 0x680000xx */ - - /* Get main stack pointer value */ - MSPValue = __MRS_MSP(); /* should be 0x2000xxxx */ - - /* Infinite loop */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : RCC_Configuration -* Description : Configures the different system clocks. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RCC_Configuration(void) -{ - /* RCC system reset(for debug purpose) */ - RCC_DeInit(); - - /* Enable HSE */ - RCC_HSEConfig(RCC_HSE_ON); - - /* Wait till HSE is ready */ - HSEStartUpStatus = RCC_WaitForHSEStartUp(); - - if(HSEStartUpStatus == SUCCESS) - { - /* Enable Prefetch Buffer */ - FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable); - - /* Flash 2 wait state */ - FLASH_SetLatency(FLASH_Latency_2); - - /* HCLK = SYSCLK */ - RCC_HCLKConfig(RCC_SYSCLK_Div1); - - /* PCLK2 = HCLK */ - RCC_PCLK2Config(RCC_HCLK_Div1); - - /* PCLK1 = HCLK/2 */ - RCC_PCLK1Config(RCC_HCLK_Div2); - - /* PLLCLK = 8MHz * 9 = 72 MHz */ - RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_9); - - /* Enable PLL */ - RCC_PLLCmd(ENABLE); - - /* Wait till PLL is ready */ - while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET) - { - } - - /* Select PLL as system clock source */ - RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); - - /* Wait till PLL is used as system clock source */ - while(RCC_GetSYSCLKSource() != 0x08) - { - } - } -} - -/******************************************************************************* -* Function Name : NVIC_Configuration -* Description : Configures Vector Table base location. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void NVIC_Configuration(void) -{ -#ifdef VECT_TAB_RAM - /* Set the Vector Table base location at 0x20000000 */ - NVIC_SetVectorTable(NVIC_VectTab_RAM, 0x0); -#else /* VECT_TAB_FLASH */ - /* Set the Vector Table base location at 0x08000000 */ - NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x0); -#endif -} - -#ifdef DEBUG -/******************************************************************************* -* Function Name : assert_failed -* Description : Reports the name of the source file and the source line number -* where the assert_param error has occurred. -* Input : - file: pointer to the source file name -* - line: assert_param error line source number -* Output : None -* Return : None -*******************************************************************************/ -void assert_failed(u8* file, u32 line) -{ - /* User can add his own implementation to report the file name and line number, - ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */ - - /* Infinite loop */ - while (1) - { - } -} -#endif - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/SRAM_DataMemory/readme.txt b/src/stm32lib/examples/FSMC/SRAM_DataMemory/readme.txt deleted file mode 100755 index 2048691..0000000 --- a/src/stm32lib/examples/FSMC/SRAM_DataMemory/readme.txt +++ /dev/null @@ -1,76 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : readme.txt -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Description of the FSMC SRAM_DataMemory Example. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -Example description -=================== -This example shows how to use the external SRAM mounted on STM3210E-EVAL board as -program data memory and internal SRAM for Stack. - - -Directory contents -================== -stm32f10x_conf.h Library Configuration file -stm32f10x_it.c Interrupt handlers -stm32f10x_it.h Header for stm32f10x_it.c -main.c Main program -stm32f10x_vector.s STM32F10x vector table for RVMDK toolchain. - - -Hardware environment -==================== -This example runs on STMicroelectronics STM3210E-EVAL evaluation board. - - -How to use it -============= -In order to make the program work, you must do the following: -- Create a project and setup all your toolchain's start-up files: - + RVMDK - - in Project->Options->Target window, select 'RAM1'and enter 0x68000000 as - start address with size of 0x100000 (IRAM1 must be un-checked) - - use the "stm32f10x_vector.s" provided within this example directory - - + EWARM4 - - use "lnkarm_flash_extsram.xcl" as linker file - - uncomment "#define DATA_IN_ExtSRAM " in the "stm32f10x_vector.c" file - - + EWARM5 - - use "stm32f10x_flash_extsram.icf" as linker file - - uncomment "#define DATA_IN_ExtSRAM " in the "stm32f10x_vector.c" file - - + RIDE - - In the Application options -> script menu, set "Use Default Script File" - to "No" and use "stm32f10x_flash_extsram.ld" as Script File. - - uncomment "#define DATA_IN_ExtSRAM " in the "stm32f10x_vector.c" file - - + HiTOP - - in project->settings->project->tool settings->linker, use "linkextsram" - as linker file. With this linker, the external SRAM is used for both - program data and Stack. - - in cstart_thum2.asm file, change "DATA_IN_ExtSRAM .equ 0" - by "DATA_IN_ExtSRAM .equ 1" - -- Compile the directory content files and required Library files: - + stm32f10x_lib.c - + stm32f10x_gpio.c - + stm32f10x_rcc.c - + stm32f10x_nvic.c - + stm32f10x_flash.c - + stm32f10x_fsmc.c - -- Link all compiled files and load your image into target memory -- Run the example - -******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****** diff --git a/src/stm32lib/examples/FSMC/SRAM_DataMemory/stm32f10x_conf.h b/src/stm32lib/examples/FSMC/SRAM_DataMemory/stm32f10x_conf.h deleted file mode 100755 index 48e488f..0000000 --- a/src/stm32lib/examples/FSMC/SRAM_DataMemory/stm32f10x_conf.h +++ /dev/null @@ -1,170 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : stm32f10x_conf.h -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Library configuration file. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F10x_CONF_H -#define __STM32F10x_CONF_H - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_type.h" - -/* Exported types ------------------------------------------------------------*/ -/* Exported constants --------------------------------------------------------*/ -/* Uncomment the line below to compile the library in DEBUG mode, this will expanse - the "assert_param" macro in the firmware library code (see "Exported macro" - section below) */ -/*#define DEBUG 1*/ - -/* Comment the line below to disable the specific peripheral inclusion */ -/************************************* ADC ************************************/ -//#define _ADC -//#define _ADC1 -//#define _ADC2 -//#define _ADC3 - -/************************************* BKP ************************************/ -//#define _BKP - -/************************************* CAN ************************************/ -//#define _CAN - -/************************************* CRC ************************************/ -//#define _CRC - -/************************************* DAC ************************************/ -//#define _DAC - -/************************************* DBGMCU *********************************/ -//#define _DBGMCU - -/************************************* DMA ************************************/ -//#define _DMA -//#define _DMA1_Channel1 -//#define _DMA1_Channel2 -//#define _DMA1_Channel3 -//#define _DMA1_Channel4 -//#define _DMA1_Channel5 -//#define _DMA1_Channel6 -//#define _DMA1_Channel7 -//#define _DMA2_Channel1 -//#define _DMA2_Channel2 -//#define _DMA2_Channel3 -//#define _DMA2_Channel4 -//#define _DMA2_Channel5 - -/************************************* EXTI ***********************************/ -//#define _EXTI - -/************************************* FLASH and Option Bytes *****************/ -#define _FLASH -/* Uncomment the line below to enable FLASH program/erase/protections functions, - otherwise only FLASH configuration (latency, prefetch, half cycle) functions - are enabled */ -/* #define _FLASH_PROG */ - -/************************************* FSMC ***********************************/ -#define _FSMC - -/************************************* GPIO ***********************************/ -#define _GPIO -//#define _GPIOA -//#define _GPIOB -//#define _GPIOC -#define _GPIOD -#define _GPIOE -#define _GPIOF -#define _GPIOG -#define _AFIO - -/************************************* I2C ************************************/ -//#define _I2C -//#define _I2C1 -//#define _I2C2 - -/************************************* IWDG ***********************************/ -//#define _IWDG - -/************************************* NVIC ***********************************/ -#define _NVIC - -/************************************* PWR ************************************/ -//#define _PWR - -/************************************* RCC ************************************/ -#define _RCC - -/************************************* RTC ************************************/ -//#define _RTC - -/************************************* SDIO ***********************************/ -//#define _SDIO - -/************************************* SPI ************************************/ -//#define _SPI -//#define _SPI1 -//#define _SPI2 -//#define _SPI3 - -/************************************* SysTick ********************************/ -//#define _SysTick - -/************************************* TIM ************************************/ -//#define _TIM -//#define _TIM1 -//#define _TIM2 -//#define _TIM3 -//#define _TIM4 -//#define _TIM5 -//#define _TIM6 -//#define _TIM7 -//#define _TIM8 - -/************************************* USART **********************************/ -//#define _USART -//#define _USART1 -//#define _USART2 -//#define _USART3 -//#define _UART4 -//#define _UART5 - -/************************************* WWDG ***********************************/ -//#define _WWDG - -/* In the following line adjust the value of External High Speed oscillator (HSE) - used in your application */ -#define HSE_Value ((u32)8000000) /* Value of the External oscillator in Hz*/ - -/* Exported macro ------------------------------------------------------------*/ -#ifdef DEBUG -/******************************************************************************* -* Macro Name : assert_param -* Description : The assert_param macro is used for function's parameters check. -* It is used only if the library is compiled in DEBUG mode. -* Input : - expr: If expr is false, it calls assert_failed function -* which reports the name of the source file and the source -* line number of the call that failed. -* If expr is true, it returns no value. -* Return : None -*******************************************************************************/ - #define assert_param(expr) ((expr) ? (void)0 : assert_failed((u8 *)__FILE__, __LINE__)) -/* Exported functions ------------------------------------------------------- */ - void assert_failed(u8* file, u32 line); -#else - #define assert_param(expr) ((void)0) -#endif /* DEBUG */ - -#endif /* __STM32F10x_CONF_H */ - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/SRAM_DataMemory/stm32f10x_it.c b/src/stm32lib/examples/FSMC/SRAM_DataMemory/stm32f10x_it.c deleted file mode 100755 index e27c1e7..0000000 --- a/src/stm32lib/examples/FSMC/SRAM_DataMemory/stm32f10x_it.c +++ /dev/null @@ -1,810 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : stm32f10x_it.c -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : Main Interrupt Service Routines. -* This file provides template for all exceptions handler -* and peripherals interrupt service routine. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_it.h" - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ -/* Private macro -------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ -/* Private function prototypes -----------------------------------------------*/ -/* Private functions ---------------------------------------------------------*/ - -/******************************************************************************* -* Function Name : NMIException -* Description : This function handles NMI exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void NMIException(void) -{ -} - -/******************************************************************************* -* Function Name : HardFaultException -* Description : This function handles Hard Fault exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void HardFaultException(void) -{ - /* Go to infinite loop when Hard Fault exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : MemManageException -* Description : This function handles Memory Manage exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void MemManageException(void) -{ - /* Go to infinite loop when Memory Manage exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : BusFaultException -* Description : This function handles Bus Fault exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void BusFaultException(void) -{ - /* Go to infinite loop when Bus Fault exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : UsageFaultException -* Description : This function handles Usage Fault exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void UsageFaultException(void) -{ - /* Go to infinite loop when Usage Fault exception occurs */ - while (1) - { - } -} - -/******************************************************************************* -* Function Name : DebugMonitor -* Description : This function handles Debug Monitor exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DebugMonitor(void) -{ -} - -/******************************************************************************* -* Function Name : SVCHandler -* Description : This function handles SVCall exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SVCHandler(void) -{ -} - -/******************************************************************************* -* Function Name : PendSVC -* Description : This function handles PendSVC exception. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void PendSVC(void) -{ -} - -/******************************************************************************* -* Function Name : SysTickHandler -* Description : This function handles SysTick Handler. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SysTickHandler(void) -{ -} - -/******************************************************************************* -* Function Name : WWDG_IRQHandler -* Description : This function handles WWDG interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void WWDG_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : PVD_IRQHandler -* Description : This function handles PVD interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void PVD_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TAMPER_IRQHandler -* Description : This function handles Tamper interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TAMPER_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : RTC_IRQHandler -* Description : This function handles RTC global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RTC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : FLASH_IRQHandler -* Description : This function handles Flash interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void FLASH_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : RCC_IRQHandler -* Description : This function handles RCC interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RCC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI0_IRQHandler -* Description : This function handles External interrupt Line 0 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI0_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI1_IRQHandler -* Description : This function handles External interrupt Line 1 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI2_IRQHandler -* Description : This function handles External interrupt Line 2 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI3_IRQHandler -* Description : This function handles External interrupt Line 3 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI4_IRQHandler -* Description : This function handles External interrupt Line 4 request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel1_IRQHandler -* Description : This function handles DMA1 Channel 1 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel2_IRQHandler -* Description : This function handles DMA1 Channel 2 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel3_IRQHandler -* Description : This function handles DMA1 Channel 3 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel4_IRQHandler -* Description : This function handles DMA1 Channel 4 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel5_IRQHandler -* Description : This function handles DMA1 Channel 5 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel6_IRQHandler -* Description : This function handles DMA1 Channel 6 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel6_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA1_Channel7_IRQHandler -* Description : This function handles DMA1 Channel 7 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA1_Channel7_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : ADC1_2_IRQHandler -* Description : This function handles ADC1 and ADC2 global interrupts requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void ADC1_2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USB_HP_CAN_TX_IRQHandler -* Description : This function handles USB High Priority or CAN TX interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USB_HP_CAN_TX_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USB_LP_CAN_RX0_IRQHandler -* Description : This function handles USB Low Priority or CAN RX0 interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USB_LP_CAN_RX0_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : CAN_RX1_IRQHandler -* Description : This function handles CAN RX1 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void CAN_RX1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : CAN_SCE_IRQHandler -* Description : This function handles CAN SCE interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void CAN_SCE_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI9_5_IRQHandler -* Description : This function handles External lines 9 to 5 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI9_5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_BRK_IRQHandler -* Description : This function handles TIM1 Break interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_BRK_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_UP_IRQHandler -* Description : This function handles TIM1 overflow and update interrupt -* request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_UP_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_TRG_COM_IRQHandler -* Description : This function handles TIM1 Trigger and commutation interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_TRG_COM_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM1_CC_IRQHandler -* Description : This function handles TIM1 capture compare interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM1_CC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM2_IRQHandler -* Description : This function handles TIM2 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM3_IRQHandler -* Description : This function handles TIM3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM4_IRQHandler -* Description : This function handles TIM4 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C1_EV_IRQHandler -* Description : This function handles I2C1 Event interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C1_EV_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C1_ER_IRQHandler -* Description : This function handles I2C1 Error interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C1_ER_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C2_EV_IRQHandler -* Description : This function handles I2C2 Event interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C2_EV_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : I2C2_ER_IRQHandler -* Description : This function handles I2C2 Error interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void I2C2_ER_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SPI1_IRQHandler -* Description : This function handles SPI1 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SPI1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SPI2_IRQHandler -* Description : This function handles SPI2 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SPI2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USART1_IRQHandler -* Description : This function handles USART1 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USART1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USART2_IRQHandler -* Description : This function handles USART2 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USART2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USART3_IRQHandler -* Description : This function handles USART3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USART3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : EXTI15_10_IRQHandler -* Description : This function handles External lines 15 to 10 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void EXTI15_10_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : RTCAlarm_IRQHandler -* Description : This function handles RTC Alarm interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void RTCAlarm_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : USBWakeUp_IRQHandler -* Description : This function handles USB WakeUp interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void USBWakeUp_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_BRK_IRQHandler -* Description : This function handles TIM8 Break interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_BRK_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_UP_IRQHandler -* Description : This function handles TIM8 overflow and update interrupt -* request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_UP_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_TRG_COM_IRQHandler -* Description : This function handles TIM8 Trigger and commutation interrupts -* requests. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_TRG_COM_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM8_CC_IRQHandler -* Description : This function handles TIM8 capture compare interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM8_CC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : ADC3_IRQHandler -* Description : This function handles ADC3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void ADC3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : FSMC_IRQHandler -* Description : This function handles FSMC global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void FSMC_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SDIO_IRQHandler -* Description : This function handles SDIO global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SDIO_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM5_IRQHandler -* Description : This function handles TIM5 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : SPI3_IRQHandler -* Description : This function handles SPI3 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void SPI3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : UART4_IRQHandler -* Description : This function handles UART4 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void UART4_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : UART5_IRQHandler -* Description : This function handles UART5 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void UART5_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM6_IRQHandler -* Description : This function handles TIM6 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM6_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : TIM7_IRQHandler -* Description : This function handles TIM7 global interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void TIM7_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel1_IRQHandler -* Description : This function handles DMA2 Channel 1 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel1_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel2_IRQHandler -* Description : This function handles DMA2 Channel 2 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel2_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel3_IRQHandler -* Description : This function handles DMA2 Channel 3 interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel3_IRQHandler(void) -{ -} - -/******************************************************************************* -* Function Name : DMA2_Channel4_5_IRQHandler -* Description : This function handles DMA2 Channel 4 and DMA2 Channel 5 -* interrupt request. -* Input : None -* Output : None -* Return : None -*******************************************************************************/ -void DMA2_Channel4_5_IRQHandler(void) -{ -} - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/SRAM_DataMemory/stm32f10x_it.h b/src/stm32lib/examples/FSMC/SRAM_DataMemory/stm32f10x_it.h deleted file mode 100755 index e74b6cc..0000000 --- a/src/stm32lib/examples/FSMC/SRAM_DataMemory/stm32f10x_it.h +++ /dev/null @@ -1,100 +0,0 @@ -/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -* File Name : stm32f10x_it.h -* Author : MCD Application Team -* Version : V2.0.1 -* Date : 06/13/2008 -* Description : This file contains the headers of the interrupt handlers. -******************************************************************************** -* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -*******************************************************************************/ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F10x_IT_H -#define __STM32F10x_IT_H - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f10x_lib.h" - -/* Exported types ------------------------------------------------------------*/ -/* Exported constants --------------------------------------------------------*/ -/* Exported macro ------------------------------------------------------------*/ -/* Exported functions ------------------------------------------------------- */ - -void NMIException(void); -void HardFaultException(void); -void MemManageException(void); -void BusFaultException(void); -void UsageFaultException(void); -void DebugMonitor(void); -void SVCHandler(void); -void PendSVC(void); -void SysTickHandler(void); -void WWDG_IRQHandler(void); -void PVD_IRQHandler(void); -void TAMPER_IRQHandler(void); -void RTC_IRQHandler(void); -void FLASH_IRQHandler(void); -void RCC_IRQHandler(void); -void EXTI0_IRQHandler(void); -void EXTI1_IRQHandler(void); -void EXTI2_IRQHandler(void); -void EXTI3_IRQHandler(void); -void EXTI4_IRQHandler(void); -void DMA1_Channel1_IRQHandler(void); -void DMA1_Channel2_IRQHandler(void); -void DMA1_Channel3_IRQHandler(void); -void DMA1_Channel4_IRQHandler(void); -void DMA1_Channel5_IRQHandler(void); -void DMA1_Channel6_IRQHandler(void); -void DMA1_Channel7_IRQHandler(void); -void ADC1_2_IRQHandler(void); -void USB_HP_CAN_TX_IRQHandler(void); -void USB_LP_CAN_RX0_IRQHandler(void); -void CAN_RX1_IRQHandler(void); -void CAN_SCE_IRQHandler(void); -void EXTI9_5_IRQHandler(void); -void TIM1_BRK_IRQHandler(void); -void TIM1_UP_IRQHandler(void); -void TIM1_TRG_COM_IRQHandler(void); -void TIM1_CC_IRQHandler(void); -void TIM2_IRQHandler(void); -void TIM3_IRQHandler(void); -void TIM4_IRQHandler(void); -void I2C1_EV_IRQHandler(void); -void I2C1_ER_IRQHandler(void); -void I2C2_EV_IRQHandler(void); -void I2C2_ER_IRQHandler(void); -void SPI1_IRQHandler(void); -void SPI2_IRQHandler(void); -void USART1_IRQHandler(void); -void USART2_IRQHandler(void); -void USART3_IRQHandler(void); -void EXTI15_10_IRQHandler(void); -void RTCAlarm_IRQHandler(void); -void USBWakeUp_IRQHandler(void); -void TIM8_BRK_IRQHandler(void); -void TIM8_UP_IRQHandler(void); -void TIM8_TRG_COM_IRQHandler(void); -void TIM8_CC_IRQHandler(void); -void ADC3_IRQHandler(void); -void FSMC_IRQHandler(void); -void SDIO_IRQHandler(void); -void TIM5_IRQHandler(void); -void SPI3_IRQHandler(void); -void UART4_IRQHandler(void); -void UART5_IRQHandler(void); -void TIM6_IRQHandler(void); -void TIM7_IRQHandler(void); -void DMA2_Channel1_IRQHandler(void); -void DMA2_Channel2_IRQHandler(void); -void DMA2_Channel3_IRQHandler(void); -void DMA2_Channel4_5_IRQHandler(void); - -#endif /* __STM32F10x_IT_H */ - -/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ diff --git a/src/stm32lib/examples/FSMC/SRAM_DataMemory/stm32f10x_vector.s b/src/stm32lib/examples/FSMC/SRAM_DataMemory/stm32f10x_vector.s deleted file mode 100755 index 5323cfa..0000000 --- a/src/stm32lib/examples/FSMC/SRAM_DataMemory/stm32f10x_vector.s +++ /dev/null @@ -1,329 +0,0 @@ -;******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** -;* File Name : stm32f10x_vector.s -;* Author : MCD Application Team -;* Version : V2.0.1 -;* Date : 06/13/2008 -;* Description : STM32F10x vector table for RVMDK toolchain. -;* This module performs: -;* - Set the initial SP -;* - Set the initial PC == Reset_Handler -;* - Set the vector table entries with the exceptions ISR address -;* - Configure external SRAM mounted on STM3210E-EVAL board -;* to be used as data memory (optional, to be enabled by user) -;* - Branches to __main in the C library (which eventually -;* calls main()). -;* After Reset the CortexM3 processor is in Thread mode, -;* priority is Privileged, and the Stack is set to Main. -;* <<< Use Configuration Wizard in Context Menu >>> -;******************************************************************************* -; THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -; WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -; AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -; INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -; CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -; INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -;******************************************************************************* - -; If you need to use external SRAM mounted on STM3210E-EVAL board as data memory, -; change the following define value to '1' (or choose ENABLE in Configuration Wizard window) -;// External SRAM Configuration <0=> DISABLE <1=> ENABLE -DATA_IN_ExtSRAM EQU 1 - - -; Amount of memory (in bytes) allocated for Stack -; Tailor this value to your application needs -;// Stack Configuration -;// Stack Size (in Bytes) <0x0-0xFFFFFFFF:8> -;// -Stack_Size EQU 0x00000400 - - AREA STACK, NOINIT, READWRITE, ALIGN=3 -Stack_Mem SPACE Stack_Size - -;__initial_sp -; If you need to use external SRAM mounted on STM3210E-EVAL board as data memory -; and internal SRAM for Stack, uncomment the following line and comment the line above -__initial_sp EQU 0x20000000 + Stack_Size ; "Use MicroLIB" must be checked in - ; the Project->Options->Target window - -; Amount of memory (in bytes) allocated for Heap -; Tailor this value to your application needs -;// Heap Configuration -;// Heap Size (in Bytes) <0x0-0xFFFFFFFF:8> -;// - -Heap_Size EQU 0x00000400 - - AREA HEAP, NOINIT, READWRITE, ALIGN=3 -__heap_base -Heap_Mem SPACE Heap_Size -__heap_limit - - - THUMB - PRESERVE8 - - ; Import exceptions handlers - IMPORT NMIException - IMPORT HardFaultException - IMPORT MemManageException - IMPORT BusFaultException - IMPORT UsageFaultException - IMPORT SVCHandler - IMPORT DebugMonitor - IMPORT PendSVC - IMPORT SysTickHandler - IMPORT WWDG_IRQHandler - IMPORT PVD_IRQHandler - IMPORT TAMPER_IRQHandler - IMPORT RTC_IRQHandler - IMPORT FLASH_IRQHandler - IMPORT RCC_IRQHandler - IMPORT EXTI0_IRQHandler - IMPORT EXTI1_IRQHandler - IMPORT EXTI2_IRQHandler - IMPORT EXTI3_IRQHandler - IMPORT EXTI4_IRQHandler - IMPORT DMA1_Channel1_IRQHandler - IMPORT DMA1_Channel2_IRQHandler - IMPORT DMA1_Channel3_IRQHandler - IMPORT DMA1_Channel4_IRQHandler - IMPORT DMA1_Channel5_IRQHandler - IMPORT DMA1_Channel6_IRQHandler - IMPORT DMA1_Channel7_IRQHandler - IMPORT ADC1_2_IRQHandler - IMPORT USB_HP_CAN_TX_IRQHandler - IMPORT USB_LP_CAN_RX0_IRQHandler - IMPORT CAN_RX1_IRQHandler - IMPORT CAN_SCE_IRQHandler - IMPORT EXTI9_5_IRQHandler - IMPORT TIM1_BRK_IRQHandler - IMPORT TIM1_UP_IRQHandler - IMPORT TIM1_TRG_COM_IRQHandler - IMPORT TIM1_CC_IRQHandler - IMPORT TIM2_IRQHandler - IMPORT TIM3_IRQHandler - IMPORT TIM4_IRQHandler - IMPORT I2C1_EV_IRQHandler - IMPORT I2C1_ER_IRQHandler - IMPORT I2C2_EV_IRQHandler - IMPORT I2C2_ER_IRQHandler - IMPORT SPI1_IRQHandler - IMPORT SPI2_IRQHandler - IMPORT USART1_IRQHandler - IMPORT USART2_IRQHandler - IMPORT USART3_IRQHandler - IMPORT EXTI15_10_IRQHandler - IMPORT RTCAlarm_IRQHandler - IMPORT USBWakeUp_IRQHandler - IMPORT TIM8_BRK_IRQHandler - IMPORT TIM8_UP_IRQHandler - IMPORT TIM8_TRG_COM_IRQHandler - IMPORT TIM8_CC_IRQHandler - IMPORT ADC3_IRQHandler - IMPORT FSMC_IRQHandler - IMPORT SDIO_IRQHandler - IMPORT TIM5_IRQHandler - IMPORT SPI3_IRQHandler - IMPORT UART4_IRQHandler - IMPORT UART5_IRQHandler - IMPORT TIM6_IRQHandler - IMPORT TIM7_IRQHandler - IMPORT DMA2_Channel1_IRQHandler - IMPORT DMA2_Channel2_IRQHandler - IMPORT DMA2_Channel3_IRQHandler - IMPORT DMA2_Channel4_5_IRQHandler - -;******************************************************************************* -; Fill-up the Vector Table entries with the exceptions ISR address -;******************************************************************************* - AREA RESET, DATA, READONLY - EXPORT __Vectors - -__Vectors DCD __initial_sp ; Top of Stack - DCD Reset_Handler - DCD NMIException - DCD HardFaultException - DCD MemManageException - DCD BusFaultException - DCD UsageFaultException - DCD 0 ; Reserved - DCD 0 ; Reserved - DCD 0 ; Reserved - DCD 0 ; Reserved - DCD SVCHandler - DCD DebugMonitor - DCD 0 ; Reserved - DCD PendSVC - DCD SysTickHandler - DCD WWDG_IRQHandler - DCD PVD_IRQHandler - DCD TAMPER_IRQHandler - DCD RTC_IRQHandler - DCD FLASH_IRQHandler - DCD RCC_IRQHandler - DCD EXTI0_IRQHandler - DCD EXTI1_IRQHandler - DCD EXTI2_IRQHandler - DCD EXTI3_IRQHandler - DCD EXTI4_IRQHandler - DCD DMA1_Channel1_IRQHandler - DCD DMA1_Channel2_IRQHandler - DCD DMA1_Channel3_IRQHandler - DCD DMA1_Channel4_IRQHandler - DCD DMA1_Channel5_IRQHandler - DCD DMA1_Channel6_IRQHandler - DCD DMA1_Channel7_IRQHandler - DCD ADC1_2_IRQHandler - DCD USB_HP_CAN_TX_IRQHandler - DCD USB_LP_CAN_RX0_IRQHandler - DCD CAN_RX1_IRQHandler - DCD CAN_SCE_IRQHandler - DCD EXTI9_5_IRQHandler - DCD TIM1_BRK_IRQHandler - DCD TIM1_UP_IRQHandler - DCD TIM1_TRG_COM_IRQHandler - DCD TIM1_CC_IRQHandler - DCD TIM2_IRQHandler - DCD TIM3_IRQHandler - DCD TIM4_IRQHandler - DCD I2C1_EV_IRQHandler - DCD I2C1_ER_IRQHandler - DCD I2C2_EV_IRQHandler - DCD I2C2_ER_IRQHandler - DCD SPI1_IRQHandler - DCD SPI2_IRQHandler - DCD USART1_IRQHandler - DCD USART2_IRQHandler - DCD USART3_IRQHandler - DCD EXTI15_10_IRQHandler - DCD RTCAlarm_IRQHandler - DCD USBWakeUp_IRQHandler - DCD TIM8_BRK_IRQHandler - DCD TIM8_UP_IRQHandler - DCD TIM8_TRG_COM_IRQHandler - DCD TIM8_CC_IRQHandler - DCD ADC3_IRQHandler - DCD FSMC_IRQHandler - DCD SDIO_IRQHandler - DCD TIM5_IRQHandler - DCD SPI3_IRQHandler - DCD UART4_IRQHandler - DCD UART5_IRQHandler - DCD TIM6_IRQHandler - DCD TIM7_IRQHandler - DCD DMA2_Channel1_IRQHandler - DCD DMA2_Channel2_IRQHandler - DCD DMA2_Channel3_IRQHandler - DCD DMA2_Channel4_5_IRQHandler - - AREA |.text|, CODE, READONLY - -; Reset handler routine -Reset_Handler PROC - EXPORT Reset_Handler - - IF DATA_IN_ExtSRAM == 1 -; FSMC Bank1 NOR/SRAM3 is used for the STM3210E-EVAL, if another Bank is -; required, then adjust the Register Addresses - - -; Enable FSMC clock - LDR R0,= 0x00000114 - LDR R1,= 0x40021014 - STR R0,[R1] - -; Enable GPIOD, GPIOE, GPIOF and GPIOG clocks - LDR R0,= 0x000001E0 - LDR R1,= 0x40021018 - STR R0,[R1] - -; SRAM Data lines, NOE and NWE configuration -; SRAM Address lines configuration -; NOE and NWE configuration -; NE3 configuration -; NBL0, NBL1 configuration - - LDR R0,= 0x44BB44BB - LDR R1,= 0x40011400 - STR R0,[R1] - - LDR R0,= 0xBBBBBBBB - LDR R1,= 0x40011404 - STR R0,[R1] - - LDR R0,= 0xB44444BB - LDR R1,= 0x40011800 - STR R0,[R1] - - LDR R0,= 0xBBBBBBBB - LDR R1,= 0x40011804 - STR R0,[R1] - - LDR R0,= 0x44BBBBBB - LDR R1,= 0x40011C00 - STR R0,[R1] - - LDR R0,= 0xBBBB4444 - LDR R1,= 0x40011C04 - STR R0,[R1] - - LDR R0,= 0x44BBBBBB - LDR R1,= 0x40012000 - STR R0,[R1] - - LDR R0,= 0x44444B44 - LDR R1,= 0x40012004 - STR R0,[R1] - -; FSMC Configuration -; Enable FSMC Bank1_SRAM Bank - - LDR R0,= 0x00001011 - LDR R1,= 0xA0000010 - STR R0,[R1] - - LDR R0,= 0x00000200 - LDR R1,= 0xA0000014 - STR R0,[R1] - - - ENDIF - - - IMPORT __main - LDR R0, =__main - BX R0 - ENDP - - ALIGN - -;******************************************************************************* -; User Stack and Heap initialization -;******************************************************************************* - IF :DEF:__MICROLIB - - EXPORT __initial_sp - EXPORT __heap_base - EXPORT __heap_limit - - ELSE - - IMPORT __use_two_region_memory - EXPORT __user_initial_stackheap - -__user_initial_stackheap - - LDR R0, = Heap_Mem - LDR R1, =(Stack_Mem + Stack_Size) - LDR R2, = (Heap_Mem + Heap_Size) - LDR R3, = Stack_Mem - BX LR - - ALIGN - - ENDIF - - END - -;******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE***** -- cgit v1.2.3