- 博客(30)
- 收藏
- 关注
原创 硬件设计17之DCDC-MP2315解读
时间:2018.3.30 作者:Tom 工作:HWE说明:如需转载,请注明出处。1.一个很重要的经验首先一个非常重要的经验:我们用的最多的DCDC芯片就是TI和MPS的芯片。TI的官网有可以帮你选器件的一个搜索界面,你可以进入界面根据输入输出电流选择网页推荐给你的器件,然后仔细看数据手册。http://www.ti.com.cn/。简直不要太爽。同样的。MPS官网也提供了一款设计软件:ht...
2018-03-30 21:13:11 18245
原创 Uboot17之start.S-ARM流水线
时间:2018.3.28 作者:Tom 工作:HWE 说明:如需转载,请注明出处。1.pc指针到底在哪里?上面一段是我们uboot.dis反汇编文件,我们继续分析上部分的中断异常调用。它是怎样调用函数的呢?我们可以看出ldr pc, _undefined_instruction这句代码反编译后看到地址为c3e00014。调用函数是pc指向函数,即:ldr pc, [pc, #20]也就...
2018-03-28 21:35:13 359
原创 Uboot16之start.S七种异常模式及向量表
时间:2018.3.22 作者:Tom 工作:HWE 说明:如需转载,请注明出处。#ifndef CONFIG_ENABLE_MMU //首先我们肯定开启了MMU的,所以下面不看了#ifndef CFG_PHY_UBOOT_BASE#define CFG_PHY_UBOOT_BASE CFG_UBOOT_BASE#endif#endif/* *******************...
2018-03-27 23:07:23 1297
原创 Uboot15之start.S概要及头文件
1.为什么要首先分析start.S?对于任何程序,入口函数是在链接时决定的,uboot的入口是由链接脚本决定的(入口地址也是由链接器决定的)。uboot下armv7链接脚本默认目录为arch/arm/cpu/u-boot.lds。指定程序的链接地址有2种方法:1)一种是在Makefile中ld的flags用-Ttext 0xc3e00000来指定;2)第二种是在链接脚本u-boot.lds的SEC...
2018-03-26 21:35:15 749
原创 硬件设计16之什么是DCDC与LDO
时间:2018.2.10 作者:Tom 工作:HWE 说明:如需转载,请注明出处。1.电源芯片20世纪50年代以前大都变压器变压之后经过桥式整流电路(使用晶闸管可控硅整流电路),后通过稳压二极管进行使用。大功率硅整流器能够高效地将工频交流电转变为直流电。1955年美国罗耶(GH.Roger)发明的自激振荡推挽晶体管单变压器直流变换器,首创PWM控制,是实现高频转换控制电路的开端,1957年...
2018-03-25 22:42:16 3343
原创 Uboot11之主Makefile分析2
时间:2018.3.25 作者:Tom 工作:HWE 说明:如需转载,请注明出处。VERSION = 1 //主版本号PATCHLEVEL = 3 //次版本号SUBLEVEL = 4 //再次版本号EXTRAVERSION = //另外附加的版本信息U_BOOT_VERSION = $(VERSION)...
2018-03-24 11:51:07 572
原创 uboot10之主Makefile分析1
转载https://www.cnblogs.com/amanlikethis/p/3419858.html。1.uboot Makefile体系组成2.Makefile的目标3.Makefile的依赖OBJS = cpu/$(CPU)/start.oifeq ($(CPU),i386)OBJS += cpu/$(CPU)/start16.oOBJS += cpu/$(CPU)/reset.oen...
2018-03-21 21:28:12 302
转载 Uboot9之uboot目录分析
时间:2018.3.18 作者:Tom 工作:HWE 说明:如需转载,请注明出处。说明:本文主要参考朱有鹏老师linux嵌入式,已注明转载。1.X210官方uboot配置编译1.1找到官方移植好的uboot(BSP概念)1)源头的源代码是uboot官网下载的。这个下载的源代码可能没有你当前使用的开发板的移植,甚至找不到当前开发板使用的SoC对应的移植版本。2)SoC厂商在推出一款SoC后,厂...
2018-03-18 22:50:46 439
转载 Uboot8之什么是makefile?
时间:2018.3.18 作者:Tom 工作:HWE 说明:如需转载,请注明出处。说明:本文主要参考朱有鹏老师linux嵌入式,已注明转载。1. Makefile基础回顾1.1Makefile的作用和意义1)工程项目中c文件太多管理不方便,因此用Makefile来做项目管理,方便编译链接过程。2)uboot和linux kernel本质上都是C语言的项目,都由很多个文件组成,因此都需要通过M...
2018-03-18 17:56:26 176
原创 Uboot7之shell语法
1.shell脚本1.1使用shell脚本的原因 ---功能强大 ---节约时间 1.2 shell脚本基本元素 #!/bin/bash1.3注意初学者易犯错误:1) 第一行#不是注释 其他#都是注释;2) echo $mytextA 写错现象;3) #!/bin/bash 写错现象; 4) 脚本如果没有执行权限 chmod 777 hello.sh...
2018-03-18 17:39:49 1617
转载 Uboot6之什么是shell?
时间:2018.3.18 作者:Tom 工作:HWE 说明:如需转载,请注明出处。说明:本文主要参考朱有鹏老师linux嵌入式,已注明转载。1.shell:壳与封装1)shell就是壳的意思,在计算机中经常提到shell是用户操作接口的意思。2)因为计算机程序本身很复杂,里面的实现和外面的调用必须分开。接口本身就是对内部复杂的实现的一种封装,外部只需要通过接口就可以很容易的实现效果,但是却不...
2018-03-18 16:33:43 405
原创 Uboot5之S5PV210的启动顺序
时间:2018.3.18 作者:Tom 工作:HWE 说明:如需转载,请注明出处。1.启动所涉及的内存和外存(1)内存:SRAM即静态内存,缺点是容量小、价格高,一般是几十K或几百K;优点是不需要软件初始化直接上电就能使用。DRAM即动态内存,优点是容量大、价格低;缺点是上电后不能直接使用,需要软件初始化后才可以使用。 (2)单片机:内存需求量小,而且希望开发尽量简单,适合全部使用SRAM;...
2018-03-18 01:32:47 669
转载 Uboot4之什么是环境变量与存储分区?
时间:2018.3.17 作者:Tom 工作:HWE 说明:如需转载,请注明出处。1.如何理解环境变量uboot 环境变量实现原理:首先我们先要搞清楚uboot中环境变量的作用,uboot中环境变量的作用就是在不改变源码、不用重新编译的情况下,可以使我们通过设置环境变量的值来改变uboot的一些设置,如bootdelay时间、机器码的值等等。u-boot的缺省情况下会有一些基本的环境变量,当...
2018-03-17 22:30:19 884
原创 Uboot3之一些基本的网络IP知识
时间:2018.3.17 作者:Tom 工作:HWE 说明:如需转载,请注明出处。1.什么是网关?大家都知道,从一个房间走到另一个房间,必然要经过一扇门。同样,从一个网络向另一个网络发送信息,也必须经过一道"关口",这道关口就是网关。顾名思义,网关(Gateway)[1] 就是一个网络连接到另一个网络的"关口"。也就是网络关卡。网关(Gateway)又称网间连接器、协议转换器。默认网关在网...
2018-03-17 22:11:06 1760
转载 Uboot2之常用命令
时间:2018.3.17 作者:Tom 工作:HWE 说明:如需转载,请注明出处。说明:本文主要参考朱有鹏老师linux嵌入式,已注明转载。Uboot命令行的行缓冲:1)行缓冲的意思就是:当我们向终端命令行输入命令的时候,这些命令没有立即被系统识别,而是被缓冲到一个缓存区(也就是系统认为我们还没有输入完),当我们按下回车键(换行)后系统就认为我们输入完了,然后将缓冲区中所有刚才输入的作为命令...
2018-03-17 21:41:22 461
转载 Uboot1之什么是uboot?
时间:2018.3.14 作者:Tom 工作:HWE 说明:如需转载,请注明出处。说明:本文主要参考朱有鹏老师linux嵌入式C语言高级篇笔记,已注明转载。1.什么是uboot?U-Boot,全称 Universal Boot Loader,是遵循GPL条款的开放源码项目。U-Boot的作用是系统引导。U-Boot从FADSROM、8xxROM、PPCBOOT逐步发展演化而来。其源码目录、编...
2018-03-14 22:43:01 2701 2
转载 C语言17之什么是链接库?
时间:2018.3.13 作者:Tom 工作:HWE 说明:如需转载,请注明出处。说明:本文主要参考朱有鹏老师linux嵌入式C语言高级篇笔记,已注明转载。http://blog.csdn.net/l_b_yuan/article/details/66043365。1.什么是库?1)最开始是没有库,每个人写程序都要从零开始自己写。时间长了慢慢的早期的程序员就积累下来了一些有用的函数。2)早期...
2018-03-13 23:27:02 1012 2
原创 硬件设计15---什么是HDMI驱动器?
时间:2018.3.30 作者:Tom 工作:HWE 说明:如需转载,请注明出处。在工作中必须要了解几个芯片公司,在我所接触的芯片中所了解到一些做芯片的公司有:TI, PERICOM,BROADCOM,ST,NXP,freescale,Qualcomm等等。今天来看下PERICOM,中文名字百利通,成立于1990年,美国一家元器件公司(加州),主营电子元器件。主要生产LDO(PT7M8),复...
2018-03-12 20:59:17 6420
原创 硬件设计14---什么是预加重与去加重技术?
时间:2018.3.12 作者:Tom 工作:HWE说明:如需转载,请注明出处。在信号传输过程中,信号不同,频率成分有不同的衰减度,导致最后得到的信号失真。为了在接收终端能得到比较好的波形,就需要对受损的信号进行补偿,常用的补偿技术有:预加重、去加重和均衡。这里介绍这三种信号补偿技术。由于在信号通路中,相对于低频分量,信号的高频分量有很大的衰减。均衡的作用就是在接收端口对信...
2018-03-12 20:46:38 21641
原创 硬件设计13---什么是回声抵消?
时间:2018.3.12 作者:Tom 工作:HWE说明:如需转载,请注明出处。回声消除(Echo Cancellation )又称回声抑制(Echo Suppression)。是电路电话、移动电话、VOIP等语音设备提升语音质量的一项重要技术。那什么是回声呢?1.回声回声本质上是自己的声音经过一段时间后又传回到自己耳朵中,如果回声的时延小于10ms,则称为...
2018-03-12 20:38:53 3426
原创 硬件设计3---什么是电容?
时间:2018.3.12 作者:Tom 工作:HWE 说明:如需转载,请注明出处。1.什么是电容? 百度百科中介绍"电容器,通常简称其容纳电荷的本领为电容,用字母C表示。定义1:电容器,顾名思义,是'装电的容器',是一种容纳电荷的器件。英文名称:capacitor。电容器是电子设备中大量使用的电子元件之一,广泛应用于电路中的隔直通交,耦合,旁路,滤波,调谐回路,能量转换,控制等方面。定...
2018-03-12 20:30:14 2601 1
转载 C语言16之什么是函数?
时间:2018.3.11 作者:Tom 工作:HWE 说明:如需转载,请注明出处。说明:本文主要参考朱有鹏老师linux嵌入式C语言高级篇笔记,已注明转载。1.函数的本质1.1 C语言为什么会有函数C语言中,一个程序无论大小,总是由一个或多个函数构成,这些函数分布在一个或多个源文件中。每一个完整的C程序总是有一个main函数,它是程序的组织者,程序执行时也总是由main函数开始执行(main...
2018-03-11 15:06:20 524
转载 C语言15之什么是预处理理论?
时间:2018.3.10 作者:Tom 工作:HWE 说明:如需转载,请注明出处。说明:本文主要参考朱有鹏老师linux嵌入式C语言高级篇笔记,已注明转载。1. C语言预处理理论1.1由源码到可执行程序的过程1)源码.c->(编译)->elf可执行程序2)源码.c->(编译)->目标文件.o->(链接)->elf可执行程序3)源码.c->(编译)-&...
2018-03-10 22:56:15 192
原创 C语言14之什么是共用体和枚举?
1.共用体union1.1共用体类型的定义、变量定义和使用1)共用体union和结构体struct在类型定义、变量定义、使用方法上很相似。2)共用体和结构体的不同:结构体类似于一个包裹,结构体中的成员彼此是独立存在的,分布在内存的不同单元中,他们只是被打包成一个整体叫做结构体而已;共用体中的各个成员其实是一体的,彼此不独立,他们使用同一个内存单元。可以理解为:有时候是这个元素,有时候是那个元素。更...
2018-03-10 16:39:37 372
原创 C语言13之什么是结构体?
1.什么是结构体?结构体(struct)是由一系列具有相同类型或不同类型的数据构成的数据集合,也叫结构。在C语言中结构体是一种数据结构。结构体可被声明为变量,指针或者数组等;同时,也是一些元素的集合,这些元素被称为结构体成员,且这些成员可以是不同的类型1.1结构体的定义、初始化及引用下面给出六种结构体定义:1)其中第一种是最基本的结构体定义,其定义了一个结构体student。2)第二种则是在定义了...
2018-03-10 11:34:35 1584
转载 C语言12之什么是字符串类型?
时间:2018.3.4 作者:Tom 工作:HWE 说明:如需转载,请注明出处。说明:本文主要参考朱有鹏老师linux嵌入式C语言高级篇笔记,已注明转载。1.C语言的字符串类型1.1 C语言没有原生字符串类型1)很多高级语言像java、C#等就有字符串类型,有个String来表示字符串,用法和int这些很像,可以String s1 = "linux";来定义字符串类型的变量。2)C语言没有S...
2018-03-04 15:55:08 28539
转载 C语言11之再论内存管理
时间:2018.3.4 作者:Tom 工作:HWE 说明:如需转载,请注明出处。说明:本文主要参考朱有鹏老师linux嵌入式C语言高级篇笔记,已注明转载。1.程序中内存从哪里来1.1程序执行需要内存支持对程序来说,内存就是程序的立足之地(程序是被放在内存中运行的);程序运行时需要内存来存储一些临时变量。1.2内存管理最终是由操作系统完成的1)内存本身在物理上是一个硬件器件,由硬件系统提供。2...
2018-03-04 10:49:34 244
转载 C语言10之二重指针
时间:2018.2.28 作者:Tom 工作:HWE 说明:如需转载,请注明出处。说明:本文主要参考朱有鹏老师linux嵌入式C语言高级篇笔记,已注明转载。1. 二重指针1.1二重指针与普通一重指针的区别1)本质上来说,二重指针和一重指针的本质都是指针变量,指针变量的本质就是变量。2)一重指针变量和二重指针变量本身都占4字节内存空间,1.2 二重指针的本质1)二重指针本质上也是指针变量,和普...
2018-03-04 00:28:22 1709
转载 C语言9之什么是typedef类型?
时间:2018.3.3 作者:Tom 工作:HWE 说明:如需转载,请注明出处。说明:本文主要参考朱有鹏老师linux嵌入式C语言高级篇笔记,已注明转载。1.再论typedef1.1 C语言的2种类型:内建类型与用户自定义类型内建类型ADT、自定义类型UDT1.2 typedef定义(或者叫重命名)类型而不是变量1)类型是一个数据模板,变量是一个实在的数据。类型是不占内存的,而变量是占内存的。...
2018-03-03 23:22:55 459
原创 C语言8之函数指针与指针函数
时间:2018.3.3 作者:Tom 工作:HWE 说明:如需转载,请注明出处。说明:本文主要参考朱有鹏老师linux嵌入式C语言高级篇笔记,已注明转载。1.函数指针1.1函数指针的实质(还是指针变量)1)函数指针的实质还是指针,它指向一个函数。本身占4字节(在32位系统中,所有的指针都是4字节)。2)函数的实质是一段代码,这一段代码在内存中是连续分布的(一个函数的大括号括起来的所有语句将来编...
2018-03-03 11:20:43 406 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人