自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

defoecn的专栏

每天进步一点点

  • 博客(37)
  • 资源 (18)
  • 收藏
  • 关注

原创 1年鸟...最近1年去弄DM368了.

近期更新部分DM368文档

2011-10-02 18:33:54 548

原创 关于STM32的 LCD 和 RTC

关于LCD:LCD用的模块是 ST7565P驱动的lcd是 128*64点阵有个寄存器的区域是存放数据, 分别对应了lcd上的 128*64点阵.  ,通讯方式是SPI如果需要横屏, 镜像 这些功能, 可以设置读取寄存器的方式, 比如要上下镜像,  那读数据就会从最后一个地址开始读,那么显示的东西就会反过来了. 想起了2410开发板上关于TFT显示驱动里面 是在内存区中设定了一个指定的内存区域作为显示缓冲,   驱动程序的功能就是按照一定频率去读这个缓冲, 然后吧数据传送给tft driver.     作

2010-10-08 16:22:00 2347 1

原创 找了份工作, 会涉及到STM32芯片. 把最近学习的东西跟大家分享一下.

<br />用的是DX32 大虾的开发板. 功能比较全, 仿真器也不贵, 是被和谐的版本.<br /> <br />最近仔细看了一下文件系统,   彻底弄明白了以前在移植busybox对文件系统还是很模糊的概念.<br /> <br />简单讲一下心得<br /> <br />1 文件系统<br />如果要与SD卡  U盘这些介质打交道,那就一定要弄明白文件系统的概念. 说白了 文件系统就是先格式化磁盘, 然后建立磁盘分区表, 之后的任务就是建立每个文件的存储路径,  起始地址和结束地址,方便程序将某个文件

2010-10-06 10:50:00 3279

原创 最近更新缓慢.

<br />手上有调试好的led驱动,  key驱动(中断), <br />正在调试的有触摸屏驱动. 以及正在研究lcd驱动  呵呵 跨度很大,  <br />现在重新返回led驱动, 要加上创建设备文件节点的代码, 不想insmod后再去手工mknod,这个也是必须.  所以近期都没有更新.<br /> <br />而且目前公司的新项目明天开始动工了. 估计学习嵌入式的进度会再缓慢一点, 等led驱动(含创建设备节点)的代码调试ok,就会放上来.<br /> <br />新项目用瑞萨的单片机..呵呵没用过

2010-06-08 18:08:00 308

翻译 linux驱动之--led驱动

练手, 第一个字符驱动.用模块加载方法华清远见的代码拿来改的.   编译过程发现很多错误.最后发现 这本书带的驱动代码都是基于linux2.4的...目前我用的linux2.6, 代码部分需要做修改. 我的板子是 友善之臂的 2410.  vmware+ubuntu  nfs交叉编译首先linux2.6内核编译里面要打开loadable modules,  以及 u

2010-05-04 21:50:00 476

原创 linux驱动之--linux2.6.14.1 移植进去8900网卡驱动

为了搭建nfs系统,...所以 必须在内核移植好网卡驱动. 我靠.照下面做,一次能成功.我的主板是友善之臂 2410. 环境是 vmware+ubuntu LINUX2.6.14下CS8900的移植(Fs2410) 1. (文件在我的下载版有)拷贝文件cs8900.c cs8900.h到 linux2.6.14.1/drivers/net进入目录cs8900

2010-04-27 14:21:00 512

原创 linux驱动之--NFS交叉编译环境搭建

Vmware改桥接设置.我的是ubuntu +vmware, 所以第一件事情要改网络连接成为 桥接bridged.然后以root用户进入ubuntu,这样才可以修改IP地址和DNS2.启动UBUNTU, 设置静态IP地址     sudo ifconfig eth0 192.168.2.20 netmask 255.255.255.0设置IP:打开/etc/network/interf

2010-04-25 18:03:00 904

原创 根文件系统制作 busybox移植

今天完成了busybox移植并且烧录上去, 下面放出我自己的笔记,欢迎指正心得如下:1  linux2.6.14打开nfs文件系统支持 就是对应cramfs文件系统. 所以暂时可以先不用给linux打yaffs文件系统补丁,以及用yaffs格式来做根文件系统. 1.下载最新的busybox1.9.2,并解压缩。下载busybox源代码:http://busybox.

2010-04-01 20:58:00 1520

原创 linux2.6移植

我照如下部分移植成功,引用部分后面讲过程中遇到的问题.linux 2.6.14内核的移植(基于gec2410开发板)2007年11月15日 星期四 11:08步骤如下:建立工作目录:mkdir /home/build_kernel1 下载linux内核源码从http://www.kernel.org/pub/linux/kernel/v2.6/linux2.6.

2010-04-01 09:56:00 505

原创 继续研究uboot-led篇

发现uboot启动的时候会点亮开发板上2个led.而且无论怎么改动都只亮其中2个led,几经试验. 发现led初始化:在/board/bs2410/bs2410.c里面有 gpio->GPBCON = 0x00155555; // 0x00044555; gpio->GPBUP = 0x000007FF;将0x00044555改成0x00155555(我的开发板是对应B口的 7,8

2010-03-28 11:22:00 1280

原创 uboot 1.1.6 移植8900网卡+tftp

u-boot本身有cs8900网卡驱动程式,所以需要修改的地方不多。由于数据通过总线传送,所以要注意地址空间的设置和总线的设置。1) 修改/include/configs/smdk2410.h文件:#define CONFIG_ETHADDR    08:00:3e:26:0a:5b#define CONFIG_IPADDR        192.168.1.18#define CONFIG_SE

2010-03-27 18:27:00 1555 1

原创 移植uboot 1.1.6 到友善之臂 sbc2410上.(支持NAND)

uboot1.1.6下载地址是http://downloads.sourceforge.net/u-boot/u-boot-1.1.6.tar.bz2 安装编译器:3.3.2环境的建立. (如果是移植uboot1.1.6 请使用3.3.2的版本编译器, 别怪我没提醒你.我试过2.95  3.4.1都不行.问题关于硬浮点和软浮点,各位可以自己搜索一下这个问题)1·.下载arm-lin

2010-03-24 20:55:00 1284

原创 二 移植8900网卡驱动到vivi上

putstr("Succeed memory mapping./r/n"); 用这个语句来跟踪系统执行进度.回到vivi第二阶段, 仔细看init_builtin_cmds()-> add_command() 按照load 这个指令的线去看 load flash vivi x 和 load flash vivi u 这两条指令的执行线路. 来分析将怎么做网卡移植. 有点难度. 看了一晚

2009-12-07 19:01:00 486

原创 一 原版vivi的移植 到2410

1 先修改vivi的makefile       LINUX_INCLUDE_DIR -- 更改为交叉编译器的include文件夹LINUX_INCLUDE_DIR = /usr/local/arm/2.95.3/includeCROSS_COMPILE     -- 交叉编译器的可执行文件的路径CROSS_COMPILE = /usr/local/arm/2.95.3/bin/a

2009-12-05 20:51:00 663

原创 计划赶不上变化,做一下计划

大概看完了vivi导读, 谢谢詹先生, 还有CalmArrow(lqm) 今天理一下思路, 后面进入试验阶段. 1 找个干净的vivi来, 移植, 然后jtag上去,   目标: 看到vivishell, 能执行vivi命令2 移植网卡8900上去,并且搞好tftp,能用tftp3 移植usb上去  并能用usb下载资料.

2009-12-05 20:33:00 543

转载 堆与栈的区别.

简单的说,使用char a[100] 这样是使用的栈(stack)中的空间,是在调用函数的时候自动分配的。而用malloc函数是从堆(heap)中分配的空间。栈中的空间会随着函数的使用结束而被自动释放掉,因此不用手动回收内存,而堆使用的是公用部分,不会随着函数使用结束而结束因此需要手动回收(释放)可能许多人对内存分配上的“栈 stack”和“堆 heap”还不是很明白。包括

2009-12-05 17:09:00 382

原创 bootloader导读.第二阶段

1  打印版本信息 ,(可要可不要,调试用)2  io口初始化3  建立页表和启动MMU    · 第一阶段  软件准备     MMU在软件上的实现过程,实际上就是一个查表映射的过程。建立页表(translation table)是MMU功能的重要的一步。页表就是内存的一块区域,由一个个固定格式的entry组成。其中每个entry对应一个VA到PA的转换,每一项的长度是一个w

2009-11-24 08:06:00 654

原创 bootloader导读.第一阶段

从nandflash copy到 ram中    先看分区信息              vivi 0x00000000-0x00020000  0-128K             param 0x00020000-0x0002f000  64K             kernel  0x00030000-0x001f0000  1M+960K             ro

2009-11-23 13:08:00 436

原创 bootloader导读.

    今天搜索vivi的时候竟然发现现在vivi的源代码里面已经有了带usb驱动的, 以前可是保密源码的. 当时我就是因为vivi拿不到源码无法更改内核的分区所以放弃而转入u-boot的.    因为开发板给的linux2.4的系统, 而我想移植最新的2.6的linux.  所以1M空间是不够滴....必须改这部分代码.    学习环境依然是xp+vmware+linux2.4    虽

2009-11-21 20:11:00 462

原创 重新拿起嵌入式学习

虽然知道技术不值钱,但是创业还是要从技术开始. 难道, 我没钱, 我也没技术, 那我凭什么起家... 所以,鼓励自己, 重新拿起嵌入式.  书也有, 设备也有, 其实以前已经弄了很多, 窗户纸快捅破了.  还是坚持下去, 捅破吧.最近老婆有600的买书报销, 我也买了一部分书, 在书城仔细选书, 可选的嵌入式书真是少呀,  有时候要几本书对照来看, 平均每本书只有一部分对我有用. 

2009-11-21 20:04:00 360

原创 停止写blog1个月.原因如下

接了一个项目,做了一个多月.  实际上就是抄sony D70的摄像头.  硬件已经做好了,  4个mcu分别控制红外遥控接收, Pan TILT马达转动,  和主控. 电路看起来简单,和清晰, 但是真正要做的工作有很多..其中也学到了很多东西,  自己亲自去调试 i2c总线, 模拟串口,串口通信, pwm驱动电机,实时时钟,和视频字符叠加, 呵呵, 有意思. 我的附件里面会留有这些

2008-12-09 15:32:00 401

原创 uboot1.1.4 移植成功

 今天早上把昨天编译好的uboot.bin烧进去,  看串口 死活没反应.晕.害我没吃早餐. 找来原来的vivi烧进去, 看串口 正常. 说明是我的uboot有问题. 上网搜, 发现优龙的板子跟我的很像, 而且找到一个优龙的移植好的uboot.bin down下来烧进去看看.串口正常.  看来确定是我的uboot.bin有问题.再把昨天的3个参考贴找来仔细研究.

2008-10-09 19:46:00 867

原创 uboot1.1.4编译成功

 tmd,现在终于编译成功.参考帖子  真是多谢http://blog.chinaunix.net/u2/78837/showart_1212612.html http://blog.chinaunix.net/u2/73461/showart.php?id=1079801 http://hi.baidu.com/serial_story/blog/item/af26884

2008-10-08 21:41:00 597

原创 u boot 移植 废材日记, 不要看了, 浪费时间, 上面有篇uboot 1.1.4移植才是正题

转自 http://blog.chinaunix.net/u2/78837/showart_1212612.html真是经典.我阅读后做了修剪,作为自己的笔记.大家可以看原文. 0 在工作目录下解压U-Boot。$tar zxvf u-boot.git.tar.gz1 进入U-Boot目录,修改Makefile$cd u-boot.git/$vi Makefil

2008-09-27 18:52:00 1725

原创 20080925 busybox and file system

 1  download  busybox2  edit the  Makefile,  arch  & crosscomplile3 make  menuconfig   busybox setting--> build option-> [*]build busybox as  astatic binary  installation options-->[*] dont u

2008-09-26 08:39:00 433

原创 080923 linux2.6的移植 2.6.14

计划采用 yaffs文件系统.linux2.6.19 的内核开始提供了队yaffs文件系统的支持, 在这之前的版本没有, 需要给linux内核打补丁使支持yaffs2文件系统. 我的预计分区是: 启动开发板,进入vivi,对vivi进行分区操作       vivi>bon part 0 128k 192k 2240k 5312k:m 64704k       分区信息如下

2008-09-22 22:01:00 454

原创 080922 关于vivi中的分区

 super 的文章中 提到vivi要更改 smdk.c文件中vivi  128Kparm 64kkernel 2M+832Kroot  29M 烧写完vivi后,  bon part 0,192k,3M ,共分了三个区然后重新烧写vivi   > part show   (MTD)   vivi  128K parm  64Kkernel  2M+83

2008-09-22 21:49:00 365

原创 计划,步骤.

 1 移植linux2.6,并会装系统2 写驱动程序, 并且挂接驱动程序3 应用程序编写 在2,3步过程中继续熟练C语言.. 空余时间看C程序经典900例 我的开发板是  友善之臂的  2410V6, 希望同学们共同学习.

2008-09-22 21:46:00 305

原创 vivi 2 mem

 vivi的  stage1 必须小于4Kstage1的作用就是初始化硬件, 以及把后面的代码copy到ram中.下面来谈mem control看datasheet第五部分。s3c2410比较特殊,支持1G的内存空间,分为8个bank,每个bank128MBytes,128MB×8=1GB。但是在这8个bank中,又有所不同,并且nand flash不对应任何bank,它是通过一组寄存器来

2008-03-29 16:33:00 469

原创 vivi 1 移植

 vivi的移植vivi的结构: COPYING:GPL协议声明,Gnu General Public License,这里是version 2。如果要具体了解一下GPL协议,那么可以仔细读一下该文件。CVS: Control version system,一种版本控制的工具。使用cvs,可以很方便的进行版本的控制,节约大量的时间。不过该部分并不属于vivi核心软件架构。Docum

2008-03-28 11:39:00 507

原创 计划 2008 3 21 随时回来检讨一下, 看看自己完成了多少

昨天很老何谈了一下,发现原来自己现在学的,是皮毛 皮毛 皮毛, 要学的东西还有很多.很多.想了一下 做了一个计划 1   vivi:  现在看了大部分linux驱动程序的编写, 反过头再来看vivi发现有些东西能看懂了.  bootloader无论是wince 还是linux都会用到.   所以要花时间把vivi搞透, 别看这么小小的东西, 其实五脏俱全.要学, 还是能有很多东西可以学的,

2008-03-28 08:30:00 335

原创 复习一下 nandflash启动流程

1 如果跳线是 从nandflash启动,  cpu会自动copy nandflash的 前面4K到 sdram(stepingstone中). (是cpu自动!,不属于bootloader工作)2  cpu开始执行stepingstone的代码, 并且把nandflash 所有代码copy到sdram中, 3 cpu开始执行copy到sdram中的主函数.

2007-11-14 10:52:00 1047

原创 nand_read_ll 分析

病了几天, 自己也偷懒了.今天继续#define BUSY 1inline void wait_idle(void) {    int i;    while(!(NFSTAT & BUSY))  ; NFSTAR只有第一位有效, 0: flash busy   1: ready to use  &:位与//  回忆一下while的用法, 很久没用忘了.while(1),则执行下面的语

2007-11-05 22:18:00 2569

原创 NAND FLASH (2 读写操作)

 坏block 标示:  create invalid block table   坏block标示在额外区域的 第六byte. 在坏block的第一或者第二page的第517byte(from512, 6th) 是non-FFh数据然后建立一个 table 来记录所有坏block扫描出坏block并标示以后就可以保证不对坏block进行读写.方法:  从block address

2007-11-02 09:05:00 1307

原创 NAND FLASH (1 .结构分析)

我这边用的是 K9F1208U0M  SAMSUNG的芯片   64M *8bit  这款nandflash 总共512Mbit +额外的16Mbit结构分析: 512Mbit 分成 128K pages , 每页528个柱块.  其中额外的16个柱是NO.512-527.即528个8bit寄存器. 一个块(block)=32pages , so 一个芯片有4096个block其中每个pa

2007-11-02 08:27:00 1029

原创 检讨一下, 进度很慢 还是vivi

最近进度很慢, 工作忙了一点,现在开始逼自己每天晚上3小时,一定要每天进步一点点.head.s主体看的差不多了. 但是head.s里面有一些BL的部分子程序要另外阅读清楚,不能一知半解.最近学到基础的东西, 比如BLT, B是跳转 LT是条件, 关于条件的查询可以看规格书了解到 include中有两个 H文件是可以用到的. 都是包含2410字符. 看到nand_read_ll 

2007-10-31 16:38:00 610

原创 努力学习vivi

学习嵌入式, 原来arm就是一个带操作系统的 单片机.正在努力学习bootloader,   vivi是目前的主攻目标, 相信对驱动程序的编写和对arm9结构的熟悉会快点.  实际运用中学习嘛欢迎正在学习vivi的朋友交流. 

2007-10-15 09:09:00 426

MDK for STM32 库说明书

MDK for STM32 库说明书

2010-10-08

SD卡相关资料 供参考

SD卡相关资料 供参考SD卡相关资料 供参考

2010-10-06

文件系统 FAT12 FAT16 FAT32

文件系统 , FAT12 FAT16 FAT32讲解

2010-10-06

2410基于linux2.6.14.1 的led驱动

2410 linux2.6.14.1 led驱动 以上代码是我自己测试没有问题的.

2010-05-04

linux2.6.14.1 移植8900网卡驱动

资料我已经移植成功, 欢迎尝试. 开发板是友善之臂2410, 环境是vmware+ubuntu

2010-04-27

busybox移植笔记

搜罗网上的移植笔记自己综合写了个笔记, 不是转帖, busybox对应版本是1.9.2

2010-04-01

2410+uboot+nandflash移植

我是按照这份文件移植成功的, 板子是sbc2410,移植完了以后支持nand启动, 关于tftp支持请看我的学习笔记, 那个比较简单了.

2010-04-01

linux2.6移植 2410

主要看linux2.6移植部分,busybox和uboot移植部分讲的比较粗,但是有uboot的详细指令说明.当你搜索完网上关于移植linux2.6的资料后,发现这份就是一样的.

2010-04-01

如附件的图片

参考图片. 请参阅

2009-03-01

串口模拟 C51 供开发参考

串口模拟 C51 供开发参考 我参考过的资料, 对你应该也有用, 我最后选用了中断接收.

2008-12-09

实时时钟 D1320 的应用

实时时钟 D1320 的应用 C51 PDf文件, 自己看, 我就是用这个调试的.

2008-12-09

24c64 读写 程序

24c64 c51 读写, 我是参考这个调试成功的. 留意一下atmel的 24c64的规格书, 每次写入完要间隔一段时间好像是20多ms, 否则出错. 我就是在这个地方转了很久.

2008-12-09

C51的 模拟 I2C 代码 周立功的

C51的 模拟 I2C 代码 周立功的, 我主要就是参考这个调试成功的, 要注意时序.

2008-12-09

s3c2410完全开发流程源代码

对应s3c2410完全开发流程的源代码

2007-12-05

s3c2410完全开发流程

网上找来的, 先把2410当作单片机来用, 然后再看vivi. 近期正在看这个. 也分享给各位同学.

2007-12-05

S3C2410 bootloader vivi阅读笔记

S3C2410 bootloader vivi阅读笔记

2007-11-20

vivi源码分析

vivi源码分析,详细分析. 网上收录

2007-11-20

vivibootloader的实现

vivibootloader的实现

2007-11-20

空空如也

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

TA关注的人

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