进制位(CY)与数据左、右移动
时间:12-01
来源:互联网
点击:
1、图
2、代码
3、小结
代 码
#include
sbit led=P2^0;
sbit led2=P2^1;
void DelayUs2x(unsigned char t)
{
while(--t);
}
void DelayMs(unsigned char t)
{
while(t--)
{
//大致延时1mS
DelayUs2x(245);
DelayUs2x(245);
}
}
/*以下函数就是反转扫描的精华*/
unsigned char jpsm()//矩阵键盘反转扫描
{
unsigned char i=0;//用于接收按键数值
P0 = 0x0f;//检测低4位
if(0x0f != P0)//检测按键是否按下
{
DelayMs(10);//去抖
if(0x0f != P0)//在次判断按键是否真的按下而不是其他干扰
{
i = P0;//把低4位赋值给i
P0 = 0xf0;//检测高4位
DelayUs2x(5);//稍微延时。。这条语句可以去掉
i = i | P0;//把低4位和高4位组合成完整的按键数值
while( 0xf0 != P0 )//检测按键是否松开
{
;
}
return i;//返回按键数值
}
}
return 0;//按键没有按下返回0
}
void main()
{
unsigned char i=0xaa;
while(1)
{
if(126 ==jpsm())//判断按键1是否按下
{
/*i <= 1;//注:在Keil编译器中不管是左移还是右移,移出的数据都是放在CY中
led = CY;*/
i >>=1;
led = CY;
}
}
}
小结
1、什么是进制位
答:就是保存进位的。
进制位数 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)