stm32f103 rcc时钟寄存器设置和usart寄存器

本文介绍了作者在理解STM32F103 RCC时钟寄存器设置过程中遇到的问题,以及如何解决。通过使用Mac自带的编程计算器,作者纠正了之前关于时钟设置的错误。此外,文章还分享了自己使用STM32F103C8T6(蓝色药丸板)进行串口通信的实践,通过寄存器方式配置串口发送数据,并提及LED灯连接到Port C的13脚。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这几天把rcc时钟搞明白了。其实主要是流程 看错了计算器1到31位,结果是错位了,一直找不到原因。

原来mac 自带编程计算器也是从0到31

stm32中文手册讲得比较明白

自己摸索下设置了串口发送数据

自己用的是蓝色药丸 (blue pill )淘宝10块不到一小块 stm32f103c8t6

led灯是portc 13脚

本程序全部是用寄存器方式设置


#include "stm32f10x_lib.h"
#include <stdio.h>
#include "sys.h"
//测试c++ 
class LED
{
public:
  LED();
  ~LED();
  
};

void delay(void) 
{ 
    volatile unsigned int i; 
    for( i = 0; i < 0x3fffff; ++i);
} 
void delay_ms(void) 
{ 
    volatile unsigned int i; 
    for( i = 0; i < 0x55; ++i);
} 
void MY_NVIC_SetVectorTable(u32 NVIC_VectTab, u32 Offset)	 
{ 	   	 
	SCB->VTOR = NVIC_VectTab|(Offset & (u32)0x1FFFFF80);//设置NVIC的向量表偏移寄存器
	//用于标识向量表是在CODE区还是在RAM区
}
void MYRCC_DeInit(void)
{	
 	RCC->APB1
### STM32F103C8T6 寄存器手册概述 STM32F103C8T6是一款基于ARM Cortex-M3内核的微控制器,广泛应用于各种嵌入式系统开发中。为了更好地理解使用这款微控制器,掌握其内部寄存器的功能配置至关重要。 #### 获取STM32F103C8T6寄存器手册的方法 对于希望深入了解STM32F103C8T6寄存器结构及其功能的应用开发者而言,可以从指定项目地址获取官方发布的寄存器手册[^1]: - **下载链接**: [点击这里](https://gitcode.com/Open-source-documentation-tutorial/caed1) 该资源提供了详细的硬件描述以及如何通过编程访问各个外设的具体指导,包括但不限于GPIO、定时器、串口通信接口等重要模块的操作指南。 #### 使用寄存器手册的有效方式 当阅读此类技术文档时,建议按照以下方面来利用这些资料: - 查看每种外设有何特殊之处; - 学习不同工作模式下的设置方法; - 掌握中断处理机制; - 明确各控制位的作用范围与影响; 此外,在实际编码过程中遇到困难时也可以随时查阅相应章节作为参考依据。 ```c // 示例代码:初始化USART1波特率为9600bps RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE); // 使能USART1时钟 USART_InitTypeDef USART_InitStructure; USART_InitStructure.USART_BaudRate = 9600; // 设置波特率 USART_InitStructure.USART_WordLength = USART_WordLength_8b;// 字长为8位数据格式 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; // 收发模式均开启 USART_Init(USART1,&USART_InitStructure); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值