mirror of
				https://github.com/ayabusa/Numworks-zeta-os.git
				synced 2025-11-04 10:07:15 +00:00 
			
		
		
		
	added a button/led script
This commit is contained in:
		
							
								
								
									
										3
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										3
									
								
								Makefile
									
									
									
									
									
								
							@@ -50,6 +50,9 @@ VECT_TBL = $(SRC_DIR)/vector_table.S
 | 
				
			|||||||
AS_SRC   = $(SRC_DIR)/core.S
 | 
					AS_SRC   = $(SRC_DIR)/core.S
 | 
				
			||||||
C_SRC    = $(SRC_DIR)/main.c
 | 
					C_SRC    = $(SRC_DIR)/main.c
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					INCLUDE  =  -I./
 | 
				
			||||||
 | 
					INCLUDE  += -I./device
 | 
				
			||||||
 | 
					
 | 
				
			||||||
OBJS =  $(BUILD_DIR)/$(notdir $(VECT_TBL:.S=.o))
 | 
					OBJS =  $(BUILD_DIR)/$(notdir $(VECT_TBL:.S=.o))
 | 
				
			||||||
OBJS += $(BUILD_DIR)/$(notdir $(AS_SRC:.S=.o))
 | 
					OBJS += $(BUILD_DIR)/$(notdir $(AS_SRC:.S=.o))
 | 
				
			||||||
OBJS += $(BUILD_DIR)/$(notdir $(C_SRC:.c=.o))
 | 
					OBJS += $(BUILD_DIR)/$(notdir $(C_SRC:.c=.o))
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										
											BIN
										
									
								
								build/main.bin
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								build/main.bin
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								build/main.elf
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								build/main.elf
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								build/main.o
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								build/main.o
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										1373
									
								
								src/device/cmsis_gcc.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1373
									
								
								src/device/cmsis_gcc.h
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										1937
									
								
								src/device/core_cm4.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1937
									
								
								src/device/core_cm4.h
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										87
									
								
								src/device/core_cmFunc.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										87
									
								
								src/device/core_cmFunc.h
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,87 @@
 | 
				
			|||||||
 | 
					/**************************************************************************//**
 | 
				
			||||||
 | 
					 * @file     core_cmFunc.h
 | 
				
			||||||
 | 
					 * @brief    CMSIS Cortex-M Core Function Access Header File
 | 
				
			||||||
 | 
					 * @version  V4.30
 | 
				
			||||||
 | 
					 * @date     20. October 2015
 | 
				
			||||||
 | 
					 ******************************************************************************/
 | 
				
			||||||
 | 
					/* Copyright (c) 2009 - 2015 ARM LIMITED
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   All rights reserved.
 | 
				
			||||||
 | 
					   Redistribution and use in source and binary forms, with or without
 | 
				
			||||||
 | 
					   modification, are permitted provided that the following conditions are met:
 | 
				
			||||||
 | 
					   - Redistributions of source code must retain the above copyright
 | 
				
			||||||
 | 
					     notice, this list of conditions and the following disclaimer.
 | 
				
			||||||
 | 
					   - Redistributions in binary form must reproduce the above copyright
 | 
				
			||||||
 | 
					     notice, this list of conditions and the following disclaimer in the
 | 
				
			||||||
 | 
					     documentation and/or other materials provided with the distribution.
 | 
				
			||||||
 | 
					   - Neither the name of ARM nor the names of its contributors may be used
 | 
				
			||||||
 | 
					     to endorse or promote products derived from this software without
 | 
				
			||||||
 | 
					     specific prior written permission.
 | 
				
			||||||
 | 
					   *
 | 
				
			||||||
 | 
					   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 | 
				
			||||||
 | 
					   AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
				
			||||||
 | 
					   IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
				
			||||||
 | 
					   ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE
 | 
				
			||||||
 | 
					   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 | 
				
			||||||
 | 
					   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 | 
				
			||||||
 | 
					   SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 | 
				
			||||||
 | 
					   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 | 
				
			||||||
 | 
					   CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 | 
				
			||||||
 | 
					   ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 | 
				
			||||||
 | 
					   POSSIBILITY OF SUCH DAMAGE.
 | 
				
			||||||
 | 
					   ---------------------------------------------------------------------------*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#if   defined ( __ICCARM__ )
 | 
				
			||||||
 | 
					 #pragma system_include         /* treat file as system include file for MISRA check */
 | 
				
			||||||
 | 
					#elif defined(__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)
 | 
				
			||||||
 | 
					  #pragma clang system_header   /* treat file as system include file */
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#ifndef __CORE_CMFUNC_H
 | 
				
			||||||
 | 
					#define __CORE_CMFUNC_H
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* ###########################  Core Function Access  ########################### */
 | 
				
			||||||
 | 
					/** \ingroup  CMSIS_Core_FunctionInterface
 | 
				
			||||||
 | 
					    \defgroup CMSIS_Core_RegAccFunctions CMSIS Core Register Access Functions
 | 
				
			||||||
 | 
					  @{
 | 
				
			||||||
 | 
					*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*------------------ RealView Compiler -----------------*/
 | 
				
			||||||
 | 
					#if   defined ( __CC_ARM )
 | 
				
			||||||
 | 
					  #include "cmsis_armcc.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*------------------ ARM Compiler V6 -------------------*/
 | 
				
			||||||
 | 
					#elif defined(__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)
 | 
				
			||||||
 | 
					  #include "cmsis_armcc_V6.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*------------------ GNU Compiler ----------------------*/
 | 
				
			||||||
 | 
					#elif defined ( __GNUC__ )
 | 
				
			||||||
 | 
					  #include "cmsis_gcc.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*------------------ ICC Compiler ----------------------*/
 | 
				
			||||||
 | 
					#elif defined ( __ICCARM__ )
 | 
				
			||||||
 | 
					  #include <cmsis_iar.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*------------------ TI CCS Compiler -------------------*/
 | 
				
			||||||
 | 
					#elif defined ( __TMS470__ )
 | 
				
			||||||
 | 
					  #include <cmsis_ccs.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*------------------ TASKING Compiler ------------------*/
 | 
				
			||||||
 | 
					#elif defined ( __TASKING__ )
 | 
				
			||||||
 | 
					  /*
 | 
				
			||||||
 | 
					   * The CMSIS functions have been implemented as intrinsics in the compiler.
 | 
				
			||||||
 | 
					   * Please use "carm -?i" to get an up to date list of all intrinsics,
 | 
				
			||||||
 | 
					   * Including the CMSIS ones.
 | 
				
			||||||
 | 
					   */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*------------------ COSMIC Compiler -------------------*/
 | 
				
			||||||
 | 
					#elif defined ( __CSMC__ )
 | 
				
			||||||
 | 
					  #include <cmsis_csm.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*@} end of CMSIS_Core_RegAccFunctions */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#endif /* __CORE_CMFUNC_H */
 | 
				
			||||||
							
								
								
									
										87
									
								
								src/device/core_cmInstr.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										87
									
								
								src/device/core_cmInstr.h
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,87 @@
 | 
				
			|||||||
 | 
					/**************************************************************************//**
 | 
				
			||||||
 | 
					 * @file     core_cmInstr.h
 | 
				
			||||||
 | 
					 * @brief    CMSIS Cortex-M Core Instruction Access Header File
 | 
				
			||||||
 | 
					 * @version  V4.30
 | 
				
			||||||
 | 
					 * @date     20. October 2015
 | 
				
			||||||
 | 
					 ******************************************************************************/
 | 
				
			||||||
 | 
					/* Copyright (c) 2009 - 2015 ARM LIMITED
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   All rights reserved.
 | 
				
			||||||
 | 
					   Redistribution and use in source and binary forms, with or without
 | 
				
			||||||
 | 
					   modification, are permitted provided that the following conditions are met:
 | 
				
			||||||
 | 
					   - Redistributions of source code must retain the above copyright
 | 
				
			||||||
 | 
					     notice, this list of conditions and the following disclaimer.
 | 
				
			||||||
 | 
					   - Redistributions in binary form must reproduce the above copyright
 | 
				
			||||||
 | 
					     notice, this list of conditions and the following disclaimer in the
 | 
				
			||||||
 | 
					     documentation and/or other materials provided with the distribution.
 | 
				
			||||||
 | 
					   - Neither the name of ARM nor the names of its contributors may be used
 | 
				
			||||||
 | 
					     to endorse or promote products derived from this software without
 | 
				
			||||||
 | 
					     specific prior written permission.
 | 
				
			||||||
 | 
					   *
 | 
				
			||||||
 | 
					   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 | 
				
			||||||
 | 
					   AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
				
			||||||
 | 
					   IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
				
			||||||
 | 
					   ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE
 | 
				
			||||||
 | 
					   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 | 
				
			||||||
 | 
					   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 | 
				
			||||||
 | 
					   SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 | 
				
			||||||
 | 
					   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 | 
				
			||||||
 | 
					   CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 | 
				
			||||||
 | 
					   ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 | 
				
			||||||
 | 
					   POSSIBILITY OF SUCH DAMAGE.
 | 
				
			||||||
 | 
					   ---------------------------------------------------------------------------*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#if   defined ( __ICCARM__ )
 | 
				
			||||||
 | 
					 #pragma system_include         /* treat file as system include file for MISRA check */
 | 
				
			||||||
 | 
					#elif defined(__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)
 | 
				
			||||||
 | 
					  #pragma clang system_header   /* treat file as system include file */
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#ifndef __CORE_CMINSTR_H
 | 
				
			||||||
 | 
					#define __CORE_CMINSTR_H
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* ##########################  Core Instruction Access  ######################### */
 | 
				
			||||||
 | 
					/** \defgroup CMSIS_Core_InstructionInterface CMSIS Core Instruction Interface
 | 
				
			||||||
 | 
					  Access to dedicated instructions
 | 
				
			||||||
 | 
					  @{
 | 
				
			||||||
 | 
					*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*------------------ RealView Compiler -----------------*/
 | 
				
			||||||
 | 
					#if   defined ( __CC_ARM )
 | 
				
			||||||
 | 
					  #include "cmsis_armcc.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*------------------ ARM Compiler V6 -------------------*/
 | 
				
			||||||
 | 
					#elif defined(__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)
 | 
				
			||||||
 | 
					  #include "cmsis_armcc_V6.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*------------------ GNU Compiler ----------------------*/
 | 
				
			||||||
 | 
					#elif defined ( __GNUC__ )
 | 
				
			||||||
 | 
					  #include "cmsis_gcc.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*------------------ ICC Compiler ----------------------*/
 | 
				
			||||||
 | 
					#elif defined ( __ICCARM__ )
 | 
				
			||||||
 | 
					  #include <cmsis_iar.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*------------------ TI CCS Compiler -------------------*/
 | 
				
			||||||
 | 
					#elif defined ( __TMS470__ )
 | 
				
			||||||
 | 
					  #include <cmsis_ccs.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*------------------ TASKING Compiler ------------------*/
 | 
				
			||||||
 | 
					#elif defined ( __TASKING__ )
 | 
				
			||||||
 | 
					  /*
 | 
				
			||||||
 | 
					   * The CMSIS functions have been implemented as intrinsics in the compiler.
 | 
				
			||||||
 | 
					   * Please use "carm -?i" to get an up to date list of all intrinsics,
 | 
				
			||||||
 | 
					   * Including the CMSIS ones.
 | 
				
			||||||
 | 
					   */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*------------------ COSMIC Compiler -------------------*/
 | 
				
			||||||
 | 
					#elif defined ( __CSMC__ )
 | 
				
			||||||
 | 
					  #include <cmsis_csm.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*@}*/ /* end of group CMSIS_Core_InstructionInterface */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#endif /* __CORE_CMINSTR_H */
 | 
				
			||||||
							
								
								
									
										96
									
								
								src/device/core_cmSimd.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										96
									
								
								src/device/core_cmSimd.h
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,96 @@
 | 
				
			|||||||
 | 
					/**************************************************************************//**
 | 
				
			||||||
 | 
					 * @file     core_cmSimd.h
 | 
				
			||||||
 | 
					 * @brief    CMSIS Cortex-M SIMD Header File
 | 
				
			||||||
 | 
					 * @version  V4.30
 | 
				
			||||||
 | 
					 * @date     20. October 2015
 | 
				
			||||||
 | 
					 ******************************************************************************/
 | 
				
			||||||
 | 
					/* Copyright (c) 2009 - 2015 ARM LIMITED
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   All rights reserved.
 | 
				
			||||||
 | 
					   Redistribution and use in source and binary forms, with or without
 | 
				
			||||||
 | 
					   modification, are permitted provided that the following conditions are met:
 | 
				
			||||||
 | 
					   - Redistributions of source code must retain the above copyright
 | 
				
			||||||
 | 
					     notice, this list of conditions and the following disclaimer.
 | 
				
			||||||
 | 
					   - Redistributions in binary form must reproduce the above copyright
 | 
				
			||||||
 | 
					     notice, this list of conditions and the following disclaimer in the
 | 
				
			||||||
 | 
					     documentation and/or other materials provided with the distribution.
 | 
				
			||||||
 | 
					   - Neither the name of ARM nor the names of its contributors may be used
 | 
				
			||||||
 | 
					     to endorse or promote products derived from this software without
 | 
				
			||||||
 | 
					     specific prior written permission.
 | 
				
			||||||
 | 
					   *
 | 
				
			||||||
 | 
					   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 | 
				
			||||||
 | 
					   AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
				
			||||||
 | 
					   IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
				
			||||||
 | 
					   ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE
 | 
				
			||||||
 | 
					   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 | 
				
			||||||
 | 
					   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 | 
				
			||||||
 | 
					   SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 | 
				
			||||||
 | 
					   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 | 
				
			||||||
 | 
					   CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 | 
				
			||||||
 | 
					   ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 | 
				
			||||||
 | 
					   POSSIBILITY OF SUCH DAMAGE.
 | 
				
			||||||
 | 
					   ---------------------------------------------------------------------------*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#if   defined ( __ICCARM__ )
 | 
				
			||||||
 | 
					 #pragma system_include         /* treat file as system include file for MISRA check */
 | 
				
			||||||
 | 
					#elif defined(__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)
 | 
				
			||||||
 | 
					  #pragma clang system_header   /* treat file as system include file */
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#ifndef __CORE_CMSIMD_H
 | 
				
			||||||
 | 
					#define __CORE_CMSIMD_H
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#ifdef __cplusplus
 | 
				
			||||||
 | 
					 extern "C" {
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* ###################  Compiler specific Intrinsics  ########################### */
 | 
				
			||||||
 | 
					/** \defgroup CMSIS_SIMD_intrinsics CMSIS SIMD Intrinsics
 | 
				
			||||||
 | 
					  Access to dedicated SIMD instructions
 | 
				
			||||||
 | 
					  @{
 | 
				
			||||||
 | 
					*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*------------------ RealView Compiler -----------------*/
 | 
				
			||||||
 | 
					#if   defined ( __CC_ARM )
 | 
				
			||||||
 | 
					  #include "cmsis_armcc.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*------------------ ARM Compiler V6 -------------------*/
 | 
				
			||||||
 | 
					#elif defined(__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)
 | 
				
			||||||
 | 
					  #include "cmsis_armcc_V6.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*------------------ GNU Compiler ----------------------*/
 | 
				
			||||||
 | 
					#elif defined ( __GNUC__ )
 | 
				
			||||||
 | 
					  #include "cmsis_gcc.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*------------------ ICC Compiler ----------------------*/
 | 
				
			||||||
 | 
					#elif defined ( __ICCARM__ )
 | 
				
			||||||
 | 
					  #include <cmsis_iar.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*------------------ TI CCS Compiler -------------------*/
 | 
				
			||||||
 | 
					#elif defined ( __TMS470__ )
 | 
				
			||||||
 | 
					  #include <cmsis_ccs.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*------------------ TASKING Compiler ------------------*/
 | 
				
			||||||
 | 
					#elif defined ( __TASKING__ )
 | 
				
			||||||
 | 
					  /*
 | 
				
			||||||
 | 
					   * The CMSIS functions have been implemented as intrinsics in the compiler.
 | 
				
			||||||
 | 
					   * Please use "carm -?i" to get an up to date list of all intrinsics,
 | 
				
			||||||
 | 
					   * Including the CMSIS ones.
 | 
				
			||||||
 | 
					   */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*------------------ COSMIC Compiler -------------------*/
 | 
				
			||||||
 | 
					#elif defined ( __CSMC__ )
 | 
				
			||||||
 | 
					  #include <cmsis_csm.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*@} end of group CMSIS_SIMD_intrinsics */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#ifdef __cplusplus
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#endif /* __CORE_CMSIMD_H */
 | 
				
			||||||
							
								
								
									
										9979
									
								
								src/device/stm32f4xx.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9979
									
								
								src/device/stm32f4xx.h
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										105
									
								
								src/device/system_stm32f4xx.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										105
									
								
								src/device/system_stm32f4xx.h
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,105 @@
 | 
				
			|||||||
 | 
					/**
 | 
				
			||||||
 | 
					  ******************************************************************************
 | 
				
			||||||
 | 
					  * @file    system_stm32f4xx.h
 | 
				
			||||||
 | 
					  * @author  MCD Application Team
 | 
				
			||||||
 | 
					  * @version V1.6.1
 | 
				
			||||||
 | 
					  * @date    21-October-2015
 | 
				
			||||||
 | 
					  * @brief   CMSIS Cortex-M4 Device System Source File for STM32F4xx devices.       
 | 
				
			||||||
 | 
					  ******************************************************************************  
 | 
				
			||||||
 | 
					  * @attention
 | 
				
			||||||
 | 
					  *
 | 
				
			||||||
 | 
					  * <h2><center>© COPYRIGHT 2015 STMicroelectronics</center></h2>
 | 
				
			||||||
 | 
					  *
 | 
				
			||||||
 | 
					  * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
 | 
				
			||||||
 | 
					  * You may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					  * You may obtain a copy of the License at:
 | 
				
			||||||
 | 
					  *
 | 
				
			||||||
 | 
					  *        http://www.st.com/software_license_agreement_liberty_v2
 | 
				
			||||||
 | 
					  *
 | 
				
			||||||
 | 
					  * Unless required by applicable law or agreed to in writing, software 
 | 
				
			||||||
 | 
					  * distributed under the License is distributed on an "AS IS" BASIS, 
 | 
				
			||||||
 | 
					  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					  * See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					  * limitations under the License.
 | 
				
			||||||
 | 
					  *
 | 
				
			||||||
 | 
					  ******************************************************************************  
 | 
				
			||||||
 | 
					  */ 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** @addtogroup CMSIS
 | 
				
			||||||
 | 
					  * @{
 | 
				
			||||||
 | 
					  */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** @addtogroup stm32f4xx_system
 | 
				
			||||||
 | 
					  * @{
 | 
				
			||||||
 | 
					  */  
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					  * @brief Define to prevent recursive inclusion
 | 
				
			||||||
 | 
					  */
 | 
				
			||||||
 | 
					#ifndef __SYSTEM_STM32F4XX_H
 | 
				
			||||||
 | 
					#define __SYSTEM_STM32F4XX_H
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#ifdef __cplusplus
 | 
				
			||||||
 | 
					 extern "C" {
 | 
				
			||||||
 | 
					#endif 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** @addtogroup STM32F4xx_System_Includes
 | 
				
			||||||
 | 
					  * @{
 | 
				
			||||||
 | 
					  */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					  * @}
 | 
				
			||||||
 | 
					  */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** @addtogroup STM32F4xx_System_Exported_types
 | 
				
			||||||
 | 
					  * @{
 | 
				
			||||||
 | 
					  */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					extern uint32_t SystemCoreClock;          /*!< System Clock Frequency (Core Clock) */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					  * @}
 | 
				
			||||||
 | 
					  */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** @addtogroup STM32F4xx_System_Exported_Constants
 | 
				
			||||||
 | 
					  * @{
 | 
				
			||||||
 | 
					  */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					  * @}
 | 
				
			||||||
 | 
					  */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** @addtogroup STM32F4xx_System_Exported_Macros
 | 
				
			||||||
 | 
					  * @{
 | 
				
			||||||
 | 
					  */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					  * @}
 | 
				
			||||||
 | 
					  */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** @addtogroup STM32F4xx_System_Exported_Functions
 | 
				
			||||||
 | 
					  * @{
 | 
				
			||||||
 | 
					  */
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					extern void SystemInit(void);
 | 
				
			||||||
 | 
					extern void SystemCoreClockUpdate(void);
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					  * @}
 | 
				
			||||||
 | 
					  */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#ifdef __cplusplus
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#endif /*__SYSTEM_STM32F4XX_H */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					  * @}
 | 
				
			||||||
 | 
					  */
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					  * @}
 | 
				
			||||||
 | 
					  */  
 | 
				
			||||||
 | 
					/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
 | 
				
			||||||
							
								
								
									
										35
									
								
								src/main.c
									
									
									
									
									
								
							
							
						
						
									
										35
									
								
								src/main.c
									
									
									
									
									
								
							@@ -1,7 +1,34 @@
 | 
				
			|||||||
/* Main program. */
 | 
					#include "main.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Main program.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
int main(void) {
 | 
					int main(void) {
 | 
				
			||||||
  int val = 0;
 | 
					  // Enable the GPIOa and GPIOC peripheral in RCC.
 | 
				
			||||||
  while (1) {
 | 
					  RCC->AHB1ENR   |= RCC_AHB1ENR_GPIOAEN ;
 | 
				
			||||||
    val += 1;
 | 
					  RCC->AHB1ENR   |= RCC_AHB1ENR_GPIOCEN ;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // Initialize the GPIOC pins.
 | 
				
			||||||
 | 
					  // C15 should be set to 'input' mode with pull-up.
 | 
				
			||||||
 | 
					  GPIOC->MODER  &= ~(0x3 << (BUTTON_PIN*2));
 | 
				
			||||||
 | 
					  GPIOC->PUPDR  &= ~(0x3 << (BUTTON_PIN*2));
 | 
				
			||||||
 | 
					  GPIOC->PUPDR  |=  (0x1 << (BUTTON_PIN*2));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // A5 is connected to an LED on the 'Nucleo' board.
 | 
				
			||||||
 | 
					  // It should be set to push-pull low-speed output.
 | 
				
			||||||
 | 
					  GPIOA->MODER  &= ~(0x3 << (LED_PIN*2));
 | 
				
			||||||
 | 
					  GPIOA->MODER  |=  (0x1 << (LED_PIN*2));
 | 
				
			||||||
 | 
					  GPIOA->OTYPER &= ~(1 << LED_PIN);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // Main loop
 | 
				
			||||||
 | 
					  while (1){
 | 
				
			||||||
 | 
					    // Invert the IDR register since '0' means 'pressed'.
 | 
				
			||||||
 | 
					    uint32_t idr_val = ~GPIOC->IDR;
 | 
				
			||||||
 | 
					    if (idr_val & (1 << BUTTON_PIN)) {
 | 
				
			||||||
 | 
					      GPIOA->ODR = (1 << LED_PIN);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    else {
 | 
				
			||||||
 | 
					      GPIOA->ODR = (0 << LED_PIN);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
							
								
								
									
										8
									
								
								src/main.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								src/main.h
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,8 @@
 | 
				
			|||||||
 | 
					#ifndef _VVC_MAIN_H
 | 
				
			||||||
 | 
					#define _VVC_MAIN_H
 | 
				
			||||||
 | 
					#include <stdint.h>
 | 
				
			||||||
 | 
					#include "device/stm32f4xx.h"
 | 
				
			||||||
 | 
					// Define GPIOB pin mappings for our LED and button.
 | 
				
			||||||
 | 
					#define BUTTON_PIN (13) //C13
 | 
				
			||||||
 | 
					#define LED_PIN    (5) //A5
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
		Reference in New Issue
	
	Block a user