Linux4个led灯循环点亮程序,循环点亮LED灯实验
终于把LED等的实验做好了...linux平台上做. 貌似速度很不好... 延迟的函数是递减0x100000, 大约需要三四秒.真够慢的..
一共有两个文件,一个汇编文件,一个C语言文件,其中汇编文件的功能就是关闭看门狗,然后为C语言代码设置环境,这里简单的设置一下堆栈就可以了。貌似这样和在x86上写裸程序是一个道理。C语言文件就循环点亮LED1-4。
贴代码如下:
crt0.S
#define WATDOG 0x53000000
.text
.global _start
start:
ldr r0, =WATDOG
mov r1, #0
str r1, [r0]
ldr sp, =1024*4
bl main
halt:
b halt
main.c文件
#define GPBCON (*(volatile unsigned long *)0x56000010)
#define GPBDAT (*(volatile unsigned long *)0x56000014)
#define LED4_SET_OUTPUT ((1<<10) | (1<<12) | (1<<14) | (1<<16))
#define LED1_ON (~(1<<5))
#define LED2_ON (~(1<<6))
#define LED3_ON (~(1<<7))
#define LED4_ON (~(1<<8))
void delay(void)
{
unsigned int i = 0x100000;
while(i--);
}
int main(void)
{
int i = 0x1000;
GPBCON = LED4_SET_OUTPUT;
while(i--) {
GPBDAT = LED1_ON;
delay();
GPBDAT = LED2_ON;
delay();
GPBDAT = LED3_ON;
delay();
GPBDAT = LED4_ON;
delay();
}
return 0;
}
Makefile 文件产生的二进制文件的名称很奇怪哈...是u-boot.bin,没办法... Nor flash里的u-boot进入下载模式时之能将固定的二进制文件名下载并烧入nand... 板子自带的就是这样... 不要与真正的u-boot搞混了...
CROSS_COMPILE := arm-linux-
CC := $(CROSS_COMPILE)gcc
CPP := $(CROSS_COMPILE)gcc -E
AS := $(CROSS_COMPILE)as
LD := $(CROSS_COMPILE)ld
OBJCOPY := $(CROSS_COMPILE)objcopy
all:u-boot.bin
u-boot.bin: test_elf
$(OBJCOPY) -O binary -S $< $@
test_elf: crt0.o main.o
$(LD) -Ttext 0x0 -o $@ crt0.o main.o
.S.s:
$(CPP) -o $@ $<
.s.o:
$(AS) -o $@ $<
.c.o:
$(CC) -c -o $@ $<
.PHONY clean:
clean:
rm -f *.s *.o *.bin test_elf
Linux4个led灯循环点亮程序,循环点亮LED灯实验相关推荐
- 自动感光调节LED灯亮度C语言程序,单片机PWM调节LED灯亮度
刚搞完飞思卡尔智能车,昨天我一起做车的搭档跑来跟我说魏老师(我们系的前主任,不知道他们怎么认识的....)叫他帮忙做个可通过无线遥控调节LED灯亮度的设计方案,问我有没有兴趣做做,主要是魏老师也是受他 ...
- 流水灯花灯c语言程序,0x01(16个流水灯c语言程序)
0x01是数字,十六进制的数字.其结果等效于1.在数学上就是1,只不过在计算机上用2进制和十六进制较多,所以用十六进制表示. if (i&0x01) printf("奇数\n"); else ...
- 综艺节目php灭灯_非诚勿扰php程序员 被全灭灯的是哪一期 求知道
程序员求职 ...了2份)新财潮商贸有限时间:2015年7月至2016年6月[11个月]名称:php后端程序员内容:负责二次开发,维护,配合推广,完成上级下达的任务亲朋的店电商务有限时间:2016年程 ...
- LED显示行业之老程序员开始解读LED显示行业
我叫毛华望, 我在LED显示行业做了4年多了,现在还在这个行业里面.第一次进入这个行业进的公司是灵星雨科技有限公司.后来在京视科技继续做LED显示行业,目前在摩西尔科技有限公司.这是一个什么样的 ...
- 中断1控制LED左移C语言程序,51单片机控制P2口8位LED灯左移C语言程序
此程序控制P2.0~P2.7口8个LED(P2.0~P2.7)灯逐个依次点这,又从(P2.7~P2.0)这样的顺序一直到全部被点亮. #include //头文件 void delay(unsigne ...
- 入门51单片机(STC8952RC)定时器、有关中断原理简述、寄存器设置与程序示例(包括流水灯和计时器)
目录 1.单片机之定时器 1.1 STC89C52RC定时器模式1工作流程 1.1.1 计数部分 1.1.2 时钟部分 1.1.3 中断部分 1.2 定时器T0.T1相关寄存器 1.2.1 TCOM寄 ...
- 8个流水灯c语言程序按顺序亮,求由AT89S52单片机,8个LED,流水灯程序,要求八灯一盏接一盏闪烁,且循环不灭,,要求用c语...
厦小伙子 t--) for(bt=0; } temp=0x80;/i8 个流水灯反向逐个闪动 { P2=~temp;<8;/ 声明延时函数 void main(void) { uint i.05 ...
- led的c语言程序,单片机C语言LED灯点亮程序完全版
<单片机C语言LED灯点亮程序完全版>由会员分享,可在线阅读,更多相关<单片机C语言LED灯点亮程序完全版(7页珍藏版)>请在人人文库网上搜索. 1.1例子1第二个灯亮#inc ...
- c语言程序小灯从右向左闪烁,单片机控制LED灯点亮(C语言).PPT
<单片机控制LED灯点亮(C语言).PPT>由会员分享,可在线阅读,更多相关<单片机控制LED灯点亮(C语言).PPT(45页珍藏版)>请在人人文库网上搜索. 1.1,单片机控 ...
最新文章
- 四. RxJava之基本原理
- sr锁存器 数电_数电课设其实也没那么难2.1
- 安卓初学者必看实例,(手机GPS简单编程访问)
- 更新整理本人所有博文中提供的代码与工具(Java,2013.11)
- 驱动开发 环境搭建(VS2008+WDK+DDKWzard)
- CSS3之Transition
- HTTP----HTTP2.0新特性
- 如何利用计算机系统原理做文件保护,计算机系统设计原理(影印版).docx
- 第8章 数据库实例与操作模式
- 计算机开机出现ROM,电脑无法开机提示exiting pxe rom的解决办法
- 油田生产中的几个“三”
- MacBook苹果电脑翻盖自动开机及音效设置
- 插入参考文献时,本该显示为[1],但显示了{Zhao,2017,#253},解决方法
- 苏州银行对公存款业务模块维护
- JDK源码解析之HashSet
- AI识别彻底懵逼!这到底是「牛」还是「鲨」?
- Vue3动态加载图片
- 计算机二级wps office考试题库,计算机等级考试题库:WPS Office试题
- yigo基础学习笔记3_数据映射_上引下推
- java生命游戏_生命游戏