LED灯控制实验
来源:互联网 发布:手机淘宝上改收货地址 编辑:程序博客网 时间:2024/04/28 15:52
实验名称:LED灯控制实验
实验目的:熟悉ADS使用,熟悉c编程
实验原理:
由电路图可以看出LED1,LED2,LED3,LED4分别受GPB5,GPB6,GPB7,GBP8控制,当引脚输出高电平时,二极管断开,LED灯灭。输出低电平时,二极管导通,LED点亮。
实验步骤:
首先,新建一个工程ledtest,建立新文件init.s,添加到工程。生成编译类型选DebugRel,这是生成带调试信息的文件。然后在init.s开始写代码。同理,再建个main.c,设置同上。
Init.s 是一开始执行的指令,注意不要顶格写,否则当成标识符。我开始就把ENTRY定格写了,结果编译出错,说找不到入口点。
AREA DATA,CODE,READONLY
ENTRY
ldr r13,=0x1000 ;堆栈指针sp
IMPORT LedMain
b LedMain
END
Main.c是程序主体,代码如下:
//头文件定义
/*端口F寄存器预定义 用PORTB GPB5,6,7,8对应LED1,2,3,4*/
#define rGPFCON (*(volatile unsigned *)0x56000010)
#define rGPFDAT (*(volatile unsigned *)0x56000014)
#define rGPFUP (*(volatile unsigned *)0x56000018)
#define LED1_ON() (rGPFDAT &= ~0x20)
#define LED2_ON() (rGPFDAT &= ~0x40)
#define LED3_ON() (rGPFDAT &= ~0x80)
#define LED4_ON() (rGPFDAT &= ~0x100)
#define LED1_OFF() (rGPFDAT |= 0x20)
#define LED2_OFF() (rGPFDAT |= 0x40)
#define LED3_OFF() (rGPFDAT |= 0x80)
#define LED4_OFF() (rGPFDAT |= 0x100)
#define time 300
void Delay(unsigned int );
void Ledtest();
/***************************************************************************
Function name: LedMain
Parameter : void
Description : 初始化系统,端口,并调用跑马灯显示实验函数
Return : void
Date :13/2/09
Autor & date :wethty
****************************************************************************/
int LedMain()
{
/*初始化*/
rGPFCON=0x15400; /*设置I/O口GPB5~8为输出属性*/
rGPFUP=0xfff; /*禁止GPB端口的上拉*/
rGPFDAT=0xffff; //输出全置1
while(1)
{
Ledtest();
}
}
void Delay(unsigned int x)
{
unsigned int i,j;
while(x--)
for(i=0;i<0xff;i++)
for(j=0;j<0xff;j++);
}
void Ledtest()
{
LED1_ON(); //LED点亮/熄灭状态设置
Delay(time);
LED2_ON(); //LED点亮/熄灭状态设置
Delay(time);
LED3_ON(); //LED点亮/熄灭状态设置
Delay(time);
LED4_ON(); //LED点亮/熄灭状态设置
Delay(time);
LED1_OFF(); //LED点亮/熄灭状态设置
Delay(time);
LED2_OFF(); //LED点亮/熄灭状态设置
Delay(time);
LED3_OFF(); //LED点亮/熄灭状态设置
Delay(time);
LED4_OFF();
Delay(time);
rGPFDAT = 0x00;//全亮
Delay(time);
rGPFDAT = 0xfff;// 全灭
Delay(time);
}
- LED灯控制实验
- cc2530 串口实验--控制led灯
- cc2530 串口实验--控制led灯
- 树莓派实验一:控制LED灯
- LED控制实验
- DragonBoard410c 控制LED实验
- 实验--无线收发控制LED
- 字符设备驱动之led灯的控制实验
- FS210开发平台板载LED灯控制实验
- CC2530基础实验之串口控制LED灯
- ZigBee基础实验(一)--控制LED灯
- 3_使用C语言控制LED灯实验
- 按键 led灯实验
- led灯实验总结
- Android底层开发Led控制实验
- Arduino 实验2 - 控制LED闪烁
- Android底层开发Led控制实验
- 实验1:small rtos51-------led控制
- SQL语句优化汇总
- asp.net 页面传参方式
- SAP笔记-MM物料凭证列表(mb51)的字段显示定义
- 《二十几岁,痴迷学习吧》
- SAP笔记-付款条件的设置
- LED灯控制实验
- SAP笔记-FI-Coding Block 应用
- 我的个人网站初步建成了,在其中发布一些技术性的文章和上传源码以及提供下载!
- SAP笔记-SAP 文本增强
- 关于Actionscript 3.0中Singleton实现-----修正篇
- 高强度文件夹加密大师9000解密求助
- 懒蚂蚁效应
- 工作像蚂蚁,生活像蝴蝶
- Embed使用以及九宫格的用法