<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 9G-STM32 MDK-ARM開發(fā)過程簡介

          9G-STM32 MDK-ARM開發(fā)過程簡介

          作者: 時間:2016-11-29 來源:網(wǎng)絡 收藏

          附件:
          1,serial.c 文件
          /* Includes ------------------------------------------------------------------*/
          #include "stm32f10x.h"
          #include "stm32f10x_conf.h"
          #include
          /* Private typedef -----------------------------------------------------------*/
          /* Private define ------------------------------------------------------------*/
          /* Private macro -------------------------------------------------------------*/
          /* Private variables ---------------------------------------------------------*/
          USART_InitTypeDef USART_InitStructure;
          GPIO_InitTypeDef GPIO_InitStructure;

          本文引用地址:http://www.ex-cimer.com/article/201611/323208.htm

          /* Private function prototypes -----------------------------------------------*/
          /* Private functions ---------------------------------------------------------*/
          void UART_Configuration(void)
          {
          /* Enable USART1 clocks */
          RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_USART1, ENABLE);

          /* Configure USART1_Tx as alternate function push-pull */
          GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;
          GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
          GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
          GPIO_Init(GPIOA, &GPIO_InitStructure);

          /* Configure USART1_Rx as input floating */
          GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10;
          GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
          GPIO_Init(GPIOA, &GPIO_InitStructure);
          /* USARTx configured as follow:
          - BaudRate = 115200 baud
          - Word Length = 8 Bits
          - One Stop Bit
          - No parity
          - Hardware flow control disabled (RTS and CTS signals)
          - Receive and transmit enabled
          */
          USART_InitStructure.USART_BaudRate = 115200;
          USART_InitStructure.USART_WordLength = USART_WordLength_8b;
          USART_InitStructure.USART_StopBits = USART_StopBits_1;
          USART_InitStructure.USART_Parity = USART_Parity_No;
          USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;
          USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;

          // STM_EVAL_COMInit(COM1, &USART_InitStructure);
          /* Configure the USARTx */
          USART_Init(USART1, &USART_InitStructure);
          /* Enable the USARTx */
          USART_Cmd(USART1, ENABLE);
          }

          /**
          * @brief Retargets the C library printf function to the USART.
          * @param None
          * @retval None
          */
          int fputc(int ch, FILE *f)
          {
          /* Place your implementation of fputc here */
          /* e.g. write a character to the USART */
          USART_SendData(USART1, (uint8_t) ch);

          /* Loop until the end of transmission */
          while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET)
          {}

          return ch;
          }

          #ifdef USE_FULL_ASSERT

          /**
          * @brief Reports the name of the source file and the source line number
          * where the assert_param error has occurred.
          * @param file: pointer to the source file name
          * @param line: assert_param error line source number
          * @retval None
          */
          void assert_failed(uint8_t* file, uint32_t 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", file, line) */
          printf("Wrong parameters value: file %s on line %d", file, line);
          /* Infinite loop */
          while (1)
          {
          }
          }
          #endif
          /******************* (C) COPYRIGHT 2009 STMicroelectronics *****END OF FILE****/

          2,main.c文件

          /* Includes ------------------------------------------------------------------*/
          #include "stm32f10x.h"
          #include "stm32f10x_conf.h"
          #include
          /* Private typedef -----------------------------------------------------------*/
          /* Private define ------------------------------------------------------------*/
          /* Private macro -------------------------------------------------------------*/
          /* Private variables ---------------------------------------------------------*/
          /* Private function prototypes -----------------------------------------------*/
          /* Private functions ---------------------------------------------------------*/
          extern void UART_Configuration(void);
          /**
          * @brief Main program.
          * @param None
          * @retval None
          */
          int main(void)
          {
          /* Setup STM32 system (clock, PLL and Flash configuration) */
          SystemInit();

          UART_Configuration();

          /* Output a message on Hyperterminal using printf function */
          printf("");
          printf("*** STM32-MDK V1.0 Build byyuanxihua@21cn.comon ("__DATE__ " - " __TIME__ ")");
          printf("*** STM32-MDK V1.0 Rebooting ...");

          /* Add your application code here
          */

          /* Infinite loop */
          while (1)
          {
          }
          }
          /******************* (C) COPYRIGHT 2009 STMicroelectronics *****END OF FILE****/


          上一頁 1 2 下一頁

          關(guān)鍵詞: STM32MDKARM開

          評論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();