core_cm3.c ( File view )

  • By 学习ing 2015-08-20
  • View(s):23
  • Download(s):18
  • Point(s): 1
			/**************************************************************************//**
 * @file     core_cm3.c
 * @brief    CMSIS Cortex-M3 Core Peripheral Access Layer Source File
 * @version  V1.30
 * @date     30. October 2009
 *
 * @note
 * Copyright (C) 2009 ARM Limited. All rights reserved.
 *
 * @par
 * ARM Limited (ARM) is supplying this software for use with Cortex-M 
 * processor based microcontrollers.  This file can be freely distributed 
 * within development tools that are supporting such ARM based processors. 
 *
 * @par
 * THIS SOFTWARE IS PROVIDED "AS IS".  NO WARRANTIES, WHETHER EXPRESS, IMPLIED
 * OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.
 * ARM SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR
 * CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
 *
 ******************************************************************************/

#include <stdint.h>

/* define compiler specific symbols */
#if defined ( __CC_ARM   )
  #define __ASM            __asm                                      /*!< asm keyword for ARM Compiler          */
  #define __INLINE         __inline                                   /*!< inline keyword for ARM Compiler       */

#elif defined ( __ICCARM__ )
  #define __ASM           __asm                                       /*!< asm keyword for IAR Compiler          */
  #define __INLINE        inline                                      /*!< inline keyword for IAR Compiler. Only avaiable in High optimization mode! */

#elif defined   (  __GNUC__  )
  #define __ASM            __asm                                      /*!< asm keyword for GNU Compiler          */
  #define __INLINE         inline                                     /*!< inline keyword for GNU Compiler       */

#elif defined   (  __TASKING__  )
  #define __ASM            __asm                                      /*!< asm keyword for TASKING Compiler      */
  #define __INLINE         inline                                     /*!< inline keyword for TASKING Compiler   */

#endif


/* ###################  Compiler specific Intrinsics  ########################### */

#if defined ( __CC_ARM   ) /*------------------RealView Compiler -----------------*/
/* ARM armcc specific functions */

/**
 * @brief  Return the Process Stack Pointer
 *
 * @return ProcessStackPointer
 *
 * Return the actual process stack pointer
 */
__ASM uint32_t __get_PSP(void)
{

  mrs r0, psp
  bx lr

}

/**
 * @brief  Set the Process Stack Pointer
 *
 * @param  topOfProcStack  Process Stack Pointer
 *
 * Assign the value ProcessStackPointer to the MSP 
 * (process stack pointer) Cortex processor register
 */
__ASM void __set_PSP(uint32_t topOfProcStack)
{

  msr psp, r0
  bx lr

}

/**
 * @brief  Return the Main Stack Pointer
 *
 * @return Main Stack Pointer
 *
 * Return the current value of the MSP (main stack pointer)
 * Cortex processor register
 */
__ASM uint32_t __get_MSP(void)
{

  mrs r0, msp
  bx lr

}

/**
 * @brief  Set the Main Stack Pointer
 *
 * @param  topOfMainStack  Main Stack Pointer
 *
 * Assign the value mainStackPointer to the MSP 
 * (main stack pointer) Cortex processor register
 */
__ASM void __set_MSP(uint32_t mainStackPointer)
{

  msr msp, r0
  bx lr

}

/**
 * @brief  Reverse byte order in unsigned short value
 *
 * @param   value  value to reverse
 * @return         reversed value
 *
 * Reverse byte order in unsigned short value
 */
__ASM uint32_t __REV16(uint16_t value)
{

  rev16 r0, r0
  bx lr

}

/**
 * @brief  Reverse byte order in signed short value with sign extension to integer
 *
 * @param   value  value to reverse
 * @return         reversed value
 *
 * Reverse byte order in signed short value with sign extension to integer
 */
__ASM int32_t __REVSH(int16_t value)
{

  revsh r0, r0
  bx lr

}


#if (__ARMCC_VERSION < 400000)

/**
 * @brief  Remove the exclusive lock created by ldrex
 *
 * Removes the exclusive lock which is created by ldrex.
 */
__ASM void __CLREX(void)
{

  clrex

}

/**
 * @brief  Return the Base Priority value
 *
 * @return BasePriority
 *
 * Return the content of the base priority register
 */
__ASM uint32_t  __get_BASEPRI(void)
{

  mrs r0, basepri
  bx lr

}

/**
 * @brief  Set the Base Priority value
 *
 * @param  basePri  BasePriority
 *
 * Set the base priority register
 */
__ASM void __set_BASEPRI(uint32_t basePri)
{

  msr basepri, r0
  bx lr

}

/**
 * @brief  Return the Priority Mask value
 *
 * @return PriMask
 *
 * Return state of the priority mask bit from the priority mask register
 */
__ASM uint32_t __get_PRIMASK(void)
{

  mrs r0, primask
  bx lr

}

/**
 * @brief  Set the Priority Mask value
 *
 * @param  priMask  PriMask
 *
 * Set the priority mask bit in the priority mask register
 */
__ASM void __set_PRIMASK(uint32_t priMask)
{

  msr primask, r0
  bx lr

}

/**
 * @brief  Return the Fault Mask value
 *
 * @return FaultMask
 *
 * Return the content of the fault mask register
 */
__ASM uint32_t  __get_FAULTMASK(void)
{

  mrs r0, faultmask
  bx lr

}

/**
 * @brief  Set the Fault Mask value
 *
 * @param  faultMask  faultMask value
 *
 * Set the fault mask register
 */
__ASM void __set_FAULTMASK(uint32_t faultMask)
{

  msr faultmask, r0
  bx lr

}

/**
 * @brief  Return the Control Register value
 * 
 * @return Control value
 *
 * Return the content of the control register
 */
__ASM uint32_t __get_CONTROL(void)
{

  mrs r0, control
  bx lr

}

/**
 * @brief  Set the Control Register value
 *
 * @param  control  Control value
 *
 * Set the control register
 */
__ASM void __set_CONTROL(uint32_t control)
{

  msr control, r0
  bx lr

}

#endif /* __ARMCC_VERSION  */ 



#elif (defined (__ICCARM__)) /*------------------ ICC Compiler -------------------*/
/* IAR iccarm specific functions */
#pragma diag_suppress=Pe940

/**
 * @brief  Return the Process Stack Pointer
 *
 * @return ProcessStackPointer
 *
 * Return the actual process stack pointer
 */
uint32_t __get_PSP(void)
{

  __ASM("mrs r0, psp");
  __ASM("bx lr");

}

/**
 * @brief  Set the Process Stack Pointer
 *
 * @param  topOfProcStack  Process Stack Pointer
 *
 * Assign the value ProcessStackPointer to the MSP 
 * (process stack pointer) Cortex processor register
 */
void __set_PSP(uint32_t topOfProcStack)
{

  __ASM("msr psp, r0");
  __ASM("bx lr");

}

/**
 * @brief  Return the Main Stack Pointer
 *
 * @return Main Stack Pointer
 *
 * Return the current value of the MSP (main stack pointer)
 * Cortex processor register
 */
uint32_t __get_MSP(void)
{

  __ASM("mrs r0, msp");
  __ASM("bx lr");

}

/**
 * @brief  Set the Main Stack Pointer
 *
 * @param  topOfMainStack  Main Stack Pointer
 *
 * Assign the value mainStackPointer to the MSP 
 * (main stack pointer) Cortex processor register
 */
void __set_MSP(uint32_t topOfMainStack)
{

  __ASM("msr msp, r0");
  __ASM("bx lr");

}

/**
 * @brief  Reverse byte order in unsigned short value
 *
 * @param  value  value to reverse
 * @return        reversed value
 *
 * Reverse byte order in unsigned short value
 */
uint32_t __REV16(uint16_t value)
{

  __ASM("rev16 r0, r0");
  __ASM("bx lr");

}

/**
 * @brief  Reverse bit order of value
 *
 * @param  value  value to reverse
 * @return        reversed value
 *
 * Reverse bit order of value
 */
uint32_t __RBIT(uint32_t value)
{

  __ASM("rbit r0, r0");
  __ASM("bx lr");

}

/**
 * @brief  LDR Exclusive (8 bit)
 *
 * @param  *addr  address pointer
 * @return        value of (*address)
 *
 * Exclusive LDR command for 8 bit values)
 */
uint8_t __LDREXB(uint8_t *addr)
{

  __ASM("ldrexb r0, [r0]");
  __ASM("bx lr"); 

}

/**
 * @brief  LDR Exclusive (16 bit)
 *
 * @param  *addr  address pointer
 * @return        value of (*address)
 *
 * Exclusive LDR command for 16 bit values
 */
uint16_t __LDREXH(uint16_t *addr)
{

  __ASM("ldrexh r0, [r0]");
  __ASM("bx lr");

}

/**
 * @brief  LDR Exclusive (32 bit)
 *
 * @param  *addr  address pointer
 * @return        value of (*address)
 *
 * Exclusive LDR command for 32 bit values
 */
uint32_t __LDREXW(uint32_t *addr)
{

  __ASM("ldrex r0, [r0]");
  __ASM("bx lr");

}

/**
 * @brief  STR Exclusive (8 bit)
 *
 * @param  value  value to store
 * @param  *addr  address pointer
 * @return        successful / failed
 *
 * Exclusive STR command for 8 bit values
 */
uint32_t __STREXB(uint8_t value, uint8_t *addr)
{

  __ASM("strexb r0, r0, [r1]");
  __ASM("bx lr");

}

/**
 * @brief  STR Exclusive (16 bit)
 *
 * @param  value  value to store
 * @param  *addr  address pointer
 * @return        successful / failed
 *
 * Exclusive STR command for 16 bit values
 */
uint32_t __STREXH(uint16_t value, uint16_t *addr)
{

  __ASM("strexh r0, r0, [r1]");
  __ASM("bx lr");

}

/**
 * @brief  STR Exclusive (32 bit)
 *
 * @param  value  value to store
 * @param  *addr  address pointer
 * @return        successful / failed
 *
 * Exclusive STR command for 32 bit values
 */
uint32_t __STREXW(uint32_t value, uint32_t *addr)
{

  __ASM("strex r0, r0, [r1]");
  __ASM("bx lr");

}

#pragma diag_default=Pe940


#elif (defined (__GNUC__)) /*------------------ GNU Compiler ---------------------*/
/* GNU gcc specific functions */

/**
 * @brief  Return the Process Stack Pointer
 *
 * @return ProcessStackPointer
 *
 * Return the actual process stack pointer
 */
uint32_t __get_PSP(void) __attribute__( ( naked ) );
uint32_t __get_PSP(void)
{

  uint32_t result=0;

  __ASM volatile ("MRS %0, psp\n\t" 
                  "MOV r0, %0 \n\t"
                  "BX  lr     \n\t"  : "=r" (result) );
  return(result);

}

/**
 * @brief  Set the Process Stack Pointer
 *
 * @param  topOfProcStack  Process Stack Pointer
 *
 * Assign the value ProcessStackPointer to the MSP 
 * (process stack pointer) Cortex processor register
 */
void __set_PSP(uint
...
...
(Not finished, please download and read the complete file)
			
...
Expand> <Close

Want complete source code? Download it here

Point(s): 1

Download
0 lines left, continue to read
Sponsored links

File list

Tips: You can preview the content of files by clicking file names^_^
Name Size Date
core_cm3.c16.87 kB29-07-11|16:54
core_cm3.h83.71 kB29-07-11|16:54
startup_stm32f10x_cl.s15.39 kB29-07-11|16:54
startup_stm32f10x_hd.s15.14 kB29-07-11|16:54
startup_stm32f10x_hd_vl.s15.40 kB29-07-11|16:54
startup_stm32f10x_ld.s12.08 kB29-07-11|16:54
startup_stm32f10x_ld_vl.s13.33 kB29-07-11|16:54
startup_stm32f10x_md.s12.46 kB29-07-11|16:54
startup_stm32f10x_md_vl.s13.74 kB29-07-11|16:54
startup_stm32f10x_xl.s15.58 kB29-07-11|16:54
startup_stm32f10x_md.c13.85 kB29-07-11|16:54
startup_stm32f10x_md.s12.46 kB30-07-11|10:45
stm32f10x.h615.25 kB15-08-11|20:43
stm32f10x_conf.h3.13 kB31-07-11|21:56
system_stm32f10x.c32.11 kB29-07-11|16:54
system_stm32f10x.h2.02 kB29-07-11|16:54
readme.txt896.00 B29-07-11|16:54
coocox.h1.33 kB29-07-11|16:53
CoOS.h8.95 kB29-07-11|16:53
core.c7.91 kB29-07-11|16:53
event.c16.27 kB29-07-11|16:53
flag.c23.42 kB29-07-11|16:53
hook.c1.68 kB29-07-11|16:53
kernelHeap.c16.00 kB29-07-11|16:53
mbox.c10.49 kB29-07-11|16:53
mm.c9.65 kB29-07-11|16:53
mutex.c11.78 kB29-07-11|16:53
OsConfig.h6.64 kB18-08-11|16:53
OsCore.h687.00 B29-07-11|16:53
OsError.h2.03 kB29-07-11|16:53
OsEvent.h2.51 kB29-07-11|16:53
OsFlag.h1.97 kB29-07-11|16:53
OsKernelHeap.h1.12 kB29-07-11|16:53
OsMM.h938.00 B29-07-11|16:53
OsMutex.h2.00 kB29-07-11|16:53
OsQueue.h1.26 kB29-07-11|16:53
OsServiceReq.h1.24 kB29-07-11|16:53
OsTask.h4.09 kB29-07-11|16:54
OsTime.h1.07 kB29-07-11|16:54
OsTimer.h2.07 kB29-07-11|16:54
queue.c13.06 kB29-07-11|16:54
sem.c10.46 kB29-07-11|16:54
serviceReq.c5.55 kB29-07-11|16:54
task.c38.41 kB30-07-11|11:21
time.c13.82 kB29-07-11|16:54
timer.c16.37 kB29-07-11|16:54
utility.c3.02 kB29-07-11|16:54
utility.h1.28 kB29-07-11|16:54
arch.c3.33 kB29-07-11|16:53
port.c9.05 kB29-07-11|16:53
portForM0.asm3.50 kB29-07-11|16:53
portForM3.asm3.06 kB29-07-11|16:53
port.c7.10 kB29-07-11|16:53
OsArch.h1.92 kB29-07-11|16:53
ADC.h468.00 B31-07-11|21:51
ADC.c1.90 kB31-07-11|21:51
BLDC.h270.00 B03-11-11|19:03
BLDC.c11.97 kB19-08-15|09:43
BLUETOOTH.h54.00 B19-08-11|17:39
BLUETOOTH.c1.46 kB20-08-11|17:48
CAN1.h127.00 B16-08-11|17:10
CAN1.c3.74 kB16-08-11|17:10
DYP_ME007.h221.00 B26-08-11|14:05
DYP_ME007.c2.49 kB26-08-11|15:03
INFRARE_Receive.h189.00 B26-08-11|08:59
INFRARE_Receive.c3.01 kB26-08-11|08:55
KEY.h149.00 B03-11-11|09:18
KEY.c1.24 kB03-11-11|09:18
LCD_Config.h2.45 kB29-07-11|16:53
LCD_Dis.h2.08 kB31-07-11|19:22
LCD_Driver_User.h499.00 B29-07-11|16:53
LCD_PortConfig.h1,001.00 B14-08-11|20:27
GB_Table.c577.00 B31-07-11|20:00
LCD_ASCII.c11.11 kB29-07-11|16:53
LCD_Dis.c6.10 kB29-07-11|16:53
LCD_Driver_User.c4.58 kB31-07-11|19:31
LED.h168.00 B30-10-11|22:01
LED.c1.30 kB26-08-11|13:48
MCPWM.h1.36 kB14-09-11|11:54
MCPWM.c9.81 kB14-09-11|11:59
Motor.h123.00 B11-08-11|19:44
Motor.c2.13 kB15-08-11|14:45
PID.h120.00 B02-11-11|22:04
PID.c2.82 kB27-06-15|09:56
PS2.h1.52 kB14-08-11|21:51
PS2.c7.83 kB16-08-11|17:11
PWM3.h336.00 B18-08-11|17:07
PWM3.c4.34 kB25-08-11|23:56
PWM4.h582.00 B23-08-11|00:45
PWM4.c5.43 kB26-08-11|10:26
TIM2.h359.00 B25-08-11|23:27
TIM2.c5.71 kB26-08-11|13:03
TIM3.h359.00 B26-08-11|15:21
TIM3.c5.82 kB26-08-11|15:36
USART1.h237.00 B19-08-11|13:25
USART1.c2.96 kB19-08-11|17:51
USART2.h205.00 B22-08-11|00:55
USART2.c2.44 kB27-09-11|10:25
includes.h491.00 B17-06-15|14:20
JLink0.00 B234|47%
JLinkLog.txt1.50 kB16-06-15|16:54
JLinkSettings.ini285.00 B29-07-11|16:52
startup_stm32f10x_md.lst42.83 kB03-11-11|19:25
STM32F103RB.map182.32 kB25-07-15|14:45
main.c1.37 kB03-11-11|19:03
MCUPeriph_Init.c3.72 kB27-06-15|09:56
MCUPeriph_Init.h457.00 B30-07-11|09:04
adc.crf301.16 kB16-09-11|13:33
adc.d1.69 kB16-09-11|13:33
adc.o317.73 kB16-09-11|13:33
arch.crf17.80 kB16-06-15|15:55
arch.d699.00 B16-06-15|15:55
arch.o30.01 kB16-06-15|15:55
arch.__i700.00 B16-06-15|15:55
bldc.crf301.57 kB25-07-15|14:44
bldc.d1.41 kB25-07-15|14:44
bldc.o323.94 kB25-07-15|14:44
bldc.__i701.00 B25-07-15|14:44
bluetooth.crf302.69 kB26-08-11|15:22
bluetooth.d2.08 kB26-08-11|15:22
bluetooth.o323.18 kB26-08-11|15:22
bluetooth.__i801.00 B26-08-11|15:22
can.crf301.40 kB15-08-11|21:20
can.d1.53 kB15-08-11|21:20
can.o322.34 kB15-08-11|21:20
can.__i587.00 B15-08-11|21:20
can1.crf301.46 kB16-09-11|13:33
can1.d1.73 kB16-09-11|13:33
can1.o319.33 kB16-09-11|13:33
ccd.crf279.15 kB31-07-11|15:19
ccd.d1.25 kB31-07-11|15:19
ccd.o306.00 kB31-07-11|15:19
ccd.__i413.00 B31-07-11|15:19
core.crf17.84 kB16-06-15|15:55
core.d697.00 B16-06-15|15:55
core.o37.79 kB16-06-15|15:55
core.__i698.00 B16-06-15|15:55
core_cm3.crf3.45 kB16-06-15|15:55
core_cm3.d93.00 B16-06-15|15:55
core_cm3.o10.14 kB16-06-15|15:55
dyp_me007.crf302.78 kB26-08-11|15:22
dyp_me007.d2.08 kB26-08-11|15:22
dyp_me007.o327.82 kB26-08-11|15:22
dyp_me007.__i801.00 B26-08-11|15:22
event.crf19.68 kB16-06-15|15:55
event.d716.00 B16-06-15|15:55
event.o37.98 kB16-06-15|15:55
event.__i702.00 B16-06-15|15:55
flag.crf21.44 kB16-06-15|15:55
flag.d697.00 B16-06-15|15:55
flag.o46.94 kB16-06-15|15:55
flag.__i698.00 B16-06-15|15:55
gb_table.crf89.00 B26-08-11|14:35
gb_table.d49.00 B26-08-11|14:35
gb_table.o5.62 kB26-08-11|14:35
hook.crf17.55 kB16-06-15|15:55
hook.d697.00 B16-06-15|15:55
hook.o28.76 kB16-06-15|15:55
hook.__i698.00 B16-06-15|15:55
infrare_receive.crf302.93 kB26-08-11|15:22
infrare_receive.d2.32 kB26-08-11|15:22
infrare_receive.o324.77 kB26-08-11|15:22
infrare_receive.__i831.00 B26-08-11|15:22
kernelheap.crf20.18 kB16-06-15|15:55
kernelheap.d811.00 B16-06-15|15:55
kernelheap.o34.47 kB16-06-15|15:55
kernelheap.__i722.00 B16-06-15|15:55
key.crf298.44 kB17-06-15|14:20
key.d1.38 kB17-06-15|14:20
key.o314.61 kB17-06-15|14:20
key.__i696.00 B17-06-15|14:20
lcd_ascii.crf120.00 B26-08-11|14:35
lcd_ascii.d51.00 B26-08-11|14:35
lcd_ascii.o9.41 kB26-08-11|14:35
lcd_dis.crf3.47 kB26-08-11|14:35
lcd_dis.d205.00 B26-08-11|14:35
lcd_dis.o17.64 kB26-08-11|14:35
lcd_driver_user.crf306.48 kB26-08-11|15:21
lcd_driver_user.d2.49 kB26-08-11|15:21
lcd_driver_user.o332.31 kB26-08-11|15:21
lcd_driver_user.__i824.00 B26-08-11|15:21
led.crf298.26 kB17-06-15|14:20
led.d1.38 kB17-06-15|14:20
led.o315.57 kB17-06-15|14:20
led.__i696.00 B17-06-15|14:20
main.crf298.65 kB17-06-15|14:20
main.d1.36 kB17-06-15|14:20
main.o317.29 kB17-06-15|14:20
mbox.crf19.02 kB16-06-15|15:55
mbox.d697.00 B16-06-15|15:55
mbox.o36.50 kB16-06-15|15:55
mbox.__i698.00 B16-06-15|15:55
mcpwm.crf302.95 kB16-09-11|13:33
mcpwm.d1.77 kB16-09-11|13:33
mcpwm.o341.34 kB16-09-11|13:33
mcuperiph_init.crf298.43 kB27-06-15|09:56
mcuperiph_init.d1.67 kB27-06-15|09:56
mcuperiph_init.o318.38 kB27-06-15|09:56
mcuperiph_init.__i726.00 B27-06-15|09:56
misc.crf281.67 kB16-06-15|15:55
misc.d938.00 B16-06-15|15:55
misc.o304.11 kB16-06-15|15:55
misc.__i717.00 B16-06-15|15:55
mm.crf19.09 kB16-06-15|15:55
mm.d659.00 B16-06-15|15:55
mm.o35.62 kB16-06-15|15:55
mm.__i690.00 B16-06-15|15:55
motor.crf301.05 kB14-09-11|09:22
motor.d1.78 kB14-09-11|09:22
motor.o318.42 kB14-09-11|09:22
motor.__i825.00 B14-09-11|09:22
mutex.crf19.46 kB16-06-15|15:55
mutex.d716.00 B16-06-15|15:55
mutex.o34.52 kB16-06-15|15:55
mutex.__i702.00 B16-06-15|15:55
periph_init.crf276.98 kB29-07-11|16:53
periph_init.d1.13 kB29-07-11|16:53
periph_init.o302.95 kB29-07-11|16:53
pid.crf923.00 B27-06-15|09:56
pid.d34.00 B27-06-15|09:56
pid.o9.36 kB27-06-15|09:56
pid.__i696.00 B27-06-15|09:56
port.crf17.66 kB16-06-15|15:55
port.d704.00 B16-06-15|15:55
port.o28.59 kB16-06-15|15:55
port.__i705.00 B16-06-15|15:55
ps2.crf303.56 kB26-08-11|15:22
ps2.d1.85 kB26-08-11|15:22
ps2.o334.36 kB26-08-11|15:22
ps2.__i779.00 B26-08-11|15:21
ps2_key.crf299.29 kB12-08-11|17:20
ps2_key.d1.73 kB12-08-11|17:20
ps2_key.o315.71 kB12-08-11|17:20
ps2_key.__i623.00 B12-08-11|17:20
pwm.crf299.23 kB10-08-11|14:37
pwm.d1.39 kB10-08-11|14:37
pwm.o318.52 kB10-08-11|14:37
pwm.__i447.00 B10-08-11|14:37
pwm3.crf301.78 kB16-09-11|13:33
pwm3.d1.73 kB16-09-11|13:33
pwm3.o325.77 kB16-09-11|13:33
pwm4.crf302.14 kB16-09-11|13:33
pwm4.d1.73 kB16-09-11|13:33
pwm4.o334.54 kB16-09-11|13:33
queue.crf19.73 kB16-06-15|15:55
queue.d716.00 B16-06-15|15:55
queue.o38.20 kB16-06-15|15:55
queue.__i702.00 B16-06-15|15:55
sem.crf18.82 kB16-06-15|15:55
sem.d678.00 B16-06-15|15:55
sem.o36.16 kB16-06-15|15:55
sem.__i694.00 B16-06-15|15:55
servicereq.crf18.14 kB16-06-15|15:55
servicereq.d811.00 B16-06-15|15:55
servicereq.o30.71 kB16-06-15|15:55
servicereq.__i722.00 B16-06-15|15:55
startup_stm32f10x_md.d73.00 B03-11-11|19:25
startup_stm32f10x_md.o5.82 kB03-11-11|19:25
startup_stm32f10x_md.__i438.00 B29-07-11|16:53
STM32F103RB.axf406.48 kB25-07-15|14:45
STM32F103RB.hex34.23 kB25-07-15|14:45
STM32F103RB.htm79.66 kB25-07-15|14:45
STM32F103RB.lnp1.26 kB25-07-15|14:44
STM32F103RB.plg220.00 B21-08-15|09:11
STM32F103RB.sct479.00 B29-07-11|16:53
STM32F103RB.tra4.42 kB25-07-15|14:45
stm32f10x_adc.crf288.67 kB16-06-15|15:55
stm32f10x_adc.d1.08 kB16-06-15|15:55
stm32f10x_adc.o350.20 kB16-06-15|15:55
stm32f10x_adc.__i753.00 B16-06-15|15:55
stm32f10x_bkp.crf285.11 kB16-06-15|15:55
stm32f10x_bkp.d1.08 kB16-06-15|15:55
stm32f10x_bkp.o317.44 kB16-06-15|15:55
stm32f10x_bkp.__i753.00 B16-06-15|15:55
stm32f10x_can.crf288.72 kB16-06-15|15:55
stm32f10x_can.d1.08 kB16-06-15|15:55
stm32f10x_can.o328.61 kB16-06-15|15:55
stm32f10x_can.__i753.00 B16-06-15|15:55
stm32f10x_crc.crf281.67 kB16-06-15|15:55
stm32f10x_crc.d1.08 kB16-06-15|15:55
stm32f10x_crc.o306.02 kB16-06-15|15:55
stm32f10x_crc.__i753.00 B16-06-15|15:55
stm32f10x_dac.crf287.11 kB16-06-15|15:55
stm32f10x_dac.d1.08 kB16-06-15|15:55
stm32f10x_dac.o319.64 kB16-06-15|15:55
stm32f10x_dac.__i753.00 B16-06-15|15:55
stm32f10x_dbgmcu.crf281.91 kB16-06-15|15:55
stm32f10x_dbgmcu.d1.14 kB16-06-15|15:55
stm32f10x_dbgmcu.o302.95 kB16-06-15|15:55
stm32f10x_dbgmcu.__i765.00 B16-06-15|15:55
stm32f10x_dma.crf284.17 kB16-06-15|15:55
stm32f10x_dma.d1.08 kB16-06-15|15:55
stm32f10x_dma.o311.99 kB16-06-15|15:55
stm32f10x_dma.__i753.00 B16-06-15|15:55
stm32f10x_exti.crf282.21 kB16-06-15|15:55
stm32f10x_exti.d1.10 kB16-06-15|15:55
stm32f10x_exti.o308.16 kB16-06-15|15:55
stm32f10x_exti.__i757.00 B16-06-15|15:55
stm32f10x_flash.crf293.86 kB16-06-15|15:55
stm32f10x_flash.d1.12 kB16-06-15|15:55
stm32f10x_flash.o339.82 kB16-06-15|15:55
stm32f10x_flash.__i761.00 B16-06-15|15:55
stm32f10x_fsmc.crf294.64 kB16-06-15|15:55
stm32f10x_fsmc.d1.10 kB16-06-15|15:55
stm32f10x_fsmc.o333.51 kB16-06-15|15:55
stm32f10x_fsmc.__i757.00 B16-06-15|15:55
stm32f10x_gpio.crf284.99 kB16-06-15|15:55
stm32f10x_gpio.d1.10 kB16-06-15|15:55
stm32f10x_gpio.o323.79 kB16-06-15|15:55
stm32f10x_gpio.__i757.00 B16-06-15|15:55
stm32f10x_i2c.crf294.73 kB16-06-15|15:55
stm32f10x_i2c.d1.08 kB16-06-15|15:55
stm32f10x_i2c.o351.33 kB16-06-15|15:55
stm32f10x_i2c.__i753.00 B16-06-15|15:55
stm32f10x_it.crf299.29 kB17-06-15|15:43
stm32f10x_it.d1.61 kB17-06-15|15:43
stm32f10x_it.o335.59 kB17-06-15|15:43
stm32f10x_it.__i718.00 B17-06-15|15:43
stm32f10x_iwdg.crf282.30 kB16-06-15|15:55
stm32f10x_iwdg.d1.10 kB16-06-15|15:55
stm32f10x_iwdg.o306.91 kB16-06-15|15:55
stm32f10x_iwdg.__i757.00 B16-06-15|15:55
stm32f10x_pwr.crf283.99 kB16-06-15|15:55
stm32f10x_pwr.d1.08 kB16-06-15|15:55
stm32f10x_pwr.o312.02 kB16-06-15|15:55
stm32f10x_pwr.__i753.00 B16-06-15|15:55
stm32f10x_rcc.crf288.62 kB16-06-15|15:55
stm32f10x_rcc.d1.08 kB16-06-15|15:55
stm32f10x_rcc.o343.20 kB16-06-15|15:55
stm32f10x_rcc.__i753.00 B16-06-15|15:55
stm32f10x_rtc.crf283.86 kB16-06-15|15:55
stm32f10x_rtc.d1.08 kB16-06-15|15:55
stm32f10x_rtc.o317.69 kB16-06-15|15:55
stm32f10x_rtc.__i753.00 B16-06-15|15:55
stm32f10x_sdio.crf293.39 kB16-06-15|15:55
stm32f10x_sdio.d1.10 kB16-06-15|15:55
stm32f10x_sdio.o348.03 kB16-06-15|15:55
stm32f10x_sdio.__i757.00 B16-06-15|15:55
stm32f10x_spi.crf292.44 kB16-06-15|15:55
stm32f10x_spi.d1.08 kB16-06-15|15:55
stm32f10x_spi.o337.98 kB16-06-15|15:55
stm32f10x_spi.__i753.00 B16-06-15|15:55
stm32f10x_tim.crf301.85 kB16-06-15|15:55
stm32f10x_tim.d1.08 kB16-06-15|15:55
stm32f10x_tim.o428.19 kB16-06-15|15:55
stm32f10x_tim.__i753.00 B16-06-15|15:55
stm32f10x_usart.crf286.66 kB16-06-15|15:55
stm32f10x_usart.d1.12 kB16-06-15|15:55
stm32f10x_usart.o336.63 kB16-06-15|15:55
stm32f10x_usart.__i761.00 B16-06-15|15:55
stm32f10x_wwdg.crf282.50 kB16-06-15|15:55
stm32f10x_wwdg.d1.10 kB16-06-15|15:55
stm32f10x_wwdg.o309.29 kB16-06-15|15:55
stm32f10x_wwdg.__i757.00 B16-06-15|15:55
system_stm32f10x.crf282.77 kB16-06-15|15:55
system_stm32f10x.d1.04 kB16-06-15|15:55
system_stm32f10x.o303.12 kB16-06-15|15:55
task.crf21.77 kB16-06-15|15:55
task.d697.00 B16-06-15|15:55
task.o47.55 kB16-06-15|15:55
task.__i698.00 B16-06-15|15:55
tim.crf299.83 kB10-08-11|14:37
tim.d1.39 kB10-08-11|14:37
tim.o321.50 kB10-08-11|14:37
tim.__i447.00 B10-08-11|14:37
tim2.crf302.09 kB16-09-11|13:33
tim2.d1.73 kB16-09-11|13:33
tim2.o326.97 kB16-09-11|13:33
tim3.crf302.03 kB16-09-11|13:33
tim3.d1.73 kB16-09-11|13:33
tim3.o327.08 kB16-09-11|13:33
time.crf19.09 kB16-06-15|15:55
time.d697.00 B16-06-15|15:55
time.o39.16 kB16-06-15|15:55
time.__i698.00 B16-06-15|15:55
timer.crf19.79 kB16-06-15|15:55
timer.d716.00 B16-06-15|15:55
timer.o42.40 kB16-06-15|15:55
timer.__i702.00 B16-06-15|15:55
usart.crf299.45 kB11-08-11|19:48
usart.d1.50 kB11-08-11|19:48
usart.o318.95 kB11-08-11|19:48
usart.__i481.00 B11-08-11|19:48
usart1.crf298.68 kB17-06-15|14:20
usart1.d1.48 kB17-06-15|14:20
usart1.o317.63 kB17-06-15|14:20
usart1.__i717.00 B17-06-15|14:20
usart2.crf298.64 kB17-06-15|14:20
usart2.d1.48 kB17-06-15|14:20
usart2.o317.57 kB17-06-15|14:20
usart2.__i717.00 B17-06-15|14:20
utility.crf17.97 kB16-06-15|15:55
utility.d754.00 B16-06-15|15:55
utility.o29.66 kB16-06-15|15:55
utility.__i710.00 B16-06-15|15:55
printf.c12.41 kB29-07-11|16:52
STM32F103RB.uvopt83.38 kB21-08-15|09:21
STM32F103RB.uvproj25.33 kB16-06-15|16:54
STM32F103RB_STM32F103RB.dep77.74 kB21-08-15|09:11
STM32F103RB_uvopt.bak83.38 kB19-08-15|09:46
STM32F103RB_uvproj.bak25.33 kB03-11-11|11:54
stm32f10x_it.c8.57 kB17-08-15|14:09
stm32f10x_it.h2.04 kB15-08-11|20:58
misc.h8.68 kB29-07-11|16:52
stm32f10x_adc.h20.94 kB29-07-11|16:52
stm32f10x_bkp.h7.29 kB29-07-11|16:52
stm32f10x_can.h20.03 kB29-07-11|16:52
stm32f10x_crc.h2.02 kB29-07-11|16:52
stm32f10x_dac.h13.45 kB29-07-11|16:52
stm32f10x_dbgmcu.h3.06 kB29-07-11|16:52
stm32f10x_dma.h20.09 kB29-07-11|16:52
stm32f10x_exti.h6.53 kB29-07-11|16:52
stm32f10x_flash.h19.07 kB29-07-11|16:52
stm32f10x_fsmc.h25.57 kB29-07-11|16:52
stm32f10x_gpio.h16.95 kB09-08-11|14:57
stm32f10x_i2c.h17.56 kB29-07-11|16:52
stm32f10x_iwdg.h3.65 kB29-07-11|16:52
stm32f10x_pwr.h4.19 kB29-07-11|16:52
stm32f10x_rcc.h28.34 kB29-07-11|16:52
stm32f10x_rtc.h3.68 kB29-07-11|16:52
stm32f10x_sdio.h21.26 kB29-07-11|16:52
stm32f10x_spi.h17.67 kB29-07-11|16:52
stm32f10x_tim.h43.85 kB01-08-11|11:48
stm32f10x_usart.h15.92 kB29-07-11|16:52
stm32f10x_wwdg.h2.81 kB29-07-11|16:52
misc.c6.77 kB29-07-11|16:52
stm32f10x_adc.c45.91 kB29-07-11|16:52
stm32f10x_bkp.c8.30 kB29-07-11|16:52
stm32f10x_can.c31.31 kB15-08-11|22:21
stm32f10x_crc.c3.26 kB29-07-11|16:52
stm32f10x_dac.c13.70 kB29-07-11|16:52
stm32f10x_dbgmcu.c4.28 kB29-07-11|16:52
stm32f10x_dma.c27.47 kB29-07-11|16:52
stm32f10x_exti.c6.69 kB29-07-11|16:52
stm32f10x_flash.c25.89 kB29-07-11|16:52
stm32f10x_fsmc.c34.25 kB29-07-11|16:52
stm32f10x_gpio.c18.74 kB29-07-11|16:52
stm32f10x_i2c.c36.75 kB29-07-11|16:52
stm32f10x_iwdg.c4.71 kB29-07-11|16:52
stm32f10x_pwr.c8.76 kB29-07-11|16:52
stm32f10x_rcc.c48.50 kB29-07-11|16:52
stm32f10x_rtc.c8.46 kB29-07-11|16:52
stm32f10x_sdio.c28.13 kB29-07-11|16:52
stm32f10x_spi.c29.36 kB29-07-11|16:52
stm32f10x_tim.c102.27 kB16-09-11|13:31
stm32f10x_usart.c34.42 kB29-07-11|16:52
stm32f10x_wwdg.c5.51 kB29-07-11|16:52
syscalls.c1.17 kB29-07-11|16:52
readme.txt112.00 B05-11-11|15:38
说明.doc157.00 kB18-08-15|10:35
inc0.00 B03-11-11|21:46
src0.00 B03-11-11|21:46
inc0.00 B03-11-11|21:46
src0.00 B03-11-11|21:46
inc0.00 B03-11-11|21:46
src0.00 B03-11-11|21:46
inc0.00 B03-11-11|21:46
src0.00 B03-11-11|21:46
inc0.00 B03-11-11|21:46
src0.00 B03-11-11|21:46
inc0.00 B03-11-11|21:46
src0.00 B03-11-11|21:46
inc0.00 B03-11-11|21:46
src0.00 B03-11-11|21:46
inc0.00 B03-11-11|21:46
src0.00 B03-11-11|21:46
inc0.00 B03-11-11|21:46
src0.00 B03-11-11|21:46
inc0.00 B03-11-11|21:46
src0.00 B03-11-11|21:46
GCC0.00 B03-11-11|21:46
IAR0.00 B03-11-11|21:46
Keil0.00 B03-11-11|21:46
inc0.00 B03-11-11|21:46
src0.00 B03-11-11|21:46
inc0.00 B03-11-11|21:46
src0.00 B03-11-11|21:46
inc0.00 B03-11-11|21:46
src0.00 B03-11-11|21:46
CAN10.00 B03-11-11|21:46
inc0.00 B03-11-11|21:46
src0.00 B03-11-11|21:46
inc0.00 B03-11-11|21:46
src0.00 B03-11-11|21:46
inc0.00 B03-11-11|21:46
src0.00 B03-11-11|21:46
inc0.00 B03-11-11|21:46
src0.00 B03-11-11|21:46
inc0.00 B03-11-11|21:46
src0.00 B03-11-11|21:46
MCPWM10.00 B03-11-11|21:46
StepMotor0.00 B03-11-11|21:46
inc0.00 B03-11-11|21:46
src0.00 B03-11-11|21:46
inc0.00 B03-11-11|21:46
src0.00 B03-11-11|21:46
TIM3_PWM0.00 B03-11-11|21:46
TIM4_PWM0.00 B03-11-11|21:46
TIM20.00 B03-11-11|21:46
TIM30.00 B03-11-11|21:46
TIM40.00 B03-11-11|21:46
USART10.00 B03-11-11|21:46
USART20.00 B03-11-11|21:46
arm0.00 B03-11-11|21:46
startup0.00 B03-11-11|21:46
Document0.00 B03-11-11|21:46
kernel0.00 B03-11-11|21:46
portable0.00 B03-11-11|21:46
ADC0.00 B03-11-11|21:46
BLDC0.00 B03-11-11|21:46
BLUETOOTH0.00 B03-11-11|21:46
CAN0.00 B03-11-11|21:46
DYP_ME0070.00 B03-11-11|21:46
INFRARE_Receive0.00 B03-11-11|21:46
KEY0.00 B03-11-11|21:46
LCD128640.00 B03-11-11|21:46
LED0.00 B03-11-11|21:46
MCPWM0.00 B03-11-11|21:46
Motor0.00 B03-11-11|21:46
PID0.00 B03-11-11|21:46
PS2_Key0.00 B03-11-11|21:46
PWM0.00 B03-11-11|21:46
TIM0.00 B03-11-11|21:46
USART0.00 B03-11-11|21:46
inc0.00 B03-11-11|21:46
src0.00 B03-11-11|21:46
cmsis0.00 B03-11-11|21:46
cmsis_boot0.00 B03-11-11|21:46
CoOS0.00 B03-11-11|21:46
Drive0.00 B03-11-11|21:46
list0.00 B03-11-11|21:46
obj0.00 B25-07-15|14:45
stdio0.00 B03-11-11|21:46
STM32F10x_StdPeriph_Driver0.00 B03-11-11|21:46
syscalls0.00 B03-11-11|21:46
BLDC0.00 B21-08-15|09:21
速度环PID0.00 B18-08-15|10:35
...
Sponsored links

core_cm3.c (6.75 MB)

Need 1 point
Your Point(s)

Your Point isn't enough.

Get point immediately by PayPal

More(Debit card / Credit card / PayPal Credit / Online Banking)

Submit your source codes. Get more point

LOGIN

Don't have an account? Register now
Need any help?
Mail to: support@codeforge.com

切换到中文版?

CodeForge Chinese Version
CodeForge English Version

Where are you going?

^_^"Oops ...

Sorry!This guy is mysterious, its blog hasn't been opened, try another, please!
OK

Warm tip!

CodeForge to FavoriteFavorite by Ctrl+D