这程序我刚打的,我也不知道能不能行,你看看吧,试试。能帮上点算点。
不好意思我没好好看清题目
!我没用计数器,sorry耽误你时间了
追问你能在帮我一下吗
我试过了,不行呀
本回答被网友采纳就是按钮按一下,数码管从0开始加1,加到9,用c语言单片机编写并且要用...
include<reg52.h>#define uchar unsigned charsbit P32=P3^2;uchar num[10]={0xc0,0x5b}; \/*具体值记不得了,可以百度,就是0-9,这里就写了俩还不一定是对的,就那意思*\/void delay50us(void){ uchar i,j; for(i=0;i<100;i++) { for(j=0;j<19;j++){;} ...
单片机程序求修改,实现按键控制数码管0-9,急!!!
if(key2==0) { num=0;while(key2==0);} } \/*实现定时器1方式1定时1S使得数码管加1显示功能*\/ if(key3==0) { delay(7);if(key3==0) { flag = ~flag;while(key3==0);} } } void T1_ini(){ TMOD=0X10;TH1=(65536-50000)\/256;TL1=(65536-50000)%256;EA=1;ET...
单片机 按键(采用独立式按键)按下一次,让液晶第一位显示的数码加1,显 ...
void DelayNms( uint N ) \/\/ 利用x、y作简单的自减运算,消耗单片机指令周期,达到延时的目的 { uint x,y;for( x=N; x>0; x-- )for( y=110; y>0; y-- );} \/\/数码管显示 \/\/ 显示方式为动态扫描,视觉暂留原理 void Display( uchar Num ) \/\/ *p指向Main函数中的数组ShowNum...
51单片机c语言设计,按键控制数码管,依次按下显示0到9循环?
while(1){ P0=tab[a];if (key1==0){delay(10);if(key==0){ while(!key1);a++;if(a==10) a=0;} } }
51单片机c语言设计,按键控制数码管,依次按下显示0到9循环
include<reg51.h> sbit k1=P1^0;define uint16 unsigned int define uchar unsigned char uchar code shuzu[ ]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};void delay(){ uint16 i=1000;while(i--);} void main(){ uchar n ;P2=0xfe;P1=0xff;while(1){ if...
51单片机汇编语言按键控制数码管加一加到999
将三个存储区分别扫描送出去即可 对于C语言:定义char 型最大256不行,那就定义unsigned int 就够用了,按键按下就让它++,加到1000时回零 即可。数码管显示得对这个变量进行百位、十位、个位分离,这个也简单 讲到这应该问题不大了吧,代码就不给你写了,写了就没意思了,呵呵 ...
求:用单片机C语言编一位数码管的数字显示 要求可以从0变化到9
\/\/1位静态显示 include<reg52.h> include<intrins.h> \/\/p0接数码管的A~H;uchar led[]={0xA0,0xBD,0x64,0x2C,0x39, 0x2A, 0x22,0xBC,0x20,0x28};\/\/0-9数字摸。unsigned int dat;main(){while(){ P0=led(dat);\/\/显示dat变量,这里只能显示数字0~9;} } ...
用单片机c51,c语言编0-9计数器程序!谢谢!!!
看你的排阻接法,你的数码管要用共阴极的 当加到9之后,再按一下,是不是又恢复到0啦???下面是更改的回答 include<reg51.h>unsigned char a;unsigned char code table[]={ 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x67};void init(void){EA=1;EX0=1;IT0=1;}void ...
单片机数码管显示0到999c语言程序怎么编
}INT_0()interrupt 0 { delay(10);if(INT0==0){sz++; if(sz>2){sz=0;}}} void T0_int()interrupt 1{ TH0=(65535-50000)\/256;\/\/设置初值 TL0=(65535-50000)%256;s++;if(s>20){s=0; if(sz==1)time++; if(time>999){time=0;} if(sz==0){time=0;\/\/清零 } ...
用C语言51单片机编写数码管从00到99的循环程序
{ TMOD=0x01;ET0=1;EA=1;TR0=1;TH0=0x3c;TL0=0xaf;} void time_1s (void) interrupt 1 { int ncount;TH0=0x3c;TL0=0xaf;ncount++;if(ncount<20) return;{ ncount=0;i++;if(i==100) i=0;} }