| 标题 | 阅读 | 评论 | 转发 | 发布日期 | |
|---|---|---|---|---|---|
| C语言嵌入式系统编程修炼之五:键盘操作 | 564 | 0 | 0 | 2009-12-01 | |
| C语言嵌入式系统编程修炼之四:屏幕操作 | 697 | 0 | 0 | 2009-12-01 | |
| C语言嵌入式系统编程修炼之三:内存操作 | 550 | 0 | 0 | 2009-12-01 | |
| C语言嵌入式系统编程修炼之二:软件架构篇 | 640 | 0 | 0 | 2009-12-01 | |
| C语言嵌入式系统编程修炼之一:背景篇 | 623 | 0 | 0 | 2009-12-01 | |
| C语言指针详述(3) | 666 | 0 | 0 | 2009-12-01 | |
| C语言指针详述(2):数组与指针 | 920 | 0 | 0 | 2009-12-01 | |
| C语言指针详述(1) | 894 | 0 | 0 | 2009-12-01 | |
| GNU C 与ANSI C 相比,独特的9个地方 | 1134 | 0 | 0 | 2009-11-30 | |
| GNU C 与ANSI C 相比,独特的9个地方 | 1135 | 0 | 0 | 2009-11-30 | |
| Linux内核使用的GNU C扩展 | 1195 | 0 | 0 | 2009-11-30 | |
| kmalloc详解与分配大小的限制 | 10046 | 0 | 0 | 2009-11-19 | |
| struct--resource | 2014 | 0 | 1 | 2009-11-19 | |
| 函数指针与typedef | 978 | 0 | 0 | 2009-11-18 | |
| container_of()宏的简要解析 | 904 | 0 | 0 | 2009-11-18 | |
| C语言 1999年标准 (C99) | 1244 | 0 | 0 | 2009-11-17 | |
| C 语言中函数指针解析一例 --(*(void (*)( ) )0)( ) | 1442 | 0 | 0 | 2009-11-17 | |
| [转]C/C++语言void及void指针深层探索 | 704 | 0 | 0 | 2009-11-17 | |
| c语言中的volatile关键字 | 556 | 0 | 0 | 2009-11-17 | |
| 上拉电阻 | 649 | 0 | 0 | 2009-11-16 |
config20102009-11-19 19:35
外设fpga做的8k的memory,用arm9去读写它,在linux2.6系统下;这样做对吗?
实际地址映射到虚拟内存中,用得到的虚拟地址去读写。
地址总线:a1-a14 数据总线:d0-d16
#define FPGA_BASE_ADDR (0x18000000)//片选为nGCS3
#define BWSCON (0x48000000)
#define BANKCON3 (0x48000010)
#define IP_SIZE (0x1FFF)//13根地址线8K的物理空间
static void *bwscon,*bankcon3,*fpga_base_addr;
bwscon = ioremap_nocache(BWSCON,0x0000004);
bankcon3 = ioremap_nocache(BANKCON3,0x0000004);
fpga_base_addr = ioremap_nocache(FPGA_BASE_ADDR,IP_SIZE);
writel(readl(bwscon)|0xD000,bwscon);
writel(0x7FFC,bankcon3);
for(i=0;i