====================================================GPIOA的初始化==============================================================
#include "stm32f10x_gpio.h"
void GPIO_Configuration(void)
{
GPIO_InitTypeDef GPIO_InitStructure;//声明一个结构体变量
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5;//设置引脚
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;//设置引脚速率
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;//设置引脚工作模式
GPIO_Init(GPIOB, &GPIO_InitStructure);//初始化GPIO的寄存器
}
====================================================USART的初始化==============================================================
#include "stm32f10x_usart.h"
void USART3_Configuration(void)
{
USART_InitTypeDef U3;//定义一个结构体
U3.USART_BaudRate = 9600;//设置波特率
U3.USART_WordLength = USART_WordLength_8b;//设置字长为8位
U3.USART_StopBits = USART_StopBits_1;//设置一个停止位
U3.USART_Parity = USART_Parity_No;//不需要奇偶校验
U3.USART_HardwareFlowControl = USART_HardwareFlowControl_None;//不要硬件流控制(不用调制解调器)
U3.USART_Mode = USART_Mode_Tx | USART_Mode_Rx;//发送和接收使能
USART_Init(USART3, &U3);//初始化结构体
USART_Cmd(USART3, ENABLE);//使能USART3
}
发送数据:
USART_SendData(USART3,Data);//发送数据
while(USART_GetFlagStatus(USART3, USART_FLAG_TC) == RESET);//取发送完成标志位,发送完成则退出等待
====================================================USART的printf的应用=========================================================
#include<stdio.h>
int fputc(int ch,FILE *f)
{
USART_SendData(USART1,ch); //ch送给USART1
while(USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET);//等待发送完毕
return ch;//返回ch
}
运用:
printf("xy");//可以通过这个函数进行串口的打印
=======================================================位绑定的应用=============================================================
u32 *PAO3=(u32 *)(0x42000000+(addr_BASE+addr)*32+n*4);//addr_BASE为外设基地址,如:GPIOA_BASE addr为寄存器相对外设基地址的便宜地址(可在库里查找)
运用:
u32 *PAO3=(u32 *)(0x42000000+(GPIOA_BASE+0X0000000C)*32+3*4);//设置PA口,三号引脚为位绑定
*PAO3 = 1;//对这个引脚进行置一
=======================================================复用和重映射功能===========================================================
GPIO_Configuration();//设置复用功能的引脚,具体复用的引脚查看参考手册:复用重映射和调试I/O 配置寄存器(AFIO_MAPR)
GPIO_PinRemapConfig(GPIO_PartialRemap_USART3, ENABLE);//USART3 复用功能部分映射
USART3_Configuration();//初始化复用的外设
==============================================================取ID号=====================