完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
#include
#include #define uint unsigned int #define uchar unsigned char ***it LOAD=P1^6; //选择P1.7作为CS ***it DI=P1^4; //选择P1.5作为数据输入 ***it DCLK=P2^5;//选择P2.6作为时钟 ***it LOAD1=P1^7; //选择P1.7作为CS1 ***it DI1=P1^5; //选择P1.5作为数据输入1 ***it DCLK1=P2^6;//选择P2.6作为时钟1 uchar green[3][8]; uchar red[3][8]; uchar dis[20][4]; int val[20]={-888,-300,-250,-200,-150,-100,-75,-50,-30,-15,0,15,30,50,75,100,150,200,250,300}; int n; uchar judge(int x) //判断正负 { uchar z; if (x<0) {z=16;} else {z=18;} return(z); } uint abs(int x)//绝对值 { return(x<0?-x:x); } void delay(uint time) { int i; for(i=0;i } int green_light(int n)//LED红灯判断 { int i; if((n>0)&(n<9)) { for(i=0;i } if((n>8)&(n<17)) { for(i=0;i<8;i++) green[0][i]=1; for(i=8;i } if((n>16)&(n<20)) { for(i=0;i<8;i++) green[0][i]=1; for(i=8;i<17;i++) green[1][i-8]=1; for(i=16;i } } void display_452(int *v)//452数显程序分位 { uchar i; uchar temp1,temp2,temp3; uint alevel; for(i=0;i<=20;i++) { dis[i][0]=judge(v[i]); alevel=abs(v[i]); temp1=alevel/100; //分位显示 temp2=(alevel/10)%10; temp3=alevel%10; if (temp1>0) {dis[i][1]=temp1; dis[i][2]=temp2; dis[i][3]=temp3;} else {dis[i][1]=16; if(temp2>0) {dis[i][2]=temp2; dis[i][3]=temp3;} else{dis[i][2]=16; dis[i][3]=temp3;} } } } void main() { uchar i,j; n=11; display_452(val); while(1) { green_light(n); for(i=0;i<3;i++) { for(j=0;j<8;j++) { red[i][j]=1-green[i][j]; } } } } |
|
相关推荐
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
【RA-Eco-RA2E1-48PIN-V1.0开发板试用】(第三篇)ADC采集+PWM输出
489 浏览 0 评论
《DNK210使用指南 -CanMV版 V1.0》第四十五章 人脸识别实验
498 浏览 0 评论
655 浏览 0 评论
如何用OpenCV的相机捕捉视频进行人脸检测--基于米尔NXP i.MX93开发板
1329 浏览 0 评论
《DNK210使用指南 -CanMV版 V1.0》第四十章 YOLO2人手检测实验
558 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11753 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-21 02:22 , Processed in 0.444272 second(s), Total 40, Slave 33 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号