2018.7.23

学习日志                     姓名:   徐雪         日期: 2017.07.23

今日学习任务

 今天上午主要讲的基本理论知识,安装环境,下午主要用寄存器点亮一个灯,自己写固件库的模板,然后自己用固件库点亮一个灯。 

 

 

日任务完成情况

(详细说明本日任务是否按计划完成,开发的代码量。)

 

今日任务已按计划完成。在老师的指导下 完成了用寄存器点亮一个灯,搭建固件库的模板。

今日开发中遇到的问题汇总

  编程时一段结束需要空一行,不然编译会出错;

  利用寄存器控制LED需要startup启动文件;

日未解决问题

日开发收获

1. 32— 32bit的意思,表示这是一个32bit的微控制器

2.最小系统由电源,晶振,下载,BOOT,复位组成

3.普通的原件要接地GPIO

4.固件库具备一定的规范性,对所有的外设都有涉及

,操作的是最底层的设备;

 

自我评价

(是否规范完成指定任务,需要改进的地方,与他人合作等。)

  规范地完成了任务,上课进度有点跟不上,因为还不是很熟悉STM32的基础知识,手上操作比较生疏。

            其他

                无  

 

 

 

 

#include "stm32f4xx.h"

int main(void)

{

  RCC_AHB1ENR |=(1<<2);

 

  GPIOC_MODER &=~(3<<2);     

  GPIOC_MODER |= (1<<2);

 

 GPIOC_OTYPER &= ~(1<<1);

 

 GPIOC_OSPEEDR &=~(3<<2);    

 GPIOC_OSPEEDR |= (2<<2);   

 

   GPIOC_ODR |=(1<<1);

}

 

void SystemInit(void)

{

}

 

 

 

 

 

#ifndef _STM32F4XX_H

#define _STM32F4XX_H

 

#define PERIPH_BASE                          (0x40000000)

#define AHB1PERIPH_BASE                     (PERIPH_BASE+20000)//»ùµØÖ·¼ÓÆ«ÒÆÁ¿

 

#define RCC_BASE                           (AHB1PERIPH_BASE+0x3800)

#define RCC_AHB1ENR                           *(unsigned int *)(RCC_BASE +0x30)

 

#define GPIOC                                (AHB1PERIPH_BASE+0x800)

#define GPIOC_MODER                        *(unsigned int *)(GPIOC+0x00)

#define GPIOC_OTYPER                       *(unsigned int *)(GPIOC+0x04)

#define GPIOC_OSPEEDR                      *(unsigned int *)(GPIOC+0x08)

#define GPIOC_PUPDR                       *(unsigned int *)(GPIOC+0x0c)

#define GPIOC_ODR                         *(unsigned int *)(GPIOC+0x14)

 

#endif

 

你可能感兴趣的:(2018.7.23)