本帖最后由 关关 于 2015-8-2 21:14 编辑
0802 周日
记录几个基础的
1>延时函数:
void DelayMs_12M(uint t) //12M,延时1毫秒
{
uint i,j;
for(i=t;i>0;i--)
for(j=110;j>0;j--);
}
这种延时函数并不精确,当时就一直用了。可以在烧录软件上直接获取,也可以通过定时器精确控制(后面会说到)。
2>按键消抖:
if(a==0) { delay(10); if(a==0) anjian1(); } 3>for函数实现循环:
for(e=4;e>0;e--) { P3=n; delay(5000); n=_cror_(n,1); } 4>数码管:
数码管有共阴、共阳之分,若是共阴,则高电平点亮。下图为共阴极数码管。
管脚识别:用万用表测一下就可以了。数码管分为共阴极和共阳极。以共阴极为例,先用万用表的正极(对于数字万用表为红色表笔)放在某一个管脚,另外一个负极依次去测量其他管脚。若没有一个管脚亮,说明正极接的是公共端(COM)。若亮,根据发光位置就可以判断引脚了,正极接的是相应的段码端(a,b,c,……,dp),负极为对应数码管的公共端(C1,C2)。
这断定义应该存起来的,经常用到。
led[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x40,0x00};
|