您尚未登录。

楼主 #1 2019-12-18 10:05:29

a1326268019
会员
注册时间: 2019-08-15
已发帖子: 12
积分: 12

Licheepi Zero实现裸板点亮RGB LED的功能

实现LicheePi Zero点亮RGE LED的裸板程序
代码如下:
led.S

.text
.global _start
_start:
    LDR R0,=0x01C208D8     //PG control register
    MOV R1,#0x00000110    //Set GPIOG1,GPIO2 output mode
    STR R1,[R0]

    LDR R0,=0x01C208E8    //PG data register
    MOV R1,#0x00000000   //Set low level
    STR R1,[R0]

loop:
    B loop

Makefile

CC  := arm-linux-gnueabihf-
AS  := $(CC)gcc -x assembler-with-cpp
LD  := $(CC)ld

ASFLAGS    := -g -Wall -O3 -ffreestanding -std=gnu99
MCFLAGS    := -march=armv7-a -mtune=cortex-a7 -mfloat-abi=hard -marm -mno-thumb-interwork

led.bin:led.S
    $(AS) $(ASFLAGS) $(MCFLAGS) -c -o led.o led.S
    $(LD) -Ttext 0x00002000 led.o -o led.bin

clean:
    rm -f *.o *.bin

烧录TF卡的命令
$ sudo dd if=/dev/zero of=/dev/sdb bs=1M count=1
$ sudo dd if=led.bin of=/dev/sdb bs=1024 seek=8

通过dd命令将led.bin文件烧录到TF卡8k偏移位置,插在LicheePi Zero上上电后没有反应,不知道问题出在哪里?

最近编辑记录 a1326268019 (2019-12-18 10:18:06)

离线

#2 2019-12-18 10:12:58

晕哥
管理员
所在地: 微信 whycan_cn
注册时间: 2017-09-06
已发帖子: 9,223
积分: 9197

Re: Licheepi Zero实现裸板点亮RGB LED的功能





离线

楼主 #3 2019-12-18 11:14:10

a1326268019
会员
注册时间: 2019-08-15
已发帖子: 12
积分: 12

Re: Licheepi Zero实现裸板点亮RGB LED的功能

晕哥 说:

谢谢晕哥,我想知道的我写的Makefile有没有什么问题,像编译选项、链接地址、下载到TF卡的地址是否有误。我手边暂时还没有Jlink不能立刻调试验证。

离线

#4 2019-12-18 11:14:35

kekemuyu
会员
注册时间: 2018-12-13
已发帖子: 841
积分: 721

Re: Licheepi Zero实现裸板点亮RGB LED的功能

这是不依赖linux的程序吗?可以从tf卡加载启动?

离线

#5 2019-12-18 11:19:19

达克罗德
会员
注册时间: 2018-04-10
已发帖子: 1,133
积分: 1085.5

Re: Licheepi Zero实现裸板点亮RGB LED的功能

你的程序前要放个boot信息的头,否则CPU启动时怎么知道TF卡的程序是非法的还是有效的
有个mksunxitool可以给你的bin加头

离线

#6 2019-12-18 11:30:49

晕哥
管理员
所在地: 微信 whycan_cn
注册时间: 2017-09-06
已发帖子: 9,223
积分: 9197

Re: Licheepi Zero实现裸板点亮RGB LED的功能

达克罗德 说:

你的程序前要放个boot信息的头,否则CPU启动时怎么知道TF卡的程序是非法的还是有效的
有个mksunxitool可以给你的bin加头

对对对, 就是这个

https://whycan.cn/t_2550.html#p22952





离线

楼主 #7 2019-12-18 15:22:06

a1326268019
会员
注册时间: 2019-08-15
已发帖子: 12
积分: 12

Re: Licheepi Zero实现裸板点亮RGB LED的功能

晕哥 说:

对对对, 就是这个

https://whycan.cn/t_2550.html#p22952

tools/mksunxiboot --default-dt suniv-f1c100s-licheepi-nano spl/u-boot-spl.bin spl/x.bin
这条命令的参数各指代什么,LicheePi Zero V3s需要怎么修改,哪边说明呢?

离线

#8 2019-12-18 15:53:24

晕哥
管理员
所在地: 微信 whycan_cn
注册时间: 2017-09-06
已发帖子: 9,223
积分: 9197

Re: Licheepi Zero实现裸板点亮RGB LED的功能

$ tools/mksunxiboot
        This program makes an input bin file to sun4i bootable image.
        Usage: tools/mksunxiboot input_file out_putfile

tools/mksunxiboot 输入文件 输出文件





离线

楼主 #9 2019-12-18 20:38:32

a1326268019
会员
注册时间: 2019-08-15
已发帖子: 12
积分: 12

Re: Licheepi Zero实现裸板点亮RGB LED的功能

晕哥 说:
$ tools/mksunxiboot
        This program makes an input bin file to sun4i bootable image.
        Usage: tools/mksunxiboot input_file out_putfile

tools/mksunxiboot 输入文件 输出文件

程序可以执行了,谢谢两位大神指导

离线

#10 2019-12-23 08:45:03

赚他一个亿
会员
注册时间: 2019-12-21
已发帖子: 7
积分: 7

Re: Licheepi Zero实现裸板点亮RGB LED的功能

好贴,关注。

离线

楼主 #11 2020-01-15 16:08:24

a1326268019
会员
注册时间: 2019-08-15
已发帖子: 12
积分: 12

Re: Licheepi Zero实现裸板点亮RGB LED的功能

最近尝试LicheePi_Zero裸板程序,实现汇编调用C语言的功能,没有能实现,过程中遇到一下一些问题,希望大神能给我解惑,感谢感谢!
1、LicheePi_Zero编写的裸板程序为什么要烧写到TF卡的8K地址偏移出,V3S用户手册上没有看到相关的说明?
2、编写裸板程序用arm-linux-gnueabihf-ld链接时,链接地址应该是多少?是8K吗(8K=0x2000)?
3、汇编调用C语言时,需要初始化栈,SP指针应该指向哪片可用的内存空间呢?
4、V3S的BROM   0xffff0000-0xffff7fff  32K 这32K是不是被完全使用了?
5、SRAM A1 0x00000000-0x00003fff 16K 和SRAM C 0x00004000-0x0000EFFF 44K是用来做什么的

离线

#12 2020-01-15 17:30:35

firstman
会员
注册时间: 2019-04-06
已发帖子: 279
积分: 279

Re: Licheepi Zero实现裸板点亮RGB LED的功能

1. 8k偏移地址是BROM固化的,没办法修改。



其他不会呢。

离线

楼主 #13 2020-01-16 11:18:17

a1326268019
会员
注册时间: 2019-08-15
已发帖子: 12
积分: 12

Re: Licheepi Zero实现裸板点亮RGB LED的功能

晕哥 说:
$ tools/mksunxiboot
        This program makes an input bin file to sun4i bootable image.
        Usage: tools/mksunxiboot input_file out_putfile

tools/mksunxiboot 输入文件 输出文件

麻烦晕哥帮我提点提点这些问题,感谢感谢
最近尝试LicheePi_Zero裸板程序,实现汇编调用C语言的功能,没有能实现,过程中遇到以下一些问题
1、LicheePi_Zero编写的裸板程序为什么要烧写到TF卡的8K地址偏移出,V3S用户手册上没有看到相关的说明?
2、编写裸板程序用arm-linux-gnueabihf-ld链接时,链接地址应该是多少?是8K吗(8K=0x2000)?
3、汇编调用C语言时,需要初始化栈,SP指针应该指向哪片可用的内存空间呢?
4、V3S的BROM   0xffff0000-0xffff7fff  32K 这32K是不是被完全使用了?
5、SRAM A1 0x00000000-0x00003fff 16K 和SRAM C 0x00004000-0x0000EFFF 44K是用来做什么的

最近编辑记录 a1326268019 (2020-01-16 11:18:31)

离线

#14 2020-08-04 23:47:12

kesion
会员
注册时间: 2020-07-03
已发帖子: 45
积分: 32

Re: Licheepi Zero实现裸板点亮RGB LED的功能

大神在哪里?裸机开发搞起来。。

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn