stm32f10x_usart.c ( File view )

  • By 学习ing 2015-08-20
  • View(s):23
  • Download(s):18
  • Point(s): 1
			/**
  ******************************************************************************
  * @file    stm32f10x_usart.c
  * @author  MCD Application Team
  * @version V3.1.0
  * @date    06/19/2009
  * @brief   This file provides all the USART firmware functions.
  ******************************************************************************
  * @copy
  *
  * 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.
  *
  * <h2><center>&copy; COPYRIGHT 2009 STMicroelectronics</center></h2>
  */ 

/* Includes ------------------------------------------------------------------*/
#include "stm32f10x_usart.h"
#include "stm32f10x_rcc.h"

/** @addtogroup STM32F10x_StdPeriph_Driver
  * @{

  */

/** @defgroup USART 
  * @brief USART driver modules
  * @{

  */

/** @defgroup USART_Private_TypesDefinitions
  * @{

  */

/**
  * @
}
  */

/** @defgroup USART_Private_Defines
  * @{

  */

#define CR1_UE_Set                ((uint16_t)0x2000)  /*!< USART Enable Mask */
#define CR1_UE_Reset              ((uint16_t)0xDFFF)  /*!< USART Disable Mask */

#define CR1_WAKE_Mask             ((uint16_t)0xF7FF)  /*!< USART WakeUp Method Mask */

#define CR1_RWU_Set               ((uint16_t)0x0002)  /*!< USART mute mode Enable Mask */
#define CR1_RWU_Reset             ((uint16_t)0xFFFD)  /*!< USART mute mode Enable Mask */
#define CR1_SBK_Set               ((uint16_t)0x0001)  /*!< USART Break Character send Mask */
#define CR1_CLEAR_Mask            ((uint16_t)0xE9F3)  /*!< USART CR1 Mask */
#define CR2_Address_Mask          ((uint16_t)0xFFF0)  /*!< USART address Mask */

#define CR2_LINEN_Set              ((uint16_t)0x4000)  /*!< USART LIN Enable Mask */
#define CR2_LINEN_Reset            ((uint16_t)0xBFFF)  /*!< USART LIN Disable Mask */

#define CR2_LBDL_Mask             ((uint16_t)0xFFDF)  /*!< USART LIN Break detection Mask */
#define CR2_STOP_CLEAR_Mask       ((uint16_t)0xCFFF)  /*!< USART CR2 STOP Bits Mask */
#define CR2_CLOCK_CLEAR_Mask      ((uint16_t)0xF0FF)  /*!< USART CR2 Clock Mask */

#define CR3_SCEN_Set              ((uint16_t)0x0020)  /*!< USART SC Enable Mask */
#define CR3_SCEN_Reset            ((uint16_t)0xFFDF)  /*!< USART SC Disable Mask */

#define CR3_NACK_Set              ((uint16_t)0x0010)  /*!< USART SC NACK Enable Mask */
#define CR3_NACK_Reset            ((uint16_t)0xFFEF)  /*!< USART SC NACK Disable Mask */

#define CR3_HDSEL_Set             ((uint16_t)0x0008)  /*!< USART Half-Duplex Enable Mask */
#define CR3_HDSEL_Reset           ((uint16_t)0xFFF7)  /*!< USART Half-Duplex Disable Mask */

#define CR3_IRLP_Mask             ((uint16_t)0xFFFB)  /*!< USART IrDA LowPower mode Mask */
#define CR3_CLEAR_Mask            ((uint16_t)0xFCFF)  /*!< USART CR3 Mask */

#define CR3_IREN_Set              ((uint16_t)0x0002)  /*!< USART IrDA Enable Mask */
#define CR3_IREN_Reset            ((uint16_t)0xFFFD)  /*!< USART IrDA Disable Mask */
#define GTPR_LSB_Mask             ((uint16_t)0x00FF)  /*!< Guard Time Register LSB Mask */
#define GTPR_MSB_Mask             ((uint16_t)0xFF00)  /*!< Guard Time Register MSB Mask */
#define IT_Mask                   ((uint16_t)0x001F)  /*!< USART Interrupt Mask */

/**
  * @
}
  */

/** @defgroup USART_Private_Macros
  * @{

  */

/**
  * @
}
  */

/** @defgroup USART_Private_Variables
  * @{

  */

/**
  * @
}
  */

/** @defgroup USART_Private_FunctionPrototypes
  * @{

  */

/**
  * @
}
  */

/** @defgroup USART_Private_Functions
  * @{

  */

/**
  * @brief  Deinitializes the USARTx peripheral registers to their default reset values.
  * @param  USARTx: Select the USART or the UART peripheral. 
  *   			This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
  * @retval None
  */
void USART_DeInit(USART_TypeDef* USARTx)
{

  /* Check the parameters */
  assert_param(IS_USART_ALL_PERIPH(USARTx));

  if (USARTx == USART1)
  {

    RCC_APB2PeriphResetCmd(RCC_APB2Periph_USART1, ENABLE);
    RCC_APB2PeriphResetCmd(RCC_APB2Periph_USART1, DISABLE);
  
}
  else if (USARTx == USART2)
  {

    RCC_APB1PeriphResetCmd(RCC_APB1Periph_USART2, ENABLE);
    RCC_APB1PeriphResetCmd(RCC_APB1Periph_USART2, DISABLE);
  
}
  else if (USARTx == USART3)
  {

    RCC_APB1PeriphResetCmd(RCC_APB1Periph_USART3, ENABLE);
    RCC_APB1PeriphResetCmd(RCC_APB1Periph_USART3, DISABLE);
  
}    
  else if (USARTx == UART4)
  {

    RCC_APB1PeriphResetCmd(RCC_APB1Periph_UART4, ENABLE);
    RCC_APB1PeriphResetCmd(RCC_APB1Periph_UART4, DISABLE);
  
}    
  else
  {

    if (USARTx == UART5)
    {
 
      RCC_APB1PeriphResetCmd(RCC_APB1Periph_UART5, ENABLE);
      RCC_APB1PeriphResetCmd(RCC_APB1Periph_UART5, DISABLE);
    
}
  
}

}

/**
  * @brief  Initializes the USARTx peripheral according to the specified
  *   			parameters in the USART_InitStruct .
  * @param  USARTx: Select the USART or the UART peripheral. 
  *   			This parameter can be one of the following values:
  *   			USART1, USART2, USART3, UART4 or UART5.
  * @param  USART_InitStruct: pointer to a USART_InitTypeDef structure
  *   			that contains the configuration information for the specified USART peripheral.
  * @retval None
  */
void USART_Init(USART_TypeDef* USARTx , USART_InitTypeDef* USART_InitStruct)
{

  uint32_t tmpreg = 0x00, apbclock = 0x00;
  uint32_t integerdivider = 0x00;
  uint32_t fractionaldivider = 0x00;
  uint32_t usartxbase = 0;
  RCC_ClocksTypeDef RCC_ClocksStatus;
  /* Check the parameters */
  assert_param(IS_USART_ALL_PERIPH(USARTx));
  assert_param(IS_USART_BAUDRATE(USART_InitStruct->USART_BaudRate));  
  assert_param(IS_USART_WORD_LENGTH(USART_InitStruct->USART_WordLength));
  assert_param(IS_USART_STOPBITS(USART_InitStruct->USART_StopBits));
  assert_param(IS_USART_PARITY(USART_InitStruct->USART_Parity));
  assert_param(IS_USART_MODE(USART_InitStruct->USART_Mode));
  assert_param(IS_USART_HARDWARE_FLOW_CONTROL(USART_InitStruct->USART_HardwareFlowControl));
  /* The hardware flow control is available only for USART1, USART2 and USART3 */
  if (USART_InitStruct->USART_HardwareFlowControl != USART_HardwareFlowControl_None)
  {

    assert_param(IS_USART_123_PERIPH(USARTx));
  
}

  usartxbase = (uint32_t)USARTx;

/*---------------------------- USART CR2 Configuration -----------------------*/
  tmpreg = USARTx->CR2;
  /* Clear STOP[13:12] bits */
  tmpreg &= CR2_STOP_CLEAR_Mask;
  /* Configure the USART Stop Bits, Clock, CPOL, CPHA and LastBit ------------*/
  /* Set STOP[13:12] bits according to USART_StopBits value */
  tmpreg |= (uint32_t)USART_InitStruct->USART_StopBits;
  
  /* Write to USART CR2 */
  USARTx->CR2 = (uint16_t)tmpreg;

/*---------------------------- USART CR1 Configuration -----------------------*/
  tmpreg = USARTx->CR1;
  /* Clear M, PCE, PS, TE and RE bits */
  tmpreg &= CR1_CLEAR_Mask;
  /* Configure the USART Word Length, Parity and mode ----------------------- */
  /* Set the M bits according to USART_WordLength value */
  /* Set PCE and PS bits according to USART_Parity value */
  /* Set TE and RE bits according to USART_Mode value */
  tmpreg |= (uint32_t)USART_InitStruct->USART_WordLength | USART_InitStruct->USART_Parity |
            USART_InitStruct->USART_Mode;
  /* Write to USART CR1 */
  USARTx->CR1 = (uint16_t)tmpreg;

/*---------------------------- USART CR3 Configuration -----------------------*/  
  tmpreg = USARTx->CR3;
  /* Clear CTSE and RTSE bits */
  tmpreg &= CR3_CLEAR_Mask;
  /* Configure the USART HFC -------------------------------------------------*/
  /* Set CTSE and RTSE bits according to USART_HardwareFlowControl value */
  tmpreg |= USART_InitStruct->USART_HardwareFlowControl;
  /* Write to USART CR3 */
  USARTx->CR3 = (uint16_t)tmpreg;

/*---------------------------- USART BRR Configuration -----------------------*/
  /* Configure the USART Baud Rate -------------------------------------------*/
  RCC_GetClocksFreq(&RCC_ClocksStatus);
  if (usartxbase == USART1_BASE)
  {

    apbclock = RCC_ClocksStatus.PCLK2_Frequency;
  
}
  else
  {

    apbclock = RCC_ClocksStatus.PCLK1_Frequency;
  
}
  /* Determine the integer part */
  integerdivider = ((0x19 * apbclock) / (0x04 * (USART_InitStruct->USART_BaudRate)));
  tmpreg = (integerdivider / 0x64) << 0x04;
  /* Determine the fractional part */
  fractionaldivider = integerdivider - (0x64 * (tmpreg >> 0x04));
  tmpreg |= ((((fractionaldivider * 0x10) + 0x32) / 0x64)) & ((uint8_t)0x0F);
  /* Write to USART BRR */
  USARTx->BRR = (uint16_t)tmpreg;

}

/**
  * @brief  Fills each USART_InitStruct member with its default value.
  * @param  USART_InitStruct: pointer to a USART_InitTypeDef structure
  *   which will be initialized.
  * @retval None
  */
void USART_StructInit(USART_InitTypeDef* USART_InitStruct)
{

  /* USART_InitStruct members default value */
  USART_InitStruct->USART_BaudRate = 9600;
  USART_InitStruct->USART_WordLength = USART_WordLength_8b;
  USART_InitStruct->USART_StopBits = USART_StopBits_1;
  USART_InitStruct->USART_Parity = USART_Parity_No ;
  USART_InitStruct->USART_Mode = USART_Mode_Rx | USART_Mode_Tx;
  USART_InitStruct->USART_HardwareFlowControl = USART_HardwareFlowControl_None;  

}

/**
  * @brief  Initializes the USARTx peripheral Clock according to the 
  *   			specified parameters in the USART_ClockInitStruct .
  * @param  USARTx: where x can be 1, 2, 3 to select the USART peripheral.
  * @param  USART_ClockInitStruct: pointer to a USART_ClockInitTypeDef
  *   			structure that contains the configuration information for the specified 
  *   			USART peripheral.  
  * @note 	The Smart Card mode is not available for UART4 and UART5.
  * @retval None
  */
void USART_ClockInit(USART_T
...
...
(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

stm32f10x_usart.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