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

 51单片机基础操作 控制LED灯的亮灭控制以及位移控制程序

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
51单片机基础操作 控制LED灯的亮灭控制以及位移控制程序
# n) @4 A9 W! Z8 n- u- G/*******************************************************************************  2 ^6 l7 D- l: r7 I0 W  Q
* 文件名称:LED闪烁实验
6 G( L7 s% T2 ?( T0 `6 u/ p* 实验目的:1.掌握单片机IO口操作的基本方法6 n9 z" z+ j: g
*           2.掌握软件延时函数的设计方法
4 l/ @) i, D8 t- |* 程序说明:LED以0.2S为间隔亮灭* }7 E$ ?; Y# ]
* 硬件环境:IAP15F2K61S2单片机,单片机内部振荡器频率:11.0592M4 F0 S# k# _; M# y9 G
*******************************************************************************/
* d* W9 \2 B. T! D7 B5 n7 J) {" P7 @9 N! e; f* c

" G. s% M4 V5 X; O& _+ N. A#include "reg52.h"  //定义51单片机特殊功能寄存器6 M; w, c2 [( y# ?& H# W8 r& Y
#include "intrins.h"
, D& J* ?" \1 K: y7 J! `2 q9 _
2 I0 _' Z. w: i' n

! q% ^9 b( Q( ]( ^2 w//关闭外设
8 P& m7 j# b! X5 x; v; yvoid cls_buzz(void)
8 f" Z% B* ^! E, o8 n{
3 Q9 D5 z. }( c$ }# M( z6 L1 C        P2 = (P2&0x1F|0xA0);! G% G4 F, r7 {/ G+ k
        P0 = 0x00;
9 j, @# }/ ]8 |        P2 &= 0x1F;
# N0 T! Q7 b0 W' t! y# {4 I8 S}
, @0 |$ o& ]) z+ h9 I% p) v$ [  L
, z9 S: u. F4 w7 Z

5 Y( Q: C9 U! T; j; W8 p- J//延时函数8 n$ w3 L- @+ j  x: E: @
void delay()                //@11.0592MHz3 b( r6 ^% P3 K0 @0 h" n
{
) H9 \5 _( p1 ~        unsigned char i, j, k;- b. }8 S# G8 Y7 R% N" t

- r2 l* `  v! ^
8 m- W. ?' @0 V
        _nop_();
9 m  |# W) `4 I" I. @. P        _nop_();  L+ _/ f5 C/ |: ^
        i = 9;
' m- k0 a/ ?. q- l+ G8 f# P        j = 104;
% F+ P5 }; Q" g3 _5 [0 Q( H1 i6 D8 K        k = 139;  x# u. i2 H2 t& J5 a4 B* L
        do6 W8 K4 r5 i. g0 Z
        {3 v$ Q9 }5 O5 x! L* }8 N- i5 p
                do
  E$ h) W4 I9 k. p8 K8 v. O* U                {
+ p( I4 O- ^2 p/ O( O                        while (--k);5 u' O  P* B8 H+ c
                } while (--j);
$ f& @7 e* f; [8 u# _1 d& r        } while (--i);! _% K# O& |# a
}
/ o. u4 C. W- _" @: m. z2 `3 W2 \  Z" H9 q7 d% j; Z2 E- g

) k! c% l# t$ h6 z. j//主函数8 m2 w% {+ d$ u
void main(void)
$ o6 I% L$ O0 I) Q& Z{
% E$ w" N+ _& u' v        cls_buzz();; H2 i6 @$ a$ l* E, Z4 P
        
' |; H6 w/ P5 d$ J  H, l    while(1)
; m8 r, O. C. S0 u! B' n    {
; d$ K3 _2 [1 A6 }+ J; Z        P2 = ((P2&0x1f)|0x80);- b" N. u! F1 Y9 u; {' H
                P0 = 0xff;  //LED熄灭
) u, `8 \3 x4 O2 L+ A4 `- _                P2 &= 0x1f;4 [& k9 V4 S9 z, U2 M- G
        delay();
4 ?7 ~$ Q6 n- z9 B6 V        
  M, L8 q: d9 D0 n4 _4 [        P2 = ((P2&0x1f)|0x80);- x- I3 J" ]" J& v2 N2 R5 g
                P0 = 0x00;  //LED点亮
! k2 `4 `! d0 b0 k' Q0 U8 [. Q7 T. r                P2 &= 0x1f;
8 ?& e; ?/ b1 c4 t        delay();5 X3 {5 \8 ^+ x! c+ M
    }, L0 z0 {- z4 v# g0 o: A
}
, @4 r2 T- O) I2 [5 M! v' e; u+ n9 \0 V( v& ^8 o+ `
7 o6 A$ V$ w- _1 M6 ?8 U' @
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-6-29 04:05 , Processed in 0.078125 second(s), 23 queries , Gzip On.

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

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

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