ajax返回的数据怎么显示出来_数码管每秒间隔显示数字是怎么做出来的?看完秒懂...

如何实现每秒间隔显示数字呢?利用单片机延时函数空耗时间,延时1s来实现,等学完单片机定时器中断,就可以设计精确计时程序。

50e191510c737f910e662cc64f6f66bd.png

1.程序设计

#include//头文件

#defi ne uchar unsigned char //宏定义

#defi ne uint unsigned int

uchar code table []={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};//共阴数码管编码

void delay(uint a)//延时函数

{

uint j,i;

for(j=a;j>0;j--)

for(i=110;i>0;i--);

}

void main()//主函数

{

uint num;//定义变量

while(1)

{

delay(1000); //延时时间大约1s

P1=0xfe;

P0=table[num];

num++;

if(num>9)

num=0;

}

}

2.程序解释

①num++;即num=num+1。

②P1=0xfe;选通第一个数码管。

③if(num>9)

num=0;

以上是简写,写全如下:

if(num>9)

{

num=0;

}

如果num变量数字大于9,num重新赋值为“0”。

3.面包板制作展示

a6f6740a0625bd2686fdfedf40fbf7b0.png

“显示数字”面包板制作展示

4.C语言基础知识

(1)if语句

格式一:

if(表达式){语句1;语句2;}

步骤:如果表达式为“真”,则执行语句1和语句2,如果为“假”,则跳过语句1与语句2,执行其他的程序。

格式二:

if(表达式){语句1;语句2;}

else{语句3;语句4;}

步骤:如果表达式为“真”,则执行语句1和语句2,如果为“假”,则执行语句3与语句4。

(2)运算符

常见运算符如表

7411be8b7870d4d622aa57955414461f.png

运算符

上面的程序只是让“num”自加到9,如何显示大于“9”的数字呢?

当显示大于9的数值就需要用到数字的分解。

3)数字分解

以两位数字为例,一位数码管是无法显示两个数字,数字分解是必需的,分解后分别送到两个数码管显示。比如一个两位数字是num,分解十位(a表示),a=num/10(称之为求模);分解个位(b表示),b=num%10(称之为求余)。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值