15 goodluckwhh

尚未进行身份认证

暂无相关描述

等级
TA的排名 1w+

vim配置及插件安装管理(超级详细)

转自:https://www.cnblogs.com/snowbook/p/5923770.html 1 写在前面   Linux下编程一直被诟病的一点是:没有一个好用的IDE,但是听说Linux牛人,黑客之类的也都不用IDE.但是对我等从Windows平台转移过来的Coder来说,一个好用的IDE是何等的重要啊,估计很多人就是卡在这个门槛上了,"工欲善其事,...

2019-01-28 12:49:55

STM32启动文件——startup_stm32f10x_hd.s

转自http://blog.csdn.net/wqx521https://blog.csdn.net/a1314521531/article/details/50925553 一、启动文件的作用 (关于启动代码的作用,前面已经提到过了,这里再啰嗦一下)(1)初始化堆栈指针SP;(2)初始化程序计数器指针PC;(3)设置堆、栈的大小;(4)设置异常向量表的入口地址...

2019-01-28 09:21:17

stm32 startup_stm32f10x_md.s的作用

一、启动文件的作用是:1.  初始化堆栈指针 SP;2.  初始化程序计数器指针 PC;3.  设置堆、栈的大小;4.  设置异常向量表的入口地址;5.  配置外部 SRAM 作为数据存储器(这个由用户配置,一般的开发板可没有外部 SRAM);6.  设置 C 库的分支入口__main(最终用来调用 main 函数);7.  在 3.5 版的启动文件还调用了在 sy...

2019-01-28 09:16:26

STM32存储器知识的相关应用(IAP、Bit Banding)

1STM32的启动根据参考手册RM0008中的图表: 得知STM32的启动有三种模式,三种模式的选择在于芯片上的两个Boot引脚,如RM0008种描述: 在系统复位之后的四个上升沿后索存BOOT引脚,从而决定启动方式;用户对BOOT引脚的设置决定了系统复位之后的启动模式。三个不同的启动区域有着不同的起始地址,STM32这样规定: 注意的是:只有当从SRAM...

2019-01-28 09:10:45

arm-none-eabi-gcc编译错误

arm-none-eabi-gcc编译错误undefinedreferenceto`end'insbrk.cinlibrarylibnosys.a Thesymbolendneedstobedefinedinthe.ldslinkerscript,whichisusedtosetthelocationoftheheap. Look...

2019-01-25 19:07:48

STM32启动过程解析

  相对于ARM上一代的主流ARM7/ARM9内核架构,新一代Cortex内核架构的启动方式有了比较大的变化。ARM7/ARM9内核的控制器在复位后,CPU会从存储空间的绝对地址0x000000取出第一条指令执行复位中断服务程序的方式启动,即固定了复位后的起始地址为0x000000(PC=0x000000)同时中断向量表的位置并不是固定的。而Cortex-M3内核则正好相反,有3种情况:...

2019-01-23 21:50:38

STM32启动过程--启动文件--分析

STM32启动过程--启动文件--分析一、概述1、说明  每一款芯片的启动文件都值得去研究,因为它可是你的程序跑的最初一段路,不可以不知道。通过了解启动文件,我们可以体会到处理器的架构、指令集、中断向量安排等内容,是非常值得玩味的。  STM32作为一款高端Cortex-M3系列单片机,有必要了解它的启动文件。打好基础,为以后优化程序,写出高质量的代码最准备。  本文以一个实际...

2019-01-23 21:43:13

嵌入式系统启动例程

通常PC在开机之后,会进入带有PC机厂商信息的BIOS画面,并且会显示出当前PC机的硬件信息,比如:内存大小,CPU信息等,它其实是PC机启动之后运行的第一段程序,它主要完成一些基本硬件初始化操作和硬件检测工作,保证拥有操作系统正常运行的软硬件环境,随后会加载并且启动操作系统。该段小程序是烧制到主板上的BIOS存储硬件里的。由此可见计算机系统在启动过程中必须依赖软硬件,在嵌入式系统中同样需要软硬件...

2019-01-23 21:32:02

深入嵌入式系统的 BootLoader

一、简介   本文将从BootLoader的概念、BootLoader的主要任务、BootLoader的框架结构以及BootLoader的安装等四个方面来讨论嵌入式系统的BootLoader。   引导加载程序。包括固化在固件(firmware)中的boot代码(可选),和BootLoader两大部分。   Linux内核。特定于嵌入式板子的定制内核...

2019-01-23 20:54:42

STM32存储结构(2)

当我们在完成某一个实验,当我们正庆幸的时候,我们不由得产生一种不安的想法——我们是否已经少许明白其中的种种细节?尤其,当我们所有的事情都依赖于编译环境或Firmware,抑或他人的程序,而自己仅仅是Copy和Modify,以致Using。当你还是一个初学者的时候,或许不会太过于关注于此,但是要想提高自己对单片机、处理器原理的理解,并且希望走得更远的时候,您就需要关注更为详细的内部知识,您需要明...

2019-01-23 20:44:09

STM32学习:存储器组织

一、存储结构  STM32F1有四种存储单元,依次是SRAM、Flash、FSMC和AHB到APB桥(挂载各种外设)。二、存储组织程序存储器、数据存储器、寄存器和输入输出端口被组织在同一个4GB的线性地址空间内。数据字节以小端格式存放在存储器中。一个字里的最低地址字节被认为是该字的最低有效字节,而最高地址字节是最高有效字节。  可访问的存储器空间被分成8个主要块,每个块为512MB...

2019-01-23 20:17:24

嵌入式 Linux 启动时间优化

1 简介本章包含的话题有启动时间的测量、分析、人因工程(humanfactors)、初始化技术和优化技巧等。产品花在启动方面的时间直接影响终端用户对该产品的第一印象。一个消费电子设备不管如何引人注目或者设计得怎么好,设备从关机状态到可交互的使用状态所需的时间对于获得正面的用户体验尤为关键。案例#1就是在关机状态从头启动一个设备的例子。启动一个设备涉及到许多步骤和一系列的事件。...

2018-11-01 12:40:07

ubuntu安装GTK2.0

1、安装gcc/g++/gdb/make等基本编程工具sudoapt-getinstallbuild-essential2、安装libgtk2.0-devlibglib2.0-dev等开发相关的库文件sudoapt-getinstallgnome-core-devel3、用于在编译GTK程序时自动找出头文件及库文件位置sudoapt-g

2014-10-11 13:29:57

块设备之三

一、I/O调度器1.1数据结构在将请求提交给块设备时,内核提供了各种调度策略,这些调度器用于重排和调度I/O请求以获得最优的性能。I/O调度器在内核中被称为elevator。内核使用了如下数据结构来实现和管理I/O调度器:structelevator_type{ /*managedbyelevatorcore*/ structkmem_cache*icq_cac

2014-02-20 22:10:22

块设备驱动之二

一、将块设备添加到系统register_blkdev并没有真正将设备添加到系统中,想要将设备添加到系统中,需要使用如下API:voidblk_register_region(dev_tdevt,unsignedlongrange,structmodule*module, structkobject*(*probe)(dev_t,int*,void*),

2014-02-12 00:00:56

块设备驱动程序之一

一、块设备概述linux支持的两种重要的设备类型分别是字符设备和块设备,块设备可以随机地以固定大小的块传送数据。与字符设备相比,块设备有以下几个特殊之处:块设备可以从数据的任何位置进行访问块数据总是以固定长度进行传输,即便请求的这是一个字节对块设备的访问有大量的缓存。当进行读时,如果已经缓存了,就直接使用缓存中的数据,而不再读设备,对于写也通过缓存来进行延迟处理。在块系统中,数据块

2014-02-10 23:41:00

字符设备驱动

一、设备驱动概述linux内核的驱动模型为编写驱动提供了抽象,将驱动公共的部分提取了出去简化了驱动的编写工作,但是那并不是实际的驱动,如果要实现真正的驱动,还要给予驱动模型做一些其它的工作。根据外设和内核交互数据的方式,内核将驱动分成了几种类别。基本上设备可以分为两类,一类适合于面向字符的交换,一类适合于处理包含固定数目字节的数据块,这两类分别称为字符设备和块设备(网络设备是一种特殊的设备,它

2014-01-28 22:39:50

驱动和class

一、设备驱动相比较设备、总想,设备驱动能够抽象的要少些,它的更多内容都是特定于硬件的,因而linux驱动模型中的驱动部分相对也比较简单。1.1数据结构linux内核的设备驱动子系统使用数据结构structdevice_driver来表示一个设备驱动,请定义如下:structdevice_driver{constchar*name;structbus_typ

2014-01-27 23:32:42

总线和设备

一、总线总线是处理器与设备之间的通道。在linux设备模型中,所有的设备都通过总线相连,总线可能是实际的总线,比如usb总线,pci总线,也可能是虚拟的总线。1.1数据结构linux使用bus_type来表示总线。其定义如下:structbus_type{ constchar *name; constchar *dev_name; structdevice

2014-01-26 22:15:11

kobject和kset

一、kobjectkobject是linux内核做的一个抽象,它本身不具备实际的含义。它被嵌入到各种数据结构中,因而只要我们具有kobject就可以获取并访问它所嵌入的宿主数据结构。这样就提供了良好的组织管理能力。宿主数据结构可以千变万化,但是其嵌入的kobject很简单,可以基于该结构做很多通用的事情。sysfs就是利用这一点实现的。该文件系统以很简单的方式实现了对内核中各种复杂部件(尤其是

2014-01-25 21:37:06

查看更多

勋章 我的勋章
    暂无奖章