精选优质文档-----倾情为你奉上
精选优质文档-----倾情为你奉上
专心---专注---专业
专心---专注---专业
精选优质文档-----倾情为你奉上
专心---专注---专业
南京邮电大学通达学院
实--专注---专业
精选优质文档-----倾情为你奉上
专心---专注---专业
如上图所示, 通过控制 4 个 GPIO 口 GPB5 、 GPB6 、 GPB8 、 GPB10,来实现对四个发光二极管 LED0 、LED1、LED2、LED3 亮灭的控制。
实验程序:
/*
本实验接口说明
GPB5 ------ LED0
GPB6 ------ LED1
GPB8 ------ LED2
GPB10 ------ LED3
*/
/*------------------------地址声明---------------------------*/
#define GPBCON (*(volatile unsigned *)0x)
精选优质文档-----倾情为你奉上
精选优质文档-----倾情为你奉上
专心---专注---专业
专心---专注---专业
精选优质文档-----倾情为你奉上
专心---专注---专业
#define GPBDAT (*(volatile unsigned *)0x)
#define GPBUP (*(volatile unsigned *)0x)
#define uchar unsigned char
#define uint unsigned int
/*-----------------------定义全局变量------------------------*/
/*-----------------------函数声明----------------------------*/
void Delay(int x);
/*------------------------------------------------------------/
函数名称: Delay
功能描述: 延时函数
传 参: int x
返 回 值: 无
-------------------------------------------------------------*/
void Delay(int x)
{
int k, j;
while(x)
{
for (k=0;k<=0xff;k++)
for(j=0;j<=0xff;j++);
x--;
}
}
/*-------------------------------------------------------------
函数名称: ledMain
功能描述: 入口程序
初始化后,进入跑马灯死循环
传 参: 无
返 回 值: int 0
-------------------------------------------------------------*/
int ledMain(void)
{
GPBCON = 0x1dd7fc; // GPB5,GPB6,GPB8,GPB10设置为输出
GPBDAT = ((1<<5)|(1<<6)|(1<<8)|(1<<10)); //使LED全灭
GPBDAT&=0xffe; //关闭蜂鸣器
GPBUP = 0x00;
while (1) // 死循环
精选优质文档-----倾情为你奉上
精选优质文档-----倾情为你奉上
专心---专注---专业
专心---专注---专业
精选优质文档-----倾情为你奉上
专心---专注---专业
{
GPBDAT = ~(1<<5); //LED0亮
Delay(500);
GPBDAT = ~(1<<6); //LED1亮
Delay(500);
GPBDAT = ~(1<<8); //LED2亮
Delay(500);
GPBDAT = ~(1<<10); //LED3亮
Delay(500);
}
return 0;
}
AREA |DATA|,CODE,READONLY
ENTRY
ldr r13, =0x1000
IMPORT ledMain
b ledMain
END
实验结果:
四个
嵌入式实验报告(共19页) 来自淘豆网m.daumloan.com转载请标明出处.