-
. z.
嵌入式系统实验报告
学 号:
if(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_8)==0) /* 如果SW1 PA8=0 */
-
. z.
{
GPIO_SetBits(GPIOF, GPIO_Pin_6); /* LED1点亮 */
Delay(0*1FFFFF);
GPIO_ResetBits(GPIOF, GPIO_Pin_6); /* LED1 熄灭 */ Delay(0*1FFFFF);
}
}
}
4、实验现象
原来5个LED灯都处于熄灭状态,按下SW1,触发中断程序,LED1点亮。
5、实验总结
通过本次实验,可以对*一状态通过外部中断,改变其当前状态。
实验四:多中断嵌套
1、实验要求
按下*个按键,触发中断,中断效劳程序改变LED灯状态
2、电路原理图
图4 SW1,SW2,SW3硬件原理图
3、软件分析
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
= E*TI0_IRQChannel; //设定中断源为PA0
= 0; //中断占优先级为0
= E*TI3_IRQChannel; //设定中断源为PD3
-
. z.
= 1; //中断占优先级为1
= E*TI9_5_IRQChannel; //设定中断源为PA8
= 2; //中断占优先级为2
void E*TI0_IRQHandler(void)
{
int i=0;
if(E*TI_GetITStatus(E*TI_Line0) != RESET)
{
for(i=0;i<10;i++)
{
GPIO_Write(GPIOF,0*ffff);
GPIO_SetBits(GPIOF, GPIO_Pin_6); /* LED1 点亮 */
Delay(0*5fFFFF);
GPIO_ResetBits(GPIOF, GPIO_Pin_6);/* LED1 熄灭 */
Delay(0*5fFFFF);
E*TI_ClearITPendingBit(E*TI_Line0);
} } }
-
. z.
void E*TI3_IRQHandler(void)
{
int i=0;
if(E*TI_GetITStatus(E*TI_Line3) != RESET)
{
for(i=0;i<10;i++)
{
GPIO_Write(GPIOF,0*ffff);
GPIO_SetBits(GPIOF, GPIO_Pin_7); /* LED2 点亮 */
-
. z.
Delay(0*5fFFFF);
GPIO_ResetBits(GPIOF, GPIO_Pin_7);/* LED2 熄灭 */
Delay(0*5fFFFF);
E*
嵌入式系统实验报告 来自淘豆网m.daumloan.com转载请标明出处.