下载此文档

单片机程序知识点剖析.doc


文档分类:IT计算机 | 页数:约16页 举报非法文档有奖
1/16
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/16 下载此文档
文档列表 文档介绍
: .
单片机程序知识点
第#页
第#页
按键扫描支持连续按一般思路
u8 KEY_Sca n( void)
{
if(KEY 按下)
{
delay_ms(10); 〃延时 10-20ms,防抖。 if(KEY 确实按下)return KEY_Value ; return无效值;
}
}
按键扫描不支持连续按一般思路
u8 KEY_Sca n(void)
{
static u8 key_up=1;
if ( key_up && KEY 按下)
{
delay_ms(10);〃 延时,防抖 key_up=0;〃标记这次key已经按下 if(KEY确实按下)
{
return KEY_V ALUE;
}
}else if(KEY 没有按下)key_up=1; return没有按下
}
串口通讯2
void UART() in terrupt 4
{
if(RI) 〃检测是否接收完成
{
num = SBUF;//num 取出接收缓存器的值
P1 = SBUF;
nu m++;
RI = 0;
SBUF = num;
while(!TI);
TI = 0;}}
两个等于控制占空比
timer0() in terrupt 1
{
t++; //每次定时器溢出加1
if(t==250) //PWM 周期 100 个单位
{
t=0; //使t=0,开始新的PWM周期
P仁0x00; //输出端口
}
//按照当前占空比切换输出为高电平
if(PWM_T==t)
{
P仁 0xff;
}}
数码管动态显示
un sig ned char code
Dua nM a[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d, 0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x 79,0x71}; //显示段码值0~F
un sig ned char code
WeiMa[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xb
f,0x7f};/分别对应相应的数码管点亮,即位码 while(1)
{
DataPort=WeiMa[i]; // 取位码
LATCH2=1; // 位锁存
LATCH2=0;
//取显示数据,段码
DataPort=Dua nM a[ nu m+i];
LATCH1=1; // 段锁存
LATCH 仁0;
//扫描间隙延时,时间太长会闪烁,太短 会造成重影
Delay(200);
i++;
//检测8位扫描完全结束?如扫描完成则
从第一个开始再次扫描 8位
if(8==i) i=0;
}
数码管动态显示
动态显示消隐方法
/*
显示函数,用于动态扫描数码管
输入参数FirstBit表示需要显示的第 一位,如赋值2表示从第三个数码管开始显 示,如输入0表示从第一个显示。
Num表示需要显示的位数,如需要显示 99两位数值则该值输入 2
*/
//存储显示值的数组
un sig ned char TempData[10];
//分解显示信息,如要显示 68,
则 68/10=6 68%10=8
TempData[0]=dofly_Dua nM a[ num/10];
TempData[1]=dofly_Dua nMa[nu m%10]; void Display (un sig ned char FirstBit, un sig ned char Num)
{
un sig ned char i;
for(i=0;i<Num;i++)
{
DataPort=0; //清空数据,防止有交替重影
LATCH1=1; //段锁存
LATCH 仁0;
DataPort=WeiMa[i+FirstBit]; // 取位码
LATCH2=1; //位锁存
LATCH2=0;
DataPort=TempData[i]; // 取显示数据,段码
LATCH1=1; //段锁存
LATCH 仁0;
Delay(200); //扫描间隙延时,时间太长
/ 会闪烁,太短会造成重影
}
}
if(num<1000) //如果小于1000则千位不显示
TempData[0]=0;
else
TempData[0]=dofly_Dua nM a[ nu m/1000];
//分解显示信息,如要显示 68,则68/10=6
/

单片机程序知识点剖析 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息