芯片与寄存器
作为一个嵌入式开发人员,从接触第一块单片机的时候,就一定会听到一个此,叫做寄存器。
单片机的很多功能都是通过配置修改寄存器来实现的。我们了解寄存器,也读写过很多的寄存器
一、操作过得寄存器
先回顾一下我们以前操作过得寄存器:
这是一段51单片机初始化定时器的代码
void TIME_Init() { TMOD = 0x11; TL0 = 0; TH0 = 0; TL1 = 0; TH1 = 0; TR0 = 1; TR1=0; //秒表计数不开启 ET1=1; ET0 = 1; EA = 1; }
这是当年一段stm32配置定时器的代码,没有使用库操作,不过有一个好处,代码结构体都有官方帮忙定义好了,当时还不太理解,只是照猫画虎去写的。
void TIM3_Int_Init(u16 arr,u16 psc) { RCC->APB1ENR|=1<<1; //TIM3时钟使能 TIM3->ARR=arr; //设定计数器自动重装值 TIM3->PSC=psc; //预分频器设置 TIM3->DIER|=1<<0; //允许更新中断 TIM3->CR1&=~(1<<0); //关闭定时器3