|
请问哪位大侠帮忙解答一下? 问题如下(skyeye V1.2RC:
当设置定时器0的TDATA0,时, 写入50000000(好像大于4096就行), 读出只有4095. 同样的代码到真实的机器上测试没有问题。skyeye.conf配置如下:
cpu: arm7tdmi
mach: s3c4510b
mem_bank: map=M, type=RW, addr=0x00000000, size=0x03ff0000
mem_bank: map=I, type=RW, addr=0x03ff0000, size=0x00010000
uart: mod=stdio
# uart 1
uart: mod=pipe, desc=/dev/ttyS1
如果把mem_bank: map=M, type=RW, addr=0x00000000, size=0x03ff0000, 中的0x03ff0000,改成0x3ff7000(TDATA0偏移量:0x6004), 是, 写入和读出的是一样的。但改大(0x3ff7000)后,定时器又启不动. 怪.
附代码片段:
LDR R0, =25000000 /* 0.5 s */
LDR R1, =TDATA0 /* TDATA0 = 0x3FF6004 */
STR R0, [R1] |
|