ILD

dnw2烧些固件
2017-9-13
之前的文章分析了如何使用minicom连接USB串口。接着就开始分析如何使用USB接口传输数据到uboot。从网上下载了dnw_linux,包括一个USB驱动secbulk和用户态程序dnw,插入USB,驱动可识别,但是写文件会卡死。之前一直以为是64位linux系统的问题,或者是xhci的问题,但

first binary run on s3c2440
2017-9-18
上一篇文章使用crosstool-NG创建了新的linux-gnueabi工具链。本文使用新的工具链创建第一个运行在s3c2440上的程序。1 toolchain首先创建toolchains.sh,并将该脚本source到当前shell,这样就可以直接使用了。#!/bin/sh#TOOLCHAIN_

内存控制器
2017-9-23
本篇学习s3c2440的内存控制器,并编写运行在内存中的代码。1 手册学习支持下列features:- 软件可配置大小端。- 1GB地址空间,8个banks,每个bank 128Mbytes- 可编程访问大小(8/16/32 位),bank0只支持16/32位- 6个用于ROM, SRAM等内存的b

MMU
2017-10-8
在CPU体系结构中,MMU和cache一样,属于core的范畴 。是CPU的一部分,不属于外部设备。这点和内存控制器不同,所以s3c2440没有MMU的参考资料,而需要查看ARM920t的参考资料。1 ARMv4 MMU先来分析MMU是如何转换虚拟地址到物理地址的。1.1 Translation T

NAND
2017-10-15
NAND flash在嵌入式设备中作为ROM存储程序和数据。NAND Flash的显著特点是不支持XIP (Excute In Place)、存在坏块、数据不可靠,需要ECC等。本文介绍一款NAND Flash和控制器,并给出实战代码。nand flash支持的操作包括读、写、擦除等。因为写的时候只

中断
2017-10-29
CPU核只有一个中断引脚和一个快速中断引脚。还需要一个中断控制器,中断控制器是外围设备,用于实现多中断引脚、优先级控制等。1 Interrupt Controller中断控制器属于外围设备,外接各中断引脚,内接CPU核,控制中断的产生和优先级等。中断处理框图如下:s3c2440通过下列寄存器来控制中

Nested interrupt
2017-11-2
本文针对s3c2440 CPU,ARM920T core, ARMv4t architecture. 现代的处理器和中断控制器有很大不同,对嵌套中断和其它特性支持的更好,有机会后面再学习。中断模式下被打断的话,则会将PC拷贝到LR,原来的LR被覆盖了。为了解决这个问题,ARMv4t增加了System

时钟与电源管理
2017-11-4
本内容来自S3C2440手册第7章Clock & Power management.1 Overview时钟和电源模块包括3个部分:时钟控制、USB控制和电源控制。时钟控制逻辑能够产生:CPU用的FCLK、AHB总线用的HCLK、APB总线用的PCLK。包括两个锁相环(PLLs),一个用于FCLK、

PWM Timer
2017-11-5
本文来自s3c2440手册第10章,PWM Timer.1 Overview有5个16位定时器,Timer 0,1,2,3有PWM输出功能。Timer 4是内部定时器,没有输出引脚。Timer 0有一个dead-zone generator。Timer 0,1共享一个8位预分频器,Timer 2,3

RTC
2017-11-6
本文来自S3C2440手册第17章:Real Time Clock1 OverviewRTC可以在系统断电时由电池供电。RTC可以以Binary Coded Decimal (BCD)格式传输8位数据到CPU,使用STRB/LDRB指令。数据包括秒/分/时/日/星期/月和年。RTC使用外部32.76

Copyright © insidelinuxdev.net 2017. Some Rights Reserved.