自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

coding__madman的博客

不积跬步无以至千里---厚积薄发!

  • 博客(20)
  • 资源 (1)
  • 收藏
  • 关注

原创 递归深度实战

递归与回溯1. 递归在程序设计中也常用于需要回溯算法的场合2. 回溯算法的基本思想:(穷举搜索算法) 1> 从问题的某一种状态出发,搜索可以到达的所有状态 2> 当某个状态到达后,可向前回退,并继续搜索其它可达状态 3> 当所有状态都达到后,回溯算法结束3. 程序设计中可利用函数活动对象保存回溯算法的状态数据,因此可以利用递归完成回溯算法4. 回溯算法是递归应用的重要场合,同时利用函数调用的活动对象可以保存回溯算法中重要的变量信息,递归是回溯

2016-04-06 22:41:13 4733

原创 OK6410 uboot编译以及设置uboot开机自动启动内核

1. 编译U-Boot在linux下解压缩uboot源码第二步:配置相关选项,编译出能在目标板上运行的映像文件打开顶层Makefile 可以看到这个选项这里使用编译选项然后make编译用上面的编译总是出错,然后百度查了一下,make smdk6410_config是老版本的uboot 的6410的配置选项,正确的是Makefile下面的这个然后编2.上面的 U-Boot常用命令大概可以分类为已下几种 1>帮助命令 2>环境变量相关命令 3>程序下载命令 4>内存

2016-04-30 21:58:36 4840

原创 OK6410之uboot时钟初始化---嵌入式回归第十一篇

综合前面的博客,设置系统为SVC模式,关闭开门狗,关闭中断,关闭MMU和cache,基地址初始化,点亮一灯大师,这一小节根据前面的架构分析来完成时钟初始化部分。1. 时钟脉冲信号概念:时钟脉冲信号:按一定的电压幅度,一定的时间间隔连续发出的脉冲信号。时钟脉冲信号是时序逻辑的基础。它用于决定逻辑单元中的状态何时更新。数字芯片中众多的晶体管都工作在开关状态,它们的导通和关断动作无不是按

2016-04-27 20:14:11 1219

原创 一灯大师之点亮OK6410开发板上4个LED裸机程序---嵌入式回归第十篇

接着上一篇关闭mmu和cache后,这一篇来点亮开发板上的一盏LED小灯,前面所作的初始化工作基本看不到效果,其实这一段也是最麻烦的!如果有问题调试很麻烦!点亮了LED之后就可以用LED来看程序是否如预期那样运行,传说中的一灯大师就要出场了,准备好了吗?1. LED原理图分析2. 芯片手册导读3. 程序步骤流程设计4. 用代码实现功能

2016-04-25 22:56:44 2469

原创 OK6410的uboot关闭mmu和cache---嵌入式回归第九篇

接着上一篇设置系统为SVC模式,关闭看门狗,关闭中断,下面就根据正对ok6410架构分析上的来关闭mmu和cache.虽说是重复造轮子,但对学习来说也是一种很好的方法,我要一步一步努力向上爬!1. 先来介绍ARM的存储体系从上到写依次存储访问速度下降,容量增大!同时价格也不是一个档次!2. Cache简介:Cache是一种容量小但存取速度非常快的存储器,它保存最近用到的存储器中数据的拷贝,对于程序员来说,Cache是透明的,它自动决定保存那些数据、覆盖那些数据,按照功能划分I-Cache: 指令C

2016-04-24 15:50:05 1289

原创 uboot关闭看门狗和中断---嵌入式回归第八篇

相信做嵌入式这行的对看门狗都不陌生!1. 看门狗的作用:在嵌入式领域,有些系统需要长期运行在无人看守的环境。在运行过程中,难免不出现系统死机的情况,这时就需要系统自身带有一种自动重启的功能。watchdog一般就是一个硬件模块,其作用就是在系统死机时帮助系统实现自动重启。2. 看门狗的工作方式:watchdog在硬件上实现了计时功能,启动计时后,用户软件必须在计时结束前重新开始计时,俗称“下面的一张图可以分为三个部分:1. 时钟源PCLK ,分频器将时钟源分频出来的时钟就是Watchdog所用的时钟

2016-04-24 14:11:32 5475

原创 设置系统工作在SVC模式---嵌入式回归第七篇

ARM处理器有七种工作模式,对于uboot模式而已,系统工作在SVC模式,可以操作更多的资源。通过设置程序状态寄存器CPSR15(这个可以根据手册查到):可以看到这5位要设置成10011,即把GPSR15寄存器最后5位设置成10011.第一步: 将这5位全部清零 bic指令第二步: 在给某些位置1 orr指令同时这里会用到msr指令 和 mrs指令原因: 因为在访问CPSR/SPSR这两个寄存器时 ,先要把寄存器导入到通用寄存器当中做相应修改然后再写入,而不能直接修改GPSR/SPSR这两个寄存

2016-04-24 01:13:51 4494

原创 uboot异常向量表---嵌入式回归第六篇

异常向量表:1. 异常向量表定义:因为内部或者外部的一些事件,导致处理器停下正在处理的工作,转而去处理这些发生的事件2. 异常类型:七种异常(这个前面有提到过)3. 异常入口:可以看到Normal address这一栏 ,这个地址表示某个异常发生时,处理器会自动的跳转这个地址来执行这个地方的程序,也就是当一种异常发生的时候,ARM处理器会跳转到对应该异常的固定地址去执行

2016-04-24 00:37:31 1463

原创 OK6410开发板bootloader架构设计分析---嵌入式回归第五篇

在介绍bootloader嵌,先简要介绍一下汇编的相关知识!为后边的学习做铺垫!大学里面学习过汇编,之前汇编部分的视频也是一点一点的跟着国嵌的视频把代码撸出来一步一步的调试!相对学习起来还是比较容易的!比数据结构和算法简单的多了。汇编语言介绍这一部分暂时就不写笔记了!写bootloader后边会用到比较多,这里只简单的挑一些重要的介绍一下。ARM汇编分类:1. ARM标准汇编:使用AR

2016-04-23 16:35:37 4698

转载 十个值得研究的C开源项目!

原文链接:http://my.oschina.net/zhoukuo/blog/335788?p=9#comments算是比较轻量级的开源项目,作为学习研究C语言,提升C语言功底!好处很多很多!代码阅读——十个C开源项目1. WebbenchWebbench是一个在linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们

2016-04-22 09:30:35 4424 1

原创 Linux常见文件格式打包解压命令

linux文件夹打包解压常用命令: .tar解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)---------------------------------------------.gz解压1:gunzip FileName.gz解压2:gzip -d FileName

2016-04-21 17:48:32 502

转载 单链表逆序———不借助外部辅助空间递归与非递归实现

单链表逆序         第二个题目是很经典的“单链表逆序”问题。很多公司的面试题库中都有这道题,有的公司明确题目要求不能使用额外的节点存储空间,有的没有明确说明,但是如果面试者使用了额外的节点存储空间做中转,会得到一个比较低的分数。如何在不使用额外存储节点的情况下使一个单链表的所有节点逆序?我们先用迭代循环的思想来分析这个问题,链表的初始状态如图(1)所示:图(1)初始

2016-04-18 14:52:51 1742

原创 使用Windows上SourceInsight工具建立分析Linux下uboot源码工程

SourceInsight软件可以说是分析查阅大型源码工程文件的神器!界面不错!功能强大!第一步:安装好SourceInsight后打开软件点击上面的Project--->new project 然后弹出对话框这里工程的名字我取成ubootProject,该工程保存在我自己在E盘建立的一个文件目录下, 点击OK设置如此然后点击OK这里我的uboot源码是

2016-04-17 22:25:04 5720

原创 ARM内部大家族详解---嵌入式回归第四篇

这里先简要说一下在不同的工作模式下有何区别:比如当一个程序运行在不同的模式下面的时候,能够运行的ARM处理器的指令是不一样的,能够访问的ARM处理器的寄存器都是不一样的!User: 普通用户模式FIQ: 快速中断模式IRQ: 普通中断模式Supervisor:保护模式(权限相对比较高)Abort:异常模式 (比如程序访问出现异常)Undefined:未定义模式(比如使用了一条未定义的汇编指令)System:系统模式(在ARMV4以上才有的模式, 用的很少)对于Linux而言,一般的应用程序

2016-04-17 18:11:40 4548

原创 ARM开发工具软件命令详解---嵌入式回归第三篇

程序达不到预期结果一般情况下先检查三个问题:1. 是否是运行在ARM平台上, 用命令:file 目标文件名 查看2. 查看大小端是否对 arm-linux-readelf查看3. 查看程序用到的某些库是否对 使用命令:arm-linux-readelf -d 目标文件名 (可以查看目标文件在目标板上运行必须用到哪些库,如果开发板上没有该库,则肯定是运行不了的)ARM反汇编器:在底层编程中是非常有用的!能查看汇编代码!(即如何将程序变成汇编版本)命令方式:arm-linux-objdump -D

2016-04-17 15:24:53 3217

原创 OK6410开发板系统安装---嵌入式回归第二篇

OK6410 ARM11开发板安装Linux嵌入式系统操作步骤!

2016-04-16 19:10:02 4587

原创 OK6410开发板资源介绍---嵌入式回归第一篇

一晃时隔大半年了,今天起重新开始学习国嵌的OK6410 精通嵌入式课程,之前学到第四季老大视频没更完,而且更的实在太慢了,大学那会刚开始学的时候也走了不少弯路,不过当时充满了学习的激情,前面的更的视频反复的一步一个脚印过了三遍。现在项目更新完了,时间一长,好多也忘了,现在重新温习一遍要点,顺便通过博客记录自己的学习心得!我要努力成功!我要努力赚很多的钱!就是这么赤裸裸!自己的开发板介绍:1

2016-04-16 15:38:17 3701 1

原创 将lrzsz工具移植到ARM开发板 ---只通过串口实现window和ARM板之间文件互传

事情背景:由于需要在windows和ARM板之间只通过串口传输文件(windows的文件只通过串口传输到ARM板上)这时超级终端SecureCRT+lrzsz工具可以完成这项使命!(其他终端软件没试过,一直用的这个)准备工作:    1. SercureCRT软件     2. linux上安装好交叉编译器    3. 下载好的lrzsz源码包!(关于lrzsz的相关信息可以百

2016-04-07 15:01:55 9752 1

原创 getopt函数和getopt_long函数详解

getopt函数函数功能:用来解析命令行参数,参数argc和argv分别代表参数个数和内容,跟main()函数里的命令行参数一样函数所在头文件:#include函数原型定义:int getopt(int argc, char* const argv[ ], const char *optstring )参数optstring: 为选项字符串,告知getopt可以处理那个选项以及哪个

2016-04-02 15:56:14 18324

原创 Webbench-1.5开源软件工具源码深度剖析

Webbench是有名的网站压力测试工具。其标准测试可以测试服务器的两项内容:每秒钟相应请求数和每秒钟传输数据量。Webbench不但能具有便准静态页面的测试能力,还能对动态页面(ASP,PHP,JAVA,CGI)进行测试的能力.还有就是他支持对含有SSL的安全网站例如电子商务网站进行静态或动态的性能测试.网上下载好webbench-1.5的压缩安装包,拷贝到linux环境下解压安装。

2016-04-02 15:54:50 2180

can总线资料

can总线相关文档以及可以提供参考的can开源源码

2016-06-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除