嵌入式基础

提取小时:

 #define Time_Addr 0xFFFFC0000 //实时钟芯片的IO映像基址是OxFFFFC0000
 #define TIME *(volatile int *)(Time_Addr+2) 
 int getHours() 
 {
 int time=TIME;
 return (time>>11)&0x1F;
 }

设置小时:

 #define TIME_Addr  0xFFFFC0000
 #define TIME *(volatile int *) (TIME_Addr+2)
 void SetHours(int hours)
 {
 int oldtime = TIME;
int newtime = oldtime & ~ (0x1F << 11);//将小时清零,保留分钟与秒钟
newtime |= (hours & 0x1F) << 11;//设置小时时间
TIME = newtime;
}

int getHours()
{
int time = TIME;
return (time>>11) & 0x1F;
}
posted @   棉被王Excalibur  阅读(16)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示