嵌入式系统实验报告学 号:姓名:班级:13电子信息工程指导老师:苏州大学 电子信息学院2016年12月实验一:一个灯的闪烁实验要求实现PF6-10端口所连接的任意一个LED灯点亮2、电路原理图图1LED灯硬件连接图3、软件分析 RCC_Configuration(); /*配置系统时钟*/ GPIO_Configuration(); /*配置GPIOIO口初始化*/ for(;;) { GPIOF->ODR=0xfcff; /*PF8=0-->点亮D3*/ Delay(1000000); GPIOF->ODR=0xffff; /*PF8=1-->熄灭D3*/ Delay(1000000);4、实验现象通过对GPIOF8的操作,可以使LED3闪烁实验总结这是第一次使用STM32开发板,主要内容是对IO端口进行配置,点亮与IO端口相连接的LED灯,闪烁周期为2S。通过本实验对STM32开发板的硬件原理有了初步了解。实验二:流水灯1、实验要求实现PF6-10端口所连接的5个LED灯顺次亮灭2、电路原理图图1流水灯硬件连接图3、软件分析intmain(void){ RCC_Configuration();/*配置系统时钟*/ GPIO_Configuration();/*配置GPIOIO口初始化*/for(;;) { GPIOF->ODR=0xffbf; /*PF6=0-->点亮LED1*/ Delay(5000000); GPIOF->ODR=0xff7f; /*PF7=0-->点亮LED2*/ Delay(5000000); GPIOF->ODR=0xfeff; /*PF8=0-->点亮LED3*/ Delay(5000000); GPIOF->ODR=0xfdff; /*PF9=0-->点亮LED4*/ Delay(5000000); GPIOF->ODR=0xfbff; /*PF10=0-->点亮LED5*/}}4、实验现象LED1~LED5依次点亮,亮灭的时间间隔都为1S。5、实验总结本次实验对STM32开发板的GPIO端口进行进一步学习,通过程序可以实现流水灯的闪烁。实验三:单级外部中断1、实验要求按下某个按键,触发中断,中断服务程序改变LED灯状态2、电路原理图图3SW1硬件原理图3、软件分析intmain() { RCC_Configuration(); /*配置系统时钟*/ GPIO_Configuration(); /*IO口初始化*/ GPIO_Write(GPIOF,0xffff); /*全灭*/ Delay(5000); while(1) { if(GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_8)==0)/*如果SW1PA8=0*/ { GPIO_SetBits(GPIOF,GPIO_Pin_6); /*LED1点亮*/ Delay(0x1FFFFF); GPIO_ResetBits(GPIOF,GPIO_Pin_6); /*LED1熄灭*/ Delay(0x1FFFFF); }}}4、实验现象原来5个LED灯都处于熄灭状态,按下SW1,触发中断程序,LED1点亮。5、实验总结通过本次实验,可以对某一状态通过外部中断,改变其当前状态。实验四:多中断嵌套1、实验要求按下某个按键,触发中断,中断服务程序改变LED灯状态2、电路原理图图4SW1,SW2,SW3硬件原理图3、软件分析NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);=EXTI0_IRQChannel; //=0;//=EXTI3_IRQChannel; //=1;//=EXTI9_5_IRQChannel;//=2;//中断占优先级为2voidEXTI0_IRQHandler(void){inti=0;if(EXTI_GetITStatus(EXTI_Line0)!=RESET){for(i=0;i<10;i++){ GPIO_Write(GPIOF,0xffff); GPIO_SetB
嵌入式系统实验报告 来自淘豆网m.daumloan.com转载请标明出处.