jz2440裸板开发之GPIO:点亮一个led灯(1)

发布者:书卷气息最新更新时间:2020-12-23 来源: eefocus关键字:jz2440  裸板开发  GPIO  led灯 手机看文章 扫描二维码
随时随地手机看文章

实验目的:点亮一个led灯。(使用arm汇编指令)


实验原理:


在这里点亮一个nLED_2,其对用的引脚是GPF5,在GPIO中,每个引脚对有配置寄存器数据寄存器,对于本例其配置寄存器为GPFCON:0x56000050,和数据寄存器GPFDATA:0x56000054.要设置GPF5(GPF5为GPFCON的第十和十一引脚,【11,10】=01时为输出)为输出引脚,并根据电路原理图,可知是设为低电平,才能点亮LED2.所以[0x56000050]=0x00000400).   [0x56000054]=0x00000000     


实验步骤:


在linux下编辑源程序,然后利用自己编写的Makefile来对源程序的编译和链接生成bin文件,最后通过文件传输到window下,利用板子里nor flash中的u-boot烧写 到       nandflash。再利用window下的dnw下载到板子里面.最后重启板子,对板子设为nand flash启动,运行程序,观察效果。


实验工具:远程登录开发板jz2440工具:SecureCRT 5.2、      实现linux和window文件共享工具SSH Secure File Trsanfer Client


编译工具:linux下的交叉编译链(即编写一个makefile文件来对文件进行编译连接)



实验代码:源程序:led_on.S  和Makefile


led_on.S编写如下:                       

                              


.text

.global _start

_start:

ldr R0,=0x56000050

mov R1,#0x00000400

str R1,[R0]

ldr R0,=0x56000054

mov R1,#0x00000000

str R1,[R0]

MAIN_LOOP:

B MAIN_LOOP


Makefile编写如下:


led_on.bin:led_on.S

arm-linux-gcc -g -c -o  led_on.o led_on.S

arm-linux-ld -Ttext 0x0000000 -g led_on.o -o led_on_elf

arm-linux-objcopy -O binary -S led_on_elf led_on.bin


clean:

rm -f led_on.bin led_on_elf *.o


注意事项:看过原理图之后吧,然后才去看数据手册,找到寄存器对应的地址。例如寄存器GPFCON的地址。一定要保证寄存器的地址正确!


关键字:jz2440  裸板开发  GPIO  led灯 引用地址:jz2440裸板开发之GPIO:点亮一个led灯(1)

上一篇:TQ210裸机编程(1)——LED流水灯
下一篇:S5PV210进行LED流水灯实验总结(基于九鼎科技开发板)

小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved