新闻中心

EEPW首页>嵌入式系统>设计应用> 在OK6410上点亮指路明灯(LED)

在OK6410上点亮指路明灯(LED)

作者: 时间:2016-11-21 来源:网络 收藏
说实话,对于专业人事,这可能是十分简单的东西,但是还是记录一下,免得回头又忘了,毕竟看视频还是挺麻烦的。

这是开发板底板的原理图,所以只要把对应的管脚变成低电平就可以了
所以这就是最简单的GPIO,其实我觉得这里面的这个和K60里的那个十分相似,GPIO既有IO输入输出功能,也有外部中断功能,甚至更多。(毕竟cortexM系列的只适用于工控)
所以附上GPIO的管脚图和寄存器


所以配置GPMCON为对应的功能,数据在DATA里配置


GPMCON和GPMCON的地址都已经告诉我们了,所以只要往这个两个地址里写入对应的配置就可以了
control寄存器要输出功能的设为0001,所以往0x7f8820里写入0x111就可以了,往0x7f008824写入0x5就可以了(两盏灯建个亮,另外两盏不亮)
说明这一部分的汇编语言还是蛮重要的=3=!
贴上汇编代码,为什么是汇编呢?而不是C语言?因为我还没有学搭建C语言的环境,只能先用汇编
#define GPMCON 0x7f008820
#define GPMDAT 0x7f008824
light_ led:
ldr r0, =GPMCON
ldr r1, =0x1111
str r1, [r0]
ldr r0, =GPMDAT
ldr r1, =0x5
str r1, [r0]
mov pc, lr
但是这样下载到开发板里面不能使 LED亮,因为没有对外设基地址初始化,对,下面的仅仅是对LED的外设基地址初始化
set_peri_port:
ldr r0, =0x70000000
orr r0,r0,#0x13
mcr p15,0,r0,c15,c2,4
mov pc, lr
这样把start.S文件和脚本和makefile放在一个文件夹里面,在Linux里面用GCC编译链接生成.bin文件,通过USB用dnw下载到nand flash里面(其实不管用什么,只要把.bin文件下载到芯片的nand flash里面就可以了),在设置开发板从nand flash启动,重启就可以看见LED亮了
还是虚拟机配Linux系统好用,不用去想办法解决各种Windows的不兼容


关键词:OK6410指路明灯LE

评论


技术专区

关闭