登录  | 立即注册

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

扫一扫,访问微社区

QQ登录

只需一步,快速开始

开启左侧

[寒假笔记] 点亮LED小灯

[复制链接]
发表于 2021-2-7 00:34:35 | 显示全部楼层 |阅读模式
学习笔记
学习科目: 单片机
学习安排: 了解第二章内容,基本掌握相关知识
开始时间: 2021-02-03
结束时间: 2021-02-04
目标安排:自阅理解手把手教你学51单片机,并了解相关内容                 观看B站金沙滩工作室相关教程并根据视频写程序
                 根据程序进行相关修改直至了解程序基本含义
收获:        
                   一、 限流电阻计算方法:1.确定消耗电压范围,
                                                   2.确定电流承受范围
                                                   3.最小电阻=(输入电压-最大电压)/最大电流
                                                   4最大电阻=(输入电压-最大电压)/最小电流

                  二、  外围电路:(包括控制电路,案件电路,显示电路模块等等)某一种芯片或者集成电路如果通电,
                                   无法正常工作,或者无法得到如愿的效果,需要添加一些别的电路完成集成电路的工作效果,
                                   可能一种集成电路,加上不同的外围电路,就会达到不同的效果
                 三、   Flash:意义断电后数据不丢失
                 四、 RAM:单片机数据的储存空间。可读写速度非常快,理论可无限次写入
                 五、SFR:特殊功能寄存器
                 六、反复练习了下载程序点亮小灯的操作,能不根据教程自己完成这些操作
                 七、LED=0会成功点亮,=1时会熄灭后续可根据这个性质来写程序使达到流水效果
实验及结果:
原代码:
#include <reg52.h> //包含特殊功能寄存器定义的头文件
sbit LED = P0^0; //位地址声明,注意:sbit 必须小写、P 大写!
sbit ADDR0 = P1^0;
sbit ADDR1 = P1^1;
sbit ADDR2 = P1^2;
sbit ADDR3 = P1^3;
sbit ENLED = P1^4;
void main()
{
ENLED = 0;
ADDR3 = 1;
ADDR2 = 1;
ADDR1 = 1;
ADDR0 = 0;
LED = 0; //点亮小灯
while (1); //程序停止在这
}


修改之后并运行成功的代码及现象:
一、#include<STC12C5A60S2.H>/*预编译*/
sbit LED=P0^0;
sbit ADDR0=P2^0;
sbit ADDR1=P2^1;
sbit ADDR2=P2^2;
sbit ENLED=P1^1;
void main()
{
  ENLED=0;
        ADDR2=1;
        ADDR1=1;
        ADDR0=0;
        LED=0;
while(1);
}
点亮LED第一个小灯.jpg
LED=P0^0代表第一个小灯,经过运行第一个小灯被点亮
二、改变小灯序号数

#include<STC12C5A60S2.H>/*预编译*/
sbit LED=P0^1;
sbit ADDR0=P2^0;
sbit ADDR1=P2^1;
sbit ADDR2=P2^2;
sbit ENLED=P1^1;
void main()
{
  ENLED=0;
        ADDR2=1;
        ADDR1=1;
        ADDR0=0;
        LED=0;
while(1);
}

经运行后第二个小灯成功点亮

不明白地方:1、sbit ADDR0=P2^0;类似这一步将P2换成P1就不能成功点亮
        2、sbit ENLED=P1^1将代码换成以上类似格式就不会成功点亮
        3、不明白主函数为什么要这样写

















点亮LED第二个小灯.jpg
好懒~~不想说~~~
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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