STC89C52RC - 10 - 流水灯得两种实现方法

一、准备阶段

        找到要控制得针脚,首先看开发板原理图 或者 按自己 喜好搭建得电路 找到控制LED亮灭得 单片机管脚,我们这次要控制8个led,我是用得一组P2针脚直接空得led负极

        由于LED这个中器件能耗比较小,可以用 针脚开到低电平 作为负极使用 从而控制 LED得亮灭

        有一点必须注意 STC52单片机得单个针脚灌电流(往单片机内部流入得电流)最大是20ma,所以我们把灌电流控制在10ma是比较安全比较保守得。

        还有STC52单片机得输出电流最大也是20ma左右,而且它得所有针脚输出电流总上限是55ma,所以我们最好不要用它来直接驱动大负载。

二、编写程序

        方法1:使用按位位移来实现流水灯( << 和 >> )

#include <reg52.h>
#include <intrins.h>
typedef unsigned char u8;  // 把unsigned char 定义成 u8 方便后期使用

	
#define LED_port P2  //用宏定义得方式将P2端口改名叫 LED_prot	


void Delay500ms()		//@11.0592MHz 延迟500毫秒 这个是用stc-isp软件自动生成得
{
	unsigned char i, j, k;

	_nop_();
	i = 4;
	j = 129;
	k = 119;
	do
	{
		do
		{
			while (--k);
		} while (--j);
	} while (--i);
}


	
	
void main ()
{
	u8 i = 0;
	while(1)
	{
		for(i = 0; i < 8; i++)  /
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值