挣扎了半天还是决定要总结一下我的单片机学习之旅!就从最基础的开始说起8,中途也会掺杂一些小项目,慢慢更~
废话不多说,直接开始8
目录
点亮第一个led灯
led的工作原理
led灯工作是具有方向性的,只有当电源正极接到led的阳极,负极接到led的阴极的情况下,led才能正常工作。
开发板上的原理图
如图,led的阳极串联一个电阻,然后连接到电源VCC,其阴极连接到单片机的P2口,若想点亮一盏led,则需将单片机对应的IO口赋为低电平。
由该原理图可得,led的阳极直接连接到电源VCC,阴极串联了一个电阻(限流。因为led有正常的工作电压与电流,若直接通过VCC 流入led,可能会使led被击穿)然后连接到单片机的IO口,D1–D8分别连接到单片机的P20–P27口,也就是说这8个led都可以通过P2口来控制。
注:因为发光二极管与限流电阻是串联的关系,若二极管仅作发光使用,则限流电阻不管接在二极管的正端还是负端,电路上的电流都是一样的;若二极管的端电压对电路其他部分有影响,则需按电压要求连接。
以使D1发光为例:根据led工作原理,电源的正极应当接到led的阳极,同时阴极须与“负极”连接到一起,即让单片机的P20口为低电平。
源程序–点亮D1:
#include "reg52.h"
sbit led=P2^0;
void main()
{
while(1)
{
led=0;//P20口给低电平,点亮D1
}
}
led闪烁
C语言常用的预处理命令1
#typedef 的使用(以下重定义针对keil编译环境)
typedef unsigned char u8;
(将unsigned char 用u8代替;假设用u8表示8位–>1个字节;unsigned char为1个字节,