毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> 嵌入式 >> 正文

STM32如何使用LSE时钟

更新时间:2012-11-2:  来源:毕业论文

STM32如何打开LSE时钟.

开发板是万利公司的STM32F107VC-PKT.
HSE是25Mhz晶振
LSE是32.768Mhz晶振
使用IAR的编译器.
代码如下:
 
BIT6 EQU 0x00000040 ;字第6个位为1
RCC_CR EQU 0x40021000 ;时钟控制寄存器
RCC_CFGR EQU 0x40021004 ;时钟配置寄存器
RCC_CFGR2 EQU 0x4002102C ;时钟配置寄存器2
RCC_CIR EQU 0x40021008 ;时钟中断寄存器
RCC_AHBRSTR EQU 0x40021028 ;AHB外设时钟复位寄存器
RCC_APB2RSTR EQU 0x4002100C ;APB2外设复位寄存器
RCC_APB1RSTR EQU 0x40021010 ;APB1外设复位寄存器
RCC_AHBENR EQU 0x40021014 ;AHB外设使能寄存器
RCC_APB2ENR EQU 0x40021018 ;APB2外设使能寄存器
RCC_APB1ENR EQU 0x4002101C ;APB1外设使能寄存器
RCC_BDCR EQU 0x40021020 ;备份域控制寄存器
RCC_CSR EQU 0x40021024 ;控制/状态寄存器
__iar_program_start ;CPU复位后从这里开始执行
main
  ;打开HSE
  LDR R0, =RCC_CFGR2
  MOVW R1, #0x0001
  STR R1, [R0] ,#0 ;设置PREDIV1为2分频=12.5MHz
  MOV R1, #0
  LDR R1,[R0] ;读取配置寄存器2值
   
  LDR R0, =RCC_CFGR
  MOVW R1, #0x0401 ;设置为HSE时钟为系统时钟
  ;MOVW R1, #0x0402 ;设置AHB不分频(50M),APB1-2分频(25M),APB2-不分频(50M),SW-0x01设置为使用HSE时钟,0x02设置PLL时钟
  MOVT R1, #0x0009 ;0x09是位23:16,转换B00001001,设置PLLMUL为4倍频=12.5*4=50MHz,PLLSRC=1
  ;MOVT R1, #0x001D ;0x15是位23:16,转换B00011101,设置PLLMUL为9倍频=12.5*7=50MHz,PLLSRC=1,触发中断
  STR R1, [R0] ,#0
  MOV R1, #0
  LDR R1,[R0] ;读取配置寄存器值
   
  LDR R0, =RCC_CR
  MOVT R1, #0x0109  
  STR R1, [R0] ,#0 ;配置好参数,最后使能PLLON和HSEON,并打开CSSON
  MOV R1, #0
  LDR R1,[R0] ;读取控制寄存器值

[1] [2] 下一页

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©lwfree.com 六维论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。