完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
#include #define uncharunsigned char #define unintunsigned int unsigned char codedispcode[]={0xc0,0xf9,0xa4,0xb0, 0x99,0x92,0x82,0xf8, 0x80,0x90,0x88,0x83, 0xc6,0xa1,0x86,0x84,0xff,0xbf};//显示代码 unsigned chardispbitcode[]={0xfe,0xfd,0xfb,0xf7}; //位选口 unsigned chardispbuf[4]={0,0,0,0}; unsigned chardispbitcnt; unint mstcnt; unint i; unint count=0; unchar tp=0; void ledshow(); void keyscan(); void delay(); void just(); void turn(); void motorstop(); void speedup(); void speeddown(); void main(void) { P3_0=1; P3_1=0; dispbuf[0]=16; TMOD=0x02; TH0=0x06; TL0=0x06; TR0=1; ET0=1; EA=1; while(1) { ledshow();//数码管显示 keyscan();//键盘扫描 } } //延时10ms程序 void delay() { unsigned char i,j; for(i=20;i>0;i--) for(j=248;j>0;j--); } //键盘扫描程序 void keyscan() { unchar temp=0; P1=0xff; if((P1&0x1f)!=0x1f) { delay(); if((P1&0x1f)!=0x1f) { temp=P1&0x1f; switch(temp) { case 0x1e: just();break; case 0x1d: turn();break; case 0x1b: motorstop();break; case 0x17: speedup();break; case 0x0f: speeddown();break; } } } while((P1&0x1f)!=0x1f); } //数码管显示程序 void ledshow() { /* P0=dispcode[dispbuf[dispbitcnt]]; P2=dispbitcode[dispbitcnt]; dispbitcnt++; if(dispbitcnt==4) { dispbitcnt=0; } */ P2=0x01;P0=dispcode[dispbuf[0]]; for(i=0;i<700;i++); P2=0x02;P0=dispcode[dispbuf[1]]; for(i=0;i<700;i++); P2=0x04;P0=dispcode[dispbuf[2]]; for(i=0;i<700;i++); P2=0x08;P0=dispcode[dispbuf[3]]; for(i=0;i<700;i++); dispbuf[1]=tp/100; dispbuf[2]=(tp%100)/10; dispbuf[3]=tp%10; } //中断服务程序 void t0(void)interrupt 1 using 0 { /* mstcnt++; if(mstcnt==8) { mstcnt=0; P0=dispcode[dispbuf[dispbitcnt]]; P2=dispbitcode[dispbitcnt]; dispbitcnt++; if(dispbitcnt==4) { dispbitcnt=0; } } */ if(count>100) count=0; if(count>tp) P3_7=0; else P3_7=1; count++; } void just() { P3_0=1; P3_1=0; dispbuf[0]=16; } void turn() { P3_0=0; P3_1=1; dispbuf[0]=17; } void motorstop() { tp=0; } void speedup() { if(tp>99) tp=100; else tp++; } void speeddown() { if(tp<1) tp=0; else tp--; }
|
|
相关推荐 |
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
751 浏览 0 评论
使用Keil建立完整的工程,并使用外部中断0触发数码管显示903
1330 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-使用AHT20进行环境监测之AHT20传感器介绍
1184 浏览 0 评论
899 浏览 0 评论
947 浏览 1 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11864 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-3 10:00 , Processed in 0.781622 second(s), Total 71, Slave 53 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号