这几天把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