欢迎来到天天文库
浏览记录
ID:48534734
大小:819.50 KB
页数:14页
时间:2020-01-26
《ARM实训报告汇总.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实训一、绘出STM32开发板的MCU外围硬件连接图学生:吴磊郑黄庆阿不力孜指导老师:王宜结电子工程学院电子信息工程一、实训目的1.握STM32开发板的封装和引脚2.能够测量开发板外围器件与STM32芯片的实际连接,并画出电路图二、实训内容1.画出开发板上MCU与发光二极管DS0、DS1的连接示意图2.画出开发板上MCU与按键KEY0、KEY1、KRY2、KEYM的连接示意图3.画出开发板上MCU与24C02芯片的连接示意图4.画出开发板上MCU与W25X16芯片的连接示意图5.画出开发板上MCU与温度传感器18B20的连接示意图6.画出
2、开发板上MCU与2.8寸液晶的连接示意图7.画出开发板上MCU与红外接收头的连接示意图8.画出开发板上MCU与PL2302芯片的连接示意图三、实训过程1、MCU图1图1中上部的BOOT1用于设置STM32的启动方式,其对应启动模式如下表所示:表1第13页我们用串口下载代码,则配置BOOT0为1,BOOT1为0即可,如果想让STM32一按复位键就开始跑代码,则需要配置BOOT0为0,BOOT1随便设置都可以。2、LED图2其中PWR是系统电源指示灯,为蓝色。LED0和LED1分别接在PA8和PD2上,PA8还可以通过TIM1的通道1的PW
3、M输出来控制DS0的亮度。为了方便大家判断,我们选择了DS0为红色,DS1为绿色的LED灯。3、按键图3KEY0、KEY1和KEY2用作普通按键输入,分别连接在PA13、PA15和PA14上。WK_UP按键连接到PA0(STM32的WKUP引脚),它除了可以用作普通输入按键外,还可以用作STM32的唤醒输入。4、EEPROMALIENTEKMiniSTM32自带了24C02的EEPROM芯片,该芯片的容量为2Kbit,也就是256个字节。第13页图4这里我们把A0~A2均接地,对24C02来说也就是把地址位设置成了0了。5、SPIFLA
4、SHALIENTEKMiniSTM32开发板载有SPIFLASH芯片W25X16,该芯片的容量为2M字节。图56、温度传感器图67、2.8寸液晶连接示意图第13页图78、红外接收头示意图REMOTE_IN接到P2的第二脚,也没有直接接在MCU的IO口上,目的也是防止IO口在做其他功能使用的时候,收到红外信号的干扰。图88、USB采用PL_2303芯片,为28引脚的SSOP封装。如图9.图9第13页实训二:跑马灯与按键输入学生:吴磊郑黄庆阿不力孜指导老师:王宜结电子工程学院电子信息工程一、实训目的1.掌握STM32项目开发流程;2.学会画
5、出算法流程图;3.掌握按键、LED的控制编程;二、实训内容1、实现LED0和LED1交替闪烁,间隔300ms.三、实训要求1、用C语言实现算法;2、建立工程项目,生成目标文件;3、将目标文件编程下载到开发板,观察结果是否满足设计要求;四、硬件设计该实验的硬件电路在ALIENTEMMiniSTM32开发板上默认是已经连接好了的。DS0接PA8,DS1接PD2。所以在硬件上不需要动任何东西。其连接原理图如下:五、软件程序#include#include#include"l
6、ed.h"voidLED_Init(void)//该函数的功能就是用来实现配置PA8和PD2为推挽输出,在配置STM32外设的时候,任何时候都要先使能该外设时钟{RCC->APB2ENR
7、=1<<2;//使能PORTA时钟,APB2ENR是APB2总线上的外设时钟使能寄存器RCC->APB2ENR
8、=1<<5;//使能PORTD时钟//端口时钟的配置A和D看一下寄存器APB2ENR各位的含义GPIOA->CRH&=0XFFFFFFF0;第13页GPIOA->CRH
9、=0X00000003;//PA8推挽输出GPIOA->ODR
10、=1<<
11、8;//PA8输出高GPIOD->CRL&=0XFFFFF0FF;GPIOD->CRL
12、=0X00000300;//PD.2推挽输出GPIOD->ODR
13、=1<<2;//PD.2输出高}该代码里面就包含了一个函数voidLED_Init(void),该函数的功能就是用来实现配置,PA8和PD2为推挽输出。在配置STM32外设的时候,任何都要先使能该钟!APB2ENR是APB2总线上的外设时钟使能寄存器。#include"sys.h"#include"usart.h"#include"delay.h"#include"led.h"intm
14、ain(void){Stm32_Clock_Init(9);//系统时钟设置delay_init(72);//延时初始化LED_Init();//初始化与LED连接的硬件接口while(1){LED0=0;
此文档下载收益归作者所有