文章所有源码链接

https://mp.weixin.qq.com/s/R9QcNLQQdvu5WlhKaHmUCw_网络文章源码
分类: 其他 发布时间: 07-31 12:13 阅读次数: 0

C语言在头文件定义全局变量的技巧

https://mp.weixin.qq.com/s/M8hSstM1ZajdQAACU4OiWw_c语言 全局变量放在头文件
分类: 其他 发布时间: 07-31 12:13 阅读次数: 0

你知道C语言中""的类型吗?

https://mp.weixin.qq.com/s/wIK73eBxh2KR8tqCHsHEsw_c语言中的语句有哪几类?csdn
分类: 其他 发布时间: 07-31 12:13 阅读次数: 0

嵌入式web服务器goahead从移植到使用之移植篇

https://mp.weixin.qq.com/s/tl8MFAqLyGS0TLZwpiOWpQ_嵌入式服务器goahead嵌入到代码中
分类: 其他 发布时间: 07-31 12:13 阅读次数: 0

嵌入式web服务器goahead从移植到使用之asp

https://mp.weixin.qq.com/s/mKOBvvz3b0IfMmdA7KUGow_asp用法 gohead
分类: 其他 发布时间: 07-31 12:13 阅读次数: 0

嵌入式web服务器goahead从移植到使用之action

https://mp.weixin.qq.com/s/y_ielndgnNXtCRDJzpTkbA_goahead编程开发
分类: 其他 发布时间: 07-31 12:13 阅读次数: 0

c++学习笔记(namespace)

https://mp.weixin.qq.com/s/4hK7d7kEKogr2A5cqoO8Lw
分类: 其他 发布时间: 07-31 12:13 阅读次数: 0

嵌入式web服务器goahead从移植到使用之文件上传

https://mp.weixin.qq.com/s/X3cUsoT4nVmHrewQrzgjFQ_goahead webserver 上传文件
分类: 其他 发布时间: 07-31 12:13 阅读次数: 0

嵌入式web服务器goahead从移植到使用之cgi

https://mp.weixin.qq.com/s/JdmczszUXIXkejdGKeOsrQ_嵌入式web服务器goahead从移植到使用之action
分类: 其他 发布时间: 07-31 12:13 阅读次数: 0

嵌入式web服务器goahead从移植到使用之用户验证

https://mp.weixin.qq.com/s/8ugXC0VijcXNUBE2l-3G5A_mini_httpd移植
分类: 其他 发布时间: 07-31 12:13 阅读次数: 0

如何使用C的volatile关键字

https://mp.weixin.qq.com/s/vjn-_GRr1UyY9OOKHHX7tw_volatile c 矩阵
分类: 其他 发布时间: 07-31 12:13 阅读次数: 0

u-boot2020.04移植(1、u-boot的编译)

最近公司项目用到了xilinx的zynq7000 soc,开发方式有所不同,驱动的数据都是通过设备树来提供,以前没接触过,所以想系统的学习一下相关的内容,但是手头只有一块三星的s5pv210开发板,使用的u-boot和linux系统不支持设备树,只好自己移植,以此记录一下移植过程,加深理解与记忆,如果你也刚好有需要,欢迎参考与指正。我使用的虚拟机是ubuntu1804,选的u-boot版本是最新的2020.04(u-boot下载链接),由于三星提供的交叉编译工具链版本太低了,编译不了这个版本的u-boo_uboot2020编译
分类: 其他 发布时间: 07-31 12:13 阅读次数: 0

u-boot2020.04移植(2、从链接脚本开始)

首先分析一下u-boot的链接脚本,这样就能够知道u-boot本身的大体组成及分布,在上一篇文章中,已经完成了u-boot的编译,在根目录下可以看到生成了一个u-boot.lds文件,这个文件就是u-boot的链接脚本,它是由arch\\arm\\cpu\\u-boot.lds文件经过处理后得到的,其内容如下:OUTPUT_FORMAT(elf32-littlearm, elf32-littlearm, elf32-littlearm)OUTPUT_ARCH(arm)/*整个u-boot的入_uboot2020详解
分类: 其他 发布时间: 07-31 12:13 阅读次数: 0

u-boot2020.04移植(3、lowlevel_init.S)

现在开始就进入板级相关的初始化了,跳转到board/samsung/goni/lowlevel_init.S文件,注意这里lowlevel_init搜索出来在arch/arm/cpu/armv7/lowlevel_init.S文件里面也有,而且这个文件还被编译了,但仔细看一下就会发现,这个文件里面的lowlevel_init被声明成了弱属性,所以真正调用的是board/samsung/goni/lowlevel_init.S文件。ENTRY(cpu_init_crit) /* * Jump to_armv7 lowlevel.s
分类: 其他 发布时间: 07-31 12:13 阅读次数: 0

u-boot2020.04移植(4、board_init_f)

接着上篇,执行了ldr pc, =_main后,就到arch/arm/lib/crt0.S文件了:ENTRY(_main)/* * Set up initial C runtime environment and call board_init_f(0). *//*未定义*/#if defined(CONFIG_TPL_BUILD) && defined(CONFIG_TPL_NEEDS_SEPARATE_STACK) ldr r0, =(CONFIG_TPL_STAC_uboot2020编译
分类: 其他 发布时间: 07-31 12:13 阅读次数: 0

u-boot2020.04移植(5、u-boot重定位)

第一阶段结束,开始u-boot的重定位,回到arch/arm/lib/crt0.S文件:_ldr r0
分类: 其他 发布时间: 07-31 12:13 阅读次数: 0

u-boot2020.04移植(6、board_init_r)

board_init_r和board_init_f差不多,都是执行一个循环,下面看下board_init_r干了些什么:/*common/board_r.c*/static init_fnc_t init_sequence_r[] = { initr_trace, initr_reloc, /* TODO: could x86/PPC have this also perhaps? */#ifdef CONFIG_ARM initr_caches, /* Note: For Frees_u-boot board_init_r
分类: 其他 发布时间: 07-31 12:13 阅读次数: 0

u-boot2020.04移植(总结)

我所理解的u-boot移植可以分为以下几个部分:1、内核级的配置与初始化这个主要就是在start.S文件里面那些汇编代码,这部分呢我觉得基本上没有改的必要,除非你很熟悉内核相关的东西。2、SOC级别的配置与初始化这部分的内容是比较多的,而且可以说贯穿整个u-boot,但基本上必要的都集中在lowlevel_init,其它的就取决于你是否要在u-boot阶段使用某些硬件资源了,比如网卡是在board_init_r里面,已经是靠后的位置了,有些板子甚至可能都不会在u-boot阶段使用网络,自然也_u-boot移植与总结p2020
分类: 其他 发布时间: 07-31 12:13 阅读次数: 0

u-boot2020.04移植(eMMC/SD调试)

文章目录前奏流程驱动匹配分析需要的属性调试结果前奏随着u-boot版本的变迁,u-boot的功能也越来越多越来越强大,在较新的u-boot中已经支持很多不同类型的文件系统,告别了以前需要移植者自己手动规划eMMC/SD等镜像存储介质的分区信息(并非真正的磁盘分区,只是一个标号而已),可直接使用相关的命令就可以读取出各种文件系统类型的存储介质中的文件,使烧录、更新、启动等操作变得更加方便,所以在u-boot中支持eMMC/SD卡是很有必要的。流程在我现在用的u-boot版本2020.04中mmc相关的_uboot2020配置lcd
分类: 其他 发布时间: 07-31 12:13 阅读次数: 0

u-boot2020.04移植(支持网络)

前面基于goni这块板子移植的u-boot并不支持网络,但是我的开发板上面是支持网络的,所以这里把网络支持添加上。先看一下硬件是怎样接的:DM9000属于类内存总线的设备,被映射到s5pv210的SROM区域,从图上可以知道它接在SROM的bank1,CMD接在ADDR2。从前面的过程分析我们知道,网络相关的初始化在board_init_r阶段,有两个相关的函数,下面来看一下:/*common/board_r.c*//*这个函数主要的作用是设置mac地址,但u-boot提供了可以随机生成mac地_lan8720 u-boot 2020
分类: 其他 发布时间: 07-31 12:13 阅读次数: 0