
S3C2440学习之旅
Mculover666
优快云博客专家,微信公众号mculover666,凭借与生俱来的热爱专注于嵌入式领域,在自己折腾的同时,以文字的方式分享所玩、所思、所想、所悟,作为一个技术人,我们一起前进~
展开
-
S3C2440-裸机篇-10 | 使用S3C2440操作Nand Flash
1. Nor Flash与Nand FlashNorNand接口引脚多,类似于RAM引脚较少容量小(1-32MB)大(128-512MB)读操作简单,和RAM相同简单,和RAM相同写操作发出特定命令才能写入发出特定命令才能写入价格贵便宜比较无坏块有坏块XIP可以不可以应用场合存储关键性代码(比如uboo...原创 2020-02-27 10:37:49 · 1466 阅读 · 2 评论 -
S3C2440-裸机篇-09 | 使用S3C2440操作Nor Flash
1. Nor Flash2. JZ2440开发板上的Nor Flash3. 使用uboot命令直接读写内存操作Nor Flash知识准备:uboot | uboot内存操作指令mw和md详解。3.1. 读取Nor Flash ID(Manifacture ID)查看Nor FLash芯片数据手册:从数据手册中可知,读取Manifacture ID的流程如下:① 向Nor Flas...原创 2020-01-31 12:47:10 · 1753 阅读 · 0 评论 -
S3C2440-裸机篇-08 | 使用S3C2440操作SDRAM(配置内存控制器)
1. 前言提起SDRAM,大家都会觉得太难了,要编程写出SDRAM的控制时序更是难上加难,对的,没错!一年前我也是这样想的,学习这一节内容的时序觉得非常难,视频看了好几遍不太懂,对于SDRAM的控制原理更是没看懂,一年后回过头来再看视频,茅塞顿开,看不懂的原因是因为:我自己把它想的太难了,其实,它很简单,总共也就5行代码,设置5个寄存器即可。简单的原因要归功于S3C2440内部的内存控制器,它...原创 2020-01-29 21:25:07 · 1759 阅读 · 0 评论 -
S3C2440-裸机篇-07 | S3C2440内存控制器(Memory Controller)
1. 内存控制器1.1. 作用S3C2440的内存控制器作用是:负责向外部扩展的存储类设备提供控制信号。内存控制器支持的外部扩展存储类设备有:SRAMSDRAMNor Flash网卡DMA 9000(类存储设备)内存控制器不支持nand flash,S3C2440提供了独立的nand flash控制器。1.2. 内存控制器拓扑结构CPU、内存控制器、外部扩展存储器三者的...原创 2020-01-29 13:38:31 · 1692 阅读 · 0 评论 -
S3C2440-裸机篇-06 | UART数据发送接收实验(扫描模式)
实验 —— UART实验1.实验目的2.实验步骤3.实验代码4.实验结果5.实验总结原创 2020-01-29 13:37:26 · 1837 阅读 · 0 评论 -
S3C2440-裸机篇-05 | S3C2440时钟体系详解(FCLK、PCLK、HCLK)
本文主要讲述了S3C2440的时钟体系架构及上电复位时序,并通过两个对比实验演示了如何修改自己需要的时钟运行频率。原创 2020-01-29 13:36:02 · 1779 阅读 · 0 评论 -
S3C2440-裸机篇-04 | ARM-THUMB子程序调用规则ATPCS(使用S3C2440实验)
在GPIO的实验中,我们首先编写汇编程序操作寄存器点亮LED,奈何汇编语言可读性和可移植性太差,所以编写启动代码,设置栈顶指针SP,然后调用C语言中的main函数,转入C语言的世界,由C语言访问控制寄存器,点亮LED,程序的可读性和可移植性大大提高,那么,我们可曾想过,在汇编语言中是如何来调用C语言入口函数main呢?其实,对于ARM处理器,在ARM指令集汇编程序和THUMB指令集汇编程序中制定...原创 2020-01-29 13:34:38 · 1062 阅读 · 0 评论 -
S3C2440-裸机篇-03 | GPIO的使用(点亮LED、按键检测)
实验1 —— 点亮一个LED1.看原理图确定硬件如何连接原理图中表示了芯片控制LED的硬件电路以及芯片的引脚与LED如何连接。2. 看主芯片手册确定如何控制引脚具体:如何让GPF4输出高低电平?2.1.配置GPF4为输出模式(GPFCON)设置GPFCON寄存器的第[9:8]位=0b01。2.2.配置GPF4输出高/低电平(GPFDAT)GPFDAT的第4位为0-低电平,...原创 2020-01-29 13:33:22 · 2050 阅读 · 0 评论 -
S3C2440-裸机篇-02 | 安装和使用arm-linux-gcc交叉编译工具链
宿主机运行的是标准Linux操作系统,编译出的程序却需要在目标机的Linux上跑,这就叫交叉编译,编译器叫做交叉编译器。之前我们已经使用过`gcc`编译Linux本地主机的程序,这个编译器的目标系统是ARM,不运行操作系统,仅运行裸机程序,需要在Linux主机上编译出可以运行在`S3C2440@ARM920T`芯片上跑的程序,所以不能使用这个编译器,需要使用`arm-linux-gcc`交叉编译器。原创 2020-01-29 13:31:35 · 2702 阅读 · 0 评论 -
S3C2440-裸机篇-01 | JZ2440开发板快速上手
2019新年伊始,为了系统的学习嵌入式系统的开发,入手了一块韦东山的JZ2440,入坑之旅开始~原创 2020-01-29 13:29:58 · 4699 阅读 · 3 评论