Raspberry Pi Timer

Raspberry Pi Timer

The Physical (hardware) base address for the system timers is 0x7E003000.

树莓派的Timer共有7个寄存器 分别是

0x0   CS       System Timer Control/Status                 32
0x4   CLO    System Timer Counter Lower 32 bits    32
0x8   CHI     System Timer Counter Higher 32 bits    32
0xc   C0       System Timer Compare 0                       32
0x10 C1       System Timer Compare 1                       32
0x14 C2       System Timer Compare 2                       32
0x18 C3       System Timer Compare 3                       32

Raspberry Pi GPIO

Raspberry Pi GPIO

树莓派的共有54个GPIO 这54个GPIO通过 0x7e20 0000 – 0x7e20 00b0 这41 个寄存器控制 。有用的寄存器有:

1.GPFSEL ( GPIO Function Select)    共六个GPFSEL0 – GPFSEL6,每个GPFSEL控制10个GPIO pin ,即GPFSEL的0-29 bit 每3bit控制一个GPIO pin 30、31两个bit无用。作用是控制GPIO pin 的功能。 功能号:

Raspberry Pi GPU 编程

Raspberry Pi GPU 编程

要把我的操作系统移植到Raspberry Pi 上了,所以最近一直在看ARM的东西。找来找去只找到一个有点用的 http://www.cl.cam.ac.uk/projects/raspberrypi/tutorials/os/   剑桥大学的一份教程,虽然离一个完整的内核还差得很远,但对我还算是有点用。之前一直担心的GPU的问题也解决了,也是我找到的唯一一份和Raspberry Pi GPU编程相关的东西了。

PS2鼠标中断信号的处理

键盘数据已经可以正常接收了,鼠标的处理比键盘要稍微复杂一点。鼠标每次的信号是三个字节,第一字节0-2分别保存着鼠标左键右键中键是否按下的标志。3位一直为1。根据这个特性可以判断接收到的字节是否是鼠标第一字节的信号。4 5 两位分别表示鼠标 x,y位置是否发生位移。 6 7  是 x y溢出标志位。

80386寄存器(转载)

80386寄存器(转载)

写这篇文章,完全是因为学习保护模式需要这些知识,读者完全可以走马观花,大致看看有什么内容,知道需要的时候来查这篇文章就可以了,完全没有必要抵抗着困意非要把这篇文章认真看完,记住里面每一个寄存器里每一位的定义,但是以后的文章如果需要,一定要记得回来查查相关的内容。 80386共提供7种类型的32位寄存器,

Bochs

Bochs

刚刚编译好的新鲜Bochs出炉了。编译这个还真是费尽周折。先从Bochs官网下载win32 编译好的程序。打开发现竟然不能模拟80386CPU,可能是80386太古老了吧。 找了半天才在stackoverflow上看到要重新编译。下载源码,上传到RaspberryPi上加–enable-cpu-level=3  config。然后再弄到win上用VS2013编译。