科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道Linux操作系统内核的时钟中断机制 (2)

Linux操作系统内核的时钟中断机制 (2)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

bit[7]——SET标志。为1表示RTC的所有更新过程都将终止,用户程序随后马上对日历寄存器组中的值进行初始化设置。为0表示将允许更新过程继续。

作者:赛迪网技术社区 来源:赛迪网技术社区 2007年10月26日

关键字: 内核 Linux 机制 中断

  • 评论
  • 分享微博
  • 分享邮件
 

PC机BIOS对其默认的设置值是“0110”。

状态寄存器B的格式如下所示:

各位的含义如下:

(1)bit[7]——SET标志。为1表示RTC的所有更新过程都将终止,用户程序随后马上对日历寄存器组中的值进行初始化设置。为0表示将允许更新过程继续。

(2)bit[6]——PIE标志,周期性中断使能标志。

(3)bit[5]——AIE标志,告警中断使能标志。

(4)bit[4]——UIE标志,更新结束中断使能标志。

(5)bit[3]——SQWE标志,方波信号使能标志。

(6)bit[2]——DM标志,用来控制日历寄存器组的数据模式,0=BCD,1=BINARY。BIOS总是将它设置为0。

(7)bit[1]——24/12标志,用来控制hour寄存器,0表示12小时制,1表示24小时制。PC机BIOS总是将它设置为1。

(8)bit[0]——DSE标志。BIOS总是将它设置为0。

状态寄存器C的格式如下:

(1)bit[7]——IRQF标志,中断请求标志,当该位为1时,说明寄存器B中断请求发生。

(2)bit[6]——PF标志,周期性中断标志,为1表示发生周期性中断请求。

(3)bit[5]——AF标志,告警中断标志,为1表示发生告警中断请求。

(4)bit[4]——UF标志,更新结束中断标志,为1表示发生更新结束中断请求。

状态寄存器D的格式如下:

(1)bit[7]——VRT标志(Valid RAM and Time),为1表示OK,为0表示RTC已经掉电。

(2)bit[6:0]——总是为0,未定义。

7.1.1.2 通过I/O端口访问RTC

在PC机中可以通过I/O端口0x70和0x71来读写RTC芯片中的寄存器。其中,端口0x70是RTC的寄存器地址索引端口,0x71是数据端口。

读RTC芯片寄存器的步骤是:

mov al, addr 
out 70h, al ; Select reg_addr in RTC chip 
jmp $+2 ; a slight delay to settle thing 
in al, 71h ;

写RTC寄存器的步骤如下:

mov al, addr 
out 70h, al ; Select reg_addr in RTC chip 
jmp $+2 ; a slight delay to settle thing 
mov al, value 
out 71h, al
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章