找回密码
 注册
关于网站域名变更的通知
查看: 408|回复: 3
打印 上一主题 下一主题

为什么只能显示个位,显示不了十位百位?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-11-16 09:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
求大佬帮忙看一看改一改吧,为什么只能显示个位,显示不了十位百位?* b2 M* f2 a- r' \
#include<reg51.h>
6 M( q' T( o5 c0 ?: [: y#define uint unsigned int
4 P8 f" e: _' z3 y# e1 [. r#define uchar unsigned charsbit P2_3=P2^3;- _3 x; k3 o9 p2 `
sbit k1=P3^4;
4 O+ C1 |- o" K# t4 Q$ Gsbit k2=P3^5;
2 p, w( i; r) M2 O# p# L( Xsbit k3=P3^6;
0 ?4 _: F6 {/ X2 N5 D: nsbit k4=P3^7;
$ Y5 x" S, m: v& E) Nsbit dula=P2^6;( I0 {3 s5 n8 P$ X$ r4 `
sbit wela=P2^7;
8 L3 S8 K; W0 Z/ R* s. u" Xuint pwm,num;
- l/ h, M8 s! \+ ]! |+ Ruchar temp,a;" U& Q- m" j2 x; f' n
uchar code table[]=7 {8 ^3 ]$ g0 a9 B/ L7 {( o
{ 0x3f ,0x06 ,0x5b ,0x4f,0x66 ,0x6d, 0x7d ,0x07 ,0x7f, 0x6f}' a2 ]4 J6 q2 X1 n7 r
;! a  E7 m1 g  p! }& P& J
uint G_H,G_L,D_H,D_L;void delay(uint t){uint x,y;for(x=t;x>0;x--)
7 c$ X* e. A9 t: U  J* D        for(y=150;y>0;y--);8 g( Q( K$ q9 ~; Q2 A. g' K' s
}! M! L- Z+ K6 D
void display(pwm)1 M: b0 a5 t3 f/ F4 X
{
' r) R# v( X  T6 Z+ ?" c+ w* Junsigned char m,n,q;m=pwm/100;n=pwm/100%10;q=pwm%10;
6 f! V0 |" R( L! O% L        dula=10=table[m];dula=0;wela=10=0xfe;wela=0;delay(1);
% f3 @0 e' p3 @5 @& s2 v+ y        dula=10=table[n];dula=0;wela=1;P0=0xfd;wela=0;delay(1);
* P; P5 a* o2 |dula=1;6 G; x* Q( L  A
P0=table[q];; L7 ~8 q' g3 @. S
dula=0;; t# \/ h) Y7 f, N# ~  _
wela=1;
' R- `* G. }( w" dP0=0xfb;, j; E7 e# E% @0 U( Z9 y2 T  x' s! @
wela=0;+ L- O" }" K$ ~- ?- s  k
delay(1);" O- x. t2 |' \- x
}
' |8 g7 J3 l  a9 _void main()6 S" a, s. l4 u/ j; e; D
{        EA=1;  ET0=1;  TMOD=0x01;  TR0=1;        P2_3=0; while(1)        {    G_H=(65536-pwm)/256;    G_L=(65536-pwm)%256;    D_H=(65536-100+pwm)/256;    D_L=(65536-100+pwm)%256;     if(k1==0) {delay(10);while(!k1);TR0=1;pwm=50;}                 if(k2==0) {delay(10);while(!k2);pwm=(pwm==100)?100pwm+1);}                 if(k3==0) {delay(10);while(!k3);pwm=(pwm==0)?0pwm-1);}                 if(k4==0) {delay(10);while(!k4);TR0=0;P2_3=0;pwm=0;}                TF0=0;          display(pwm);                }}
- z9 R( M/ r$ S/ u  ]4 {void timer0() interrupt 1{    P2_3=~P2_3;    if(P2_3==1) {TH0=G_H;TL0=G_L;}    if(P2_3==0) {TH0=D_H;TL0=D_L;}}
3 T7 s' T6 b. h
  • TA的每日心情
    开心
    2023-1-3 15:10
  • 签到天数: 2 天

    [LV.1]初来乍到

    推荐
    发表于 2022-11-16 11:04 | 只看该作者
    可以DEBUG看看

    该用户从未签到

    3#
    发表于 2022-11-16 11:13 | 只看该作者
    代码没有具体看,不过你不显示,应当是算错了吧,51单片机可以单步调试的。可以DEBUG看看

    该用户从未签到

    4#
    发表于 2022-11-16 13:23 | 只看该作者
    我看了,你是算错了。
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-10-8 20:59 , Processed in 0.156250 second(s), 24 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表