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

通过单片机定时器的方式实现流水灯延时,并通过外部中断改变流水灯样式

[复制链接]
  • TA的每日心情
    奋斗
    2022-1-21 15:15
  • 签到天数: 1 天

    [LV.1]初来乍到

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

    EDA365欢迎您登录!

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

    x

    通过定时器的方式实现流水灯延时,并通过外部中断改变流水灯样式。两种样式分别为:(1)4个led为一组交替亮灭,延时1s;(2)从左往右逐个点亮(同一时刻只有一个灯亮),延时1s。

    #include <reg51.h>: A2 I' I6 r, A) z
    #define uchar unsigned char
    - a6 {8 Z& h# {; `uchar count;0 A# y1 U0 O' t  Z5 Y" p
    sbit k=P3^2;% A7 G: f# f$ [
    void main(void)9 L5 \# e- u! N( s' ^
    {EA=1;! D3 o7 t$ ]" F+ A. l
    IT0=1;
    ; J% k9 M  z9 P* \9 U2 |EX0=1;
    0 S  d6 p& J" Q! L2 b4 H( TTMOD=0x01;
    - k' T, U! w! @9 ^TH0=0X3C;
    2 r( ?9 A; o7 p) n9 R8 z. n  oTL0=0XB0;
    & `$ ~& E8 \, Q  S$ L; f9 MET0=1;
    5 q7 K$ t8 W- a8 c/ ]; `, HTR0=1;       ' D1 j& X; f5 I& n+ m
    P1=0x0F;
    " T! W6 G6 q  C5 t! Zwhile(1)0 V5 I1 u& e3 J6 G' t
    ;}
    % v& m4 c+ I! f0 @3 @void INTO()interrupt 0& ~" n2 q  m& z0 e  O
    {* r4 H: F7 S% |' B7 S6 f) i
    uchar i;
    ( _" n* `  ?3 {) Owhile(1)
    - n+ {# A# G( y{
    7 X+ n7 D0 l3 VP1=0x0f;
    , `6 ?& P4 Z  C% t. ]0 q1 Nfor(i=0;i<8;i++)- V- `1 G2 J/ K9 x& \- y
    {P1>>=1;}
    & c6 X) F4 A. s- t. H7 n4 G+ D1 ?}3 V, h5 O, P' S3 U- R
    }  ~" r0 K- w/ a* p  f: c* [: O
    void timer0() interrupt 1
    % s  f1 b) M! u( D8 K0 p{" B! K9 a  w$ O+ _2 s
            TH0=0X3C;
    $ |6 b: l$ f( s+ U7 ?$ I        TL0=0XB0;- K8 {- i% ^  u
            count++;
    * Q$ c5 G) O. m6 ~2 ^        if(k==0)/ i$ w5 e! }" ?7 k: e
            {
    0 v! L4 j: J1 }% ^        if(count==20)
    / M& i, {; k+ a" Q9 A" j; o5 M" X        {
    6 }9 K3 M$ B, G2 T, m+ o6 l                count=0;" y; ~$ V, k1 {$ ^
                    P1=~P1;}
    2 J& x! J7 f4 {9 q        }
    4 o4 J4 |- Y: @+ W  W        else
    . `- w( ?$ _" ?' k3 ~0 j        {if(count==20)! Z( s2 @- i) U4 E- @: R% a
                    {# n/ a. S8 J* ^  f
                            count=0;. N2 S" A) {" U5 z  F' m7 ]
                            P1>>1;}}}
    / S& t- v5 `8 V/ Z这个程序烧录进去失败了,哪里有问题呀?

    / J, p% A' q" |# t

    该用户从未签到

    2#
    发表于 2022-4-7 14:43 | 只看该作者
    先软件仿真试试
  • TA的每日心情
    开心
    2022-1-29 15:05
  • 签到天数: 2 天

    [LV.1]初来乍到

    3#
    发表于 2022-4-7 15:02 | 只看该作者
    使用PROTEUS进行仿真测试看看
  • TA的每日心情
    开心
    2022-1-21 15:22
  • 签到天数: 1 天

    [LV.1]初来乍到

    4#
    发表于 2022-4-7 15:09 | 只看该作者
    interrupt 0里while(1)你是不打算再出去了吗
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-8-12 15:37 , Processed in 0.140625 second(s), 23 queries , Gzip On.

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

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

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