登录  | 立即注册

游客您好!登录后享受更多精彩

扫一扫,访问微社区

QQ登录

只需一步,快速开始

开启左侧

[寒假笔记] 左右循环流水灯

[复制链接]
发表于 2019-1-19 21:52:37 | 显示全部楼层 |阅读模式
学习笔记
学习科目: 单片机
学习安排: 自己编写流水灯程序以及一些个人感想
开始时间: 2019-01-19
结束时间: 2019-01-19
单片机是一种可以利用程序控制引脚高低电平,并借此控制外部电路,来实行众多功能的一种元器件。

#include <STC12C5A60S2.H>      
sbit a=P1^1;
sbit b=P2^0;
sbit c=P2^1;
sbit d=P2^2;
void main()            
{
  void Timer0Init();    //延时函数
  unsigned int cut=0,cut1;
  a=0;   //a为74HC245的ENLED,需要为零,74HC245才能运行
  b=0;  //b,c,d为74HC245左侧的三个引脚,0 1 1 对应八个LED的小灯
  c=1;
  d=1;
  while(1)

2019-01-19 (1).png


   {


   for(cut1=0;cut1<=7;cut1++)  //亮的LED向右移动
   {
    P0 = ~(0x01 << cut);
    cut++;
    Timer0Init();
   }
   for(cut1=0;cut1<=7;cut1++)  //亮的LED向左移动
   {
    cut--;
    P0 = ~(0x01 << cut);
    Timer0Init();
   }
  }  
}

void Timer0Init(void)  //用定时器做一个延时函数
{
unsigned int num=0;
AUXR &= 0x7F;  
TMOD &= 0xF0;  
TMOD |= 0x01;  
TL0 = 0xB0;  
TH0 = 0x3C;  
TF0 = 0;  
TR0 = 1;
  while(1)
{
  if(TF0 == 1)
  {
   TF0 = 0;
   TH0 = 0x3C;
   TL0 = 0xB0;
   num++;
   if(num>=20)  //通过循环延长函数的时间
   {
    break;
   }
  }
}
}

评分

参与人数 1铜板 +40 收起 理由
如果让他嘎斯 + 40 很给力!

查看全部评分

好懒~~不想说~~~
发表于 2019-1-20 01:18:21 | 显示全部楼层
头文件在哪里,sbit其实可以不用,坚持往下学,加油
抟扶摇而上者九万里,去以六月息者,野马也,尘埃也
发表于 2019-1-20 01:45:18 | 显示全部楼层
重点语句都注释了,理解的不错~
Carpe.Diem.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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