完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
` 本帖最后由 急速飞叶 于 2013-4-12 22:39 编辑 #include #include #define uchar unsigned char #define uint unsigned int uchar cc,bai,shi,ge,d1,d2; uchar code_table[]={0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07,0x7f,0x6f}; uchar DSY_Buffer[]={0xfe,0xfd,0xfb,0xf7,0xef}; ***it SPK=P3^2;//定义输入口状态 ***it nn=P0; float num=0,mm=0; void delay(uint z); void display(uchar bai,uchar shi,uchar ge,uchar d1,uchar d2); void delay(uint z) //延时 { uint x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } void main() //主程序 { cc=0; num=0; TMOD=0x09; //选用定时器1,Gate位赋值1 TH0=0;//设定初值 TL0=0; TR0=0; EA=1; if(SPK==0)//查INT0的状态 {if(SPK==0) TR0=1; //开计数器T0 {if(SPK==1) TR0=0;//关计数器T0 } } mm=(cc*65536+TH0*256+TL0)*0.000001;//计算时间s num=10/mm;//计算速度(10代表10mm) display(num);//显示mm/s } void timer0() interrupt 0 //计数器中断 { cc++; } void _display()//显示程序 { P0=0xff;//初始化数码管 P2=0xff; { uchar i,m,Num; bai=Num/100;//百位上的数 shi=Num/10%10;//十位上的数 ge=Num%10;//个位上的数 d1=Num*10%10;//小数点后一位 d2=Num*100%10;//小数点后第二位位 { P2=DSY_Buffer[0];//第一个数码管 nn=code_table[bai];//显示百位上的数 delay(1);//延时 P2=DSY_Buffer[1];//第二个数码管 nn=code_table[shi];//显示十位上的数 delay(1); P2=DSY_Buffer[2]; nn=code_table[ge]; delay(1); P2=DSY_Buffer[3]; nn=code_table[d1]; delay(1); P2=DSY_Buffer[4]; nn=code_table[d2]; delay(1); } while(1) ;//循环 } }` |
|
相关推荐
1个回答
|
|
马克 我也在做这个
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-使用AHT20进行环境监测之AHT20传感器介绍
727 浏览 0 评论
815 浏览 0 评论
850 浏览 1 评论
基于瑞萨FPB-RA4E2智能床头灯项目——1编译环境搭建与点亮驱动ws2812全彩LED
823 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-LCD显示图片编程示例之介绍mmap
1274 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11816 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-29 01:05 , Processed in 0.497512 second(s), Total 76, Slave 56 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号