define_int
CONFIG_ARM_CLK 64000000
修改了存储器大小和起始地址的定义:
define_hex DRAM_BASE
0x0C000000;SDRAM的起始地址
define_hex DRAM_薄膜片式电感器SIZE 0x00800000;SDRAM的大小
define_hex
FLASH_MEM_BASE 0x00000000;flash的起始地址
define_hex FLASH_SIZE
0x00200000;flash的大小
3.3内核起始地址的修改
修改文件:uClinux-dist/linux-2.4.x/arch/armnommu/Makefile
修改内容:
ifeq
($(CONFIG_BOARD_MBA44),y)
-TEXTADDR = 0x0c000000
+TEXTADDR =
0x0c008000
MACHINE = S3C44B0X
INCDIR = $(MACHINE)
-CORE_FILES :=
$(CORE_FILES) romfs.o
+CORE_FILES := $(CORE_FILES)
#romfs.o
endif
说明:
TEXTADDR:内核的起始地址,通常取值:DRAM_BASE+0x8000。
3.4ROM文件系统的定位修改
修改文件:uClinux-dist/linux-2.4.x/drivers/block/blkmem.c
修改内容:
+#ifdef
CONFIG_BOARD_MBA44
+ {0, 0xc700000, -1},/*{0, 0x100000,
-1},*/
#endif
说明:将ROM file system在SDRAM中的地址定位在0xc700000。
3.5修改存储空间配置
修改文件:uClinux-dist/linux-2.4.x/include/asm-armnommu/arch-S3C44B0X/memory.h
修改内容:
-#define
PHYS_OFFSET (DRAM_BASE + 2*1024*1024)
+#define PHYS_OFFSET
(DRAM_BASE)//(DRAM_BASE + 2*1024*1024)
#define PAGE_OFFSET
(PHYS_OFFSET)
-#define END_MEM (DRAM_BASE + DRAM_SIZE -
2*1024*1024)
+#define END_MEM (DRAM_BASE+DRAM_SIZE)//(DRAM_BASE + DRAM_SIZE -
2*1024*1024)
说明:PHYS_OFFSET:RAM第一个bank的起始地址。
3.6初始化节拍定时器
修改文件:uClinux-dist/linux-2.4.x/include/asm-armnommu/arch-S3C44B0X/time.h
修改内容:
-extern
void s3c44b0x_timer_interrupt(int irq, void *dev_id, struct pt_regs
*regs);
+//extern void s3c44b0x_timer_interrupt(int irq, void *dev_id, struct
pt_regs *regs);
+static inline void s3c44b0x_timer_interrupt(int irq, void
*dev_id, struct pt_regs *regs)
+{
+ do_leds();
+
do_timer(regs);
+}//modified by hzh
/* TODO: THE, 2003-08-13, do timer setup lik电感器厂家e in eCos */
-#define
S3C44B0X_TIMER5_PRESCALER 16
+#define S3C44B0X_TIMER5_PRESCALER 32
extern __inline__ void setup_timer (void)
{
u_int32_t
tmod;
u_int32_t period;
+ __u32 rw_tmp;
period = (CONFIG_ARM_CLK/S3C44B0X_TIMER5_PRESCALER)/HZ;
outl(period,
S3C44B0X_TCNTB5);
@@ -36,8 +42,14 @@
outl(tmod, S3C44B0X_TCON);
/* initialize the timer period and prescaler */
- outl((5-1) << 16,
S3C44B0X_TCFG0);
- outl( (0x3 <<20), S3C44B0X_TCFG1); /* prescaler
*/
+ rw_tmp = inl(S3C44B0X_TCFG0);
+ rw_tmp &= ~(0xff<<16);
+
rw_tmp |= (16-1)<<16;
+ outl(rw_tmp, S3C44B0X_TCFG0电感器设计); // prescaler =
1/16
+ rw_tmp = inl(S3C44B0X_TCF功率电感G1);
+ rw_tmp &=
~(0xf<<20);
+ rw_tmp |= 0<<20;
+ outl(rw_tmp, S3C44B0X_TCFG1);
// mux = 1/2
说明:这里,uClinux使用了S3C44B0X的内部定时器5,并利用定时器5的中断来产生节拍。
3.7定义二级异常中断矢量表的起始地址
修改文件:uClinux-dist/linux-2.4.x/include/asm-armnommu/proc/system.h
修改内容:
+#ifdef
CONFIG_BOARD_MBA44
+#undef vectors_base()
+#define vectors_base()
(DRAM_BASE)
+#endif
说明:vectors_base()定义了二级异常中断矢量表的起始地址,这个地址与Bootloader中的_IRQ_BASEADDRESS相对应。
3.8定义CPU体系结构和交叉编译器
修改文件:uClinux-dist/linux-2.4.x/Makefile
修改内容:
-# ARCH :=
armnommu
+ARCH := armnommu
# ARCH := m68knommu
# ARCH := h8300
#
ARCH := niosnommu
……
HOSTCFLAGS = -Wall -Wstrict-prototypes -O2
-fomit-frame-pointer
# CROSS_COMPILE = m68k-elf-
-# CROSS_COMPILE = arm-elf-
+CROSS_COMPILE
模压电感器= arm-elf-
# CROSS_COMPILE 电感器生产厂家= h8300-elf-
# CROSS_COMPILE = nios-elf-
#
CROSS_COMPILE = e1-coff-
说明:这里定义了CPU体系结构:ARCH :=
armnommu和对应的交叉编译器名称:CROSS_COMPILE = arm-elf-。
3.9以太网卡寄存器地址的偏移量修改
这里针对ARMSYS的硬件结构,要做两处特殊的修改:
修改文件:uClinux-dist/linux-2.4.x/driver/net/8390.h
修改内容:#define
ETH_ADDR_SFT 8
说明:访问RTL8019内部寄存器地址的偏移量。1
集成门极换向晶闸管(IGCT)是集成门极驱动电路和门极换流晶闸管(GCT)的总称,其中GCT是以GTO为基础的器件。IGCT采用了硬驱动、缓冲层和透明阳极发射极等新技术,与GTO相比具有开 贴片绕线电感的作用。基本作用:电感滤波、振荡、延迟、陷波等;形象说法: 通直流,阻交流 细模压电感生产厂化解说:在电子线路中,电感线圈对交流有限流作用,它与电阻器或电容器能组成高通或低通滤波器、移 插件电感器工厂 相信大家对开关电源变压器并不陌生,开关电源变压器在各种电子装备中都常被用到,它作为一种主要的软磁一体成型电感厂家电磁元件,在电源技术中和电力电子技术中得到广泛的应用,开关电功率电感器
上一篇: AT89C51串并转换驱动数码管实验指导
下一篇:功率电感器
5/7 首页 上一页 3 4 5 6 7 下一页 尾页 |