ARM实训报告汇总[务实运用]_第1页
ARM实训报告汇总[务实运用]_第2页
ARM实训报告汇总[务实运用]_第3页
ARM实训报告汇总[务实运用]_第4页
ARM实训报告汇总[务实运用]_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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. 画出开发板上MCU与2.8寸液晶的连接示

2、意图7. 画出开发板上MCU与红外接收头的连接示意图8. 画出开发板上MCU与PL2302芯片的连接示意图三、实训过程1、MCU图1图1中上部的BOOT1用于设置STM32的启动方式,其对应启动模式如下表所示:表1我们用串口下载代码,则配置BOOT0为1,BOOT1为0即可,如果想让STM32一按复位键就开始跑代码,则需要配置BOOT0为0,BOOT1随便设置都可以。2、LED图2其中PWR是系统电源指示灯,为蓝色。LED0和LED1分别接在PA8和PD2上,PA8还可以通过TIM1的通道1的PWM输出来控制DS0的亮度。为了方便大家判断,我们选择了DS0为红色,DS1为绿色的LED灯。3、按

3、键图3KEY0、KEY1和KEY2用作普通按键输入,分别连接在PA13、PA15和PA14上。WK_UP按键连接到PA0(STM32的WKUP引脚),它除了可以用作普通输入按键外,还可以用作STM32的唤醒输入。4、EEPROMALIENTEK MiniSTM32自带了24C02的EEPROM芯片,该芯片的容量为2Kbit,也就是256个字节。图4这里我们把A0A2均接地,对24C02来说也就是把地址位设置成了0了。5、SPI FLASHALIENTEK MiniSTM32开发板载有SPI FLASH芯片W25X16,该芯片的容量为2M字节。图56、温度传感器图67、2.8寸液晶连接示意图图7

4、8、红外接收头示意图REMOTE_IN接到P2的第二脚,也没有直接接在MCU的IO口上,目的也是防止IO口在做其他功能使用的时候,收到红外信号的干扰。图88、USB采用PL_2303芯片,为28引脚的SSOP封装。如图9.图9实训二:跑马灯与按键输入学生:吴磊 郑黄庆 阿不力孜指导老师:王宜结电子工程学院 电子信息工程一、 实训目的1. 掌握STM32项目开发流程;2. 学会画出算法流程图;3. 掌握按键、LED的控制编程;二、 实训内容1、实现LED0和LED1交替闪烁,间隔300ms.三、 实训要求1、 用C语言实现算法;2、 建立工程项目,生成目标文件;3、 将目标文件编程下载到开发板,

5、观察结果是否满足设计要求;四、 硬件设计该实验的硬件电路在ALIENTEM Mini STM32开发板上默认是已经连接好了的。DS0接 PA8,DS1接PD2。所以在硬件上不需要动任何东西。其连接原理图如下:五、软件程序#include #include #include led.hvoid LED_Init(void)/该函数的功能就是用来实现配置PA8和PD2为推挽输出 ,在配置STM32外设的时候,任何时候都要先使能该外设时钟RCC-APB2ENR|=1APB2ENR|=1CRH&=0XFFFFFFF0; GPIOA-CRH|=0X00000003;/PA8 推挽输出 GPIOA-ODR

6、|=1CRL&=0XFFFFF0FF;GPIOD-CRL|=0X00000300;/PD.2推挽输出GPIOD-ODR|=1SR&0X40)=0);/循环发送,直到发送完毕 USART1-DR = (u8) ch; return ch;#endif #ifdef EN_USART1_RX /如果使能了接收u8 USART_RX_BUF64; /接收缓冲,最大64个字节.u8 USART_RX_STA=0; /接收状态标记 void USART1_IRQHandler(void)u8 res; if(USART1-SR&(1DR; if(USART_RX_STA&0x80)=0)/接收未完成if

7、(USART_RX_STA&0x40)/接收到了0x0dif(res!=0x0a)USART_RX_STA=0;/接收错误,重新开始else USART_RX_STA|=0x80;/接收完成了 else /还没收到0X0Dif(res=0x0d)USART_RX_STA|=0x40;elseUSART_RX_BUFUSART_RX_STA&0X3F=res;USART_RX_STA+;if(USART_RX_STA63)USART_RX_STA=0; #endif void uart_init(u32 pclk2,u32 bound) float temp;u16 mantissa;u16 f

8、raction; temp=(float)(pclk2*1000000)/(bound*16);/得到USARTDIVmantissa=temp; /得到整数部分fraction=(temp-mantissa)*16; /得到小数部分 mantissaAPB2ENR|=1APB2ENR|=1CRH&=0XFFFFF00F; GPIOA-CRH|=0X000008B0;/IO状态设置 RCC-APB2RSTR|=1APB2RSTR&=(1BRR=mantissa; / 波特率设置 USART1-CR1|=0X200C; /1位停止,无校验位.#ifdef EN_USART1_RX /如果使能了接收USART1-CR1|=1CR1|=1PR=1PR=1PR=1APB2ENR|=1CRL&=0XFFFFFFF0;/PA0设置成输入 GPIOA-CRL|=0X00000008; GPIOA-CRH&=0X0F0FFFFF;/PA13,15设置成输入 GPIOA-CRH|=0X80800000; GPIOA-ODR|=1ODR|=1SR&0X0001)/溢出中断LED1=!LED1; TIM3-SR&=(1APB1ENR|=1ARR=arr; /设定计

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论