• 大小: 37KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-14
  • 语言: 其他
  • 标签: STM32  

资源简介

STM32的USART串口查询方式(库函数)。内有详细的注释和文档。很好的学习资料。

资源截图

代码片段和文件信息

/*----------------------------------------------------------------------------
QQ: 958664258
21IC用户名:banhushui
交流平台:http://blog.21ic.com/user1/5817/index.html

旺旺:半壶水电子
编译器版本:MDK4.12
 *---------------------------------------------------------------------------*/

/* Includes ------------------------------------------------------------------*/
#define SYS_GLOBALS
#include “include.h“


/* Private function prototypes -----------------------------------------------*/
void RCC_Configuration(void);
void NVIC_Configuration(void);
void GPIO_Configuration(void);
void USART1_InitConfig(uint32 BaudRate);
/* Private functions ---------------------------------------------------------*/

//考虑到效率问题,串口初始化用库函数
//串口收发函数仍然直接操作寄存器
/*----------------------------------------------------------------------------
  从串口发送一个字节数据
  Write character to Serial Port.
 *----------------------------------------------------------------------------*/
int SendChar (int ch)  {

  //等待发送结束
  while (!(USART1->SR & USART_FLAG_TXE));
  //将数据放入发送寄存器
  USART1->DR = (ch & 0x1FF);

  return (ch);
}

/*----------------------------------------------------------------------------
  从串口读取一个字节数据,直到读到数据才返回
  Read character to Serial Port.
 *----------------------------------------------------------------------------*/
int GetKey (void)  {

  //等待接收结束
  while (!(USART1->SR & USART_FLAG_RXNE));
  //从接受寄存器读取数据并返回
  return ((int)(USART1->DR & 0x1FF));
}

/*******************************************************************************
* Function Name  : main
* Description    : Main program.
* Input          : None
* Output         : None
* Return         : None
*******************************************************************************/
int main(void)
{
#ifdef DEBUG
  debug();
#endif

  /* System Clocks Configuration */
  RCC_Configuration();//配置系统时钟   

  GPIO_Configuration();//配置GPIO
  

  /* NVIC configuration */
  NVIC_Configuration();//配置中断

  //配置串口
  USART1_InitConfig(115200);

  //串口实验开始
  printf (“Polling mode Serial I/O Example\r\n\r\n“);

  while (1)
  {                                     // Loop forever
    unsigned char c;
    //提示从串口输入1个字符
    printf (“Press a key. “);
    //从串口接收1个字符
    c = getchar ();
    //从串口输出回车换行
    printf (“\r\n“);
    //从串口输出接收到的字符
    printf (“You pressed ‘%c‘.\r\n\r\n“ c);
  } // end while
  
}

//串口初始化函数
void USART1_InitConfig(uint32 BaudRate)
{USART_InitTypeDef USART_InitStructure;
 GPIO_InitTypeDef GPIO_InitStructure; 
  
  //使能串口的RCC时钟
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1 | RCC_APB2Periph_GPIOA ENABLE);
  
  //串口使用的GPIO口配置
  //配置串口接收脚
  /* Configure USART1 Rx (PA.10) as input floating */
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
  GPIO_Init(GPIOA &GPIO_InitStructure);
  
  /* Configure USART1 Tx (PA.09) as alternate function push-pull */
  //配置串口发送脚
  GPIO_InitStructure.GP

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        459  2009-07-05 18:17  BHS-STM32 实验14-USART串口查询方式(库函数)\main\globals.h

     文件        256  2011-01-31 15:38  BHS-STM32 实验14-USART串口查询方式(库函数)\main\include.h

     文件       8170  2017-11-27 20:48  BHS-STM32 实验14-USART串口查询方式(库函数)\main\main.c

     文件       1246  2009-06-28 23:57  BHS-STM32 实验14-USART串口查询方式(库函数)\main\main.h

     文件      12814  2009-01-18 15:39  BHS-STM32 实验14-USART串口查询方式(库函数)\main\myuse.h

     文件       2094  2011-06-10 13:46  BHS-STM32 实验14-USART串口查询方式(库函数)\main\Project.Opt

     文件       7685  2011-01-31 16:09  BHS-STM32 实验14-USART串口查询方式(库函数)\main\Project.Uv2

     文件     155610  2011-06-08 21:15  BHS-STM32 实验14-USART串口查询方式(库函数)\main\Project.uvopt

     文件      46513  2011-06-07 00:09  BHS-STM32 实验14-USART串口查询方式(库函数)\main\Project.uvproj

     文件       1257  2009-06-29 16:13  BHS-STM32 实验14-USART串口查询方式(库函数)\main\RAM.ini

     文件       2800  2008-09-23 09:24  BHS-STM32 实验14-USART串口查询方式(库函数)\main\readme.txt

     文件       2384  2008-09-23 09:20  BHS-STM32 实验14-USART串口查询方式(库函数)\main\Retarget.c

     文件       6311  2008-09-23 09:24  BHS-STM32 实验14-USART串口查询方式(库函数)\main\stm32f10x_conf.h

     文件      29423  2011-01-31 15:02  BHS-STM32 实验14-USART串口查询方式(库函数)\main\stm32f10x_it.c

     文件       3842  2008-09-23 09:24  BHS-STM32 实验14-USART串口查询方式(库函数)\main\stm32f10x_it.h

     文件      12871  2008-09-23 09:24  BHS-STM32 实验14-USART串口查询方式(库函数)\main\stm32f10x_vector.s

     文件        174  2011-02-10 20:25  BHS-STM32 实验14-USART串口查询方式(库函数)\main\说明.txt

     文件       6396  2011-01-31 16:02  BHS-STM32 实验14-USART串口查询方式(库函数)\out\ObjFlash\BHS-STM32-FLASH.hex

     文件        479  2011-01-31 14:44  BHS-STM32 实验14-USART串口查询方式(库函数)\out\ObjFlash\BHS-STM32-FLASH.sct

     文件        229  2011-01-31 14:44  BHS-STM32 实验14-USART串口查询方式(库函数)\out\ObjFlash\stm32f10x_vector._ia

     文件        479  2010-12-22 17:44  BHS-STM32 实验14-USART串口查询方式(库函数)\out\ObjRAM\BHS-STM32-RAM.sct

     文件         19  2011-02-06 21:09  BHS-STM32 实验14-USART串口查询方式(库函数)\out\ObjRAM\ExtDll.iex

     文件        174  2011-06-10 13:46  BHS-STM32 实验14-USART串口查询方式(库函数)\out\ObjRAM\stm32f10x_vector._ia

     文件        479  2010-12-29 00:28  BHS-STM32 实验14-USART串口查询方式(库函数)\out\ObjSim\STM32.sct

     文件        258  2011-06-08 21:07  BHS-STM32 实验14-USART串口查询方式(库函数)\out\ObjSim\stm32f10x_vector._ia

     目录          0  2016-07-07 18:38  BHS-STM32 实验14-USART串口查询方式(库函数)\out\LstFlash

     目录          0  2016-07-07 18:38  BHS-STM32 实验14-USART串口查询方式(库函数)\out\LstRAM

     目录          0  2016-07-07 18:38  BHS-STM32 实验14-USART串口查询方式(库函数)\out\LstSim

     目录          0  2017-11-27 20:47  BHS-STM32 实验14-USART串口查询方式(库函数)\out\ObjFlash

     目录          0  2017-11-27 20:47  BHS-STM32 实验14-USART串口查询方式(库函数)\out\ObjRAM

............此处省略7个文件信息

评论

共有 条评论