51单片机——硬件基础

单片机——硬件基础知识


宗旨:技术的学习是有限的,分享的精神是无限的。


1、单片机内部资源

STC89C52:8KFLASH、512字节RAM、32个IO口、3个定时器、1个UART、8个中断源

(1)Flash(硬盘)——程序存储空间 —— 擦写10万次,断电数据不丢失,读写速度慢

(2)RAM(内存)——数据存储空间 —— 断电数据丢失,读写速度快,无限次使用

(3)SFR  —— 特殊功能寄存器

 

2、单片机最小系统


最小系统:最少组件组成单片机可以工作的系统。

三要素:

(1)、 电源电路:5V

(2)、 晶振电路:11.0592MHZ、两个30PF

(3)、 复位电路:

P0:开漏输出,必须加上拉电阻

准双向口:

强推挽输出:电流驱动能力强

高阻态

上下拉电阻:上拉电路就是将不确定的信号通过一个电阻拉到高电平,同时限流作用。下拉电阻就是下拉到低电平。

上下拉电阻选取:从降低功耗方面考虑应该足够大,因为电阻越大,电流越小;驱动能力来看,小电阻

 

3、硬件基础知识

(1)、电磁干扰(EMI)——静电放电(ESD)、快速瞬间脉冲群(EFT)、浪涌(Surge)

(2)、去耦电容的使用

低频滤波电容,平常应用最多的事钽电容,电解电容,陶瓷电容,起到去除电源低频纹波,稳定电源的作用。

高频滤波电容,电容附近,通常用104电容来进行去除高频干扰。

(3)、三极管(PNP,NPN) b,c,e  --- 电压驱动

    控制应用

    驱动应用

 

4LED发光二极管 ——电流驱动


通常红色贴片LED, 靠电流驱动,电压1.8V~2.2V,电流1~20mA,在1~5mA亮度有所变化,5mA以上亮度基本不变。

 

VCC 电压是 5V,发光二极管自
身压降大概是 2V,那么在右边 R34 这个电阻上承受的电压就是 3V。

R = U/I  —— 1~20mA —— R:150~3K

 

5C语言基础

(1)、基本运算符

+  -   *   /   %   ++   --    =  ==   !=   +=   -=   <<   >>  &&   ||   !   &   |   ~   ^

(2)、循环(c语言以;表示一条语句)

for/while/do...while

for(表达式1;表达式2;表达式3)

{

       语句;//可以为空

}

while(表达式)//表达式为真,执行语句

{

        语句;//可以为空

}

do

{

        语句;//可以为空

}while(表达式);

(3)、函数 (模块化的思想)

类型  函数名(参数类型 参数)

{

    函数体;

}

(4)、数组

      <1>、具有相同数据类型

      <2>、具有相同的类型

      <3>、在存储器中连续存储

(5)、51单片机常用延时办法——循环、定时器

(P0 = ~(1 << i++);)

 

5、流水灯

给IO口一个低电平即可点亮LED灯。

注:单片机对外设的操作其实就是对IO口电平的控制。

#include <reg52.h>   //包含特殊功能寄存器定义的头文件typedef unsigned int  uint;
typedef unsigned char uchar;int  main(void)
{uint i = 0; // 定义循环变量i,用于软件延时uchar j = 0; // 定义计数变量j,用于移位控制while(1)  // 主循环,程序无限循环执行该循环体语句{P0 = ~(1 << j++); // P0等于1左移j位,控制8个LEDfor(i = 0; i < 20000; ++i);  //软件延时if(j >= 8)   //移位计数超过7后,再重新从0开始{j = 0;}}return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/466987.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

线程静态的几个特点

很多编码规范上都指出不要使用线程静态&#xff08;ThreadStatic&#xff09;&#xff0c;这主要是为了防止在使用的时候出现意外。当有的时候这个线程静态确实会带来一些好处&#xff0c;如何取舍就要看具体情况了。首先&#xff0c;明确一点线程静态与标准静态之间的区别。线…

马上工作了,想问下要注意哪些问题?

这是一位读者在知识星球提问的&#xff0c;涉及的内容很多&#xff0c;但是这些问题&#xff0c;我觉得很多人都需要注意&#xff0c;分享出来让大家看&#xff0c;也希望留言说下自己的看法。1一、 offer情况 1. 已签三方 2. 公司是国内靠前的芯片原厂&#xff0c;深圳&#x…

CSS绘图

1. 自适应的椭圆 背景知识&#xff1a;border-radius属性的基本用法 使用border-radius制作一个圆很简单&#xff0c;只要给任何正方形元素设置固定宽高及一半长度以上的border-radius&#xff0c;就可以得到圆形 1234background: #fb3;width: 200px;height: 200px;border-radi…

JFrame和Frame的区别

在AMT组件中分为两大类&#xff0c;这两类的基类分别是Component和MenuComponent&#xff0c;其中&#xff0c;MenuComponent是所有与菜单相关组件的父类&#xff0c;Component则是除菜单外其他AMT组件的父类&#xff0c;它表示一个能以图形化方式显示出来&#xff0c;并可与用…

51单片机——定时器

单片机——定时器 宗旨&#xff1a;技术的学习是有限的&#xff0c;分享的精神是无限的。 1、定时器和计数器 时钟周期&#xff1a;单片机时序中的最小单位&#xff0c;集体计算的放法就是时钟源分之一 机器周期&#xff1a;单片机完成一个操作的最短时间&#xff0c;12个时钟…

当年要是这样搞,我的C++也不至于这样!

C一直被称作永不过时的开发语言&#xff0c;比如游戏、服务器、人工智能等领域都必须用到C&#xff01;虽然网上有很多教程和资料&#xff0c;但仍有很多人说C难学&#xff0c;究其原因是没有找到正确的学习方法&#xff01;GoogleTest框架一直广泛应用于C/C项目测试 &#xff…

ABP之创建实体

ABP框架是一个非常庞大的框架&#xff0c;里面的东西有很多&#xff0c;那么如果我需要使用ABP进行项目的开发&#xff0c;具体的使用流程是怎样的呢&#xff1f;接下来将以一个简单的电影票管理“系统”为例子具体的实现一下。 一. 实体的创建 实体是属于领域层的&#xff0c;…

三亚野生植物园

近来朋友外出旅游颇多,大家分享快乐和美景的同时&#xff0c;文字往来也丰富。我的三亚行也该落幕了&#xff0c;休整得差不多了&#xff0c;重整行装&#xff0c;再踏旅途……诸君逍遥游芙蓉叶残桂满岩&#xff0c;粤女梦起游天姥。白塔青湖鸣沙丘&#xff0c;渡海峨眉牵白鹿。…

10张图22段代码,万字长文带你搞懂虚拟内存模型和malloc内部原理

成功是急不来的。不计较眼前得失&#xff0c;将注意力真正着眼于正在做的事情本身&#xff0c;持续付出努力&#xff0c;才能一步步向前迈进&#xff0c;逐渐达到理想的目标。不着急&#xff0c;才能从容不迫&#xff0c;结果自会水到渠成。大家好&#xff0c;我是程序喵&#…

51单片机——中断

单片机——中断 宗旨&#xff1a;技术的学习是有限的&#xff0c;分享的精神是无限的。 1、中断&#xff1a;放下手中的事情去处理另一种事情。 2、定时器中断 定时器是单片机模块的一个资源&#xff0c;确确实实存在的一个模块&#xff0c;中断是单片机的一种运行机制。不是一…

转!!ftp的主动模式(port)与被动模式(PASV)

转自 http://www.phpweblog.net/killjin/archive/2008/01/06/2653.htmlftp中主动模式(port)与被动模式(PASV)目录 开场白 基础 主动FTP 主动FTP的例子 被动FTP 被动FTP的例子 总结 参考资料 附录 1: 配置常见FTP服务器 开场白 处理防火墙和其他网络连接问题时最常见的…

深入MTK平台bootloader启动分析笔记

bootloader到kernel启动总逻辑流程图ARM架构中&#xff0c;EL0/EL1是必须实现&#xff0c;EL2/EL3是选配&#xff0c;ELx跟层级对应关系&#xff1a;EL0 -- appEL1 -- Linux kernel 、lkEL2 -- hypervisor&#xff08;虚拟化&#xff09;EL3 -- ARM trust firmware 、pre-loade…

VS2005中解决方案管理器中看不到解决方案节点的解决办法

用VS2005有一段时间了&#xff0c;有一个website要转换成webapplication&#xff0c;于是查看了一下website和webapplication的优缺点&#xff0c;决定以后多使用webapplication开发&#xff0c;但发现在使用的时候不能生成解决方案&#xff0c;郁闷啊&#xff0c;比如我新建as…

Android反翻译详解

这段时间在学Android应用开发&#xff0c;在想既然是用Java开发的应该很好反编译从而得到源代码吧&#xff0c;google了一下&#xff0c;确实很简单&#xff0c;以下是我的实践过程。 在此郑重声明&#xff0c;贴出来的目的不是为了去破解人家的软件&#xff0c;完全是一种学习…

51单片机——UART

单片机——UART串口通信 宗旨&#xff1a;技术的学习是有限的&#xff0c;分享的精神是无限的。 对于单片机来说&#xff0c;通信则与传感器、存储芯片、外围控制芯片等技术紧密结合&#xff0c;成为整个单片机系统的“神经中枢”。 1、初步认识 一位一位的发送出去的&#xf…

day 34 守护线程守护进程 互斥锁线程 信号量 生产者消费者

今日内容 1、守护进程vs 守护线程&#xff08;*&#xff09; 2、互斥锁&#xff08;**&#xff09; 3、信号量&#xff08;**&#xff09; 4、生产者消费者模型&#xff08;*****&#xff09; 5、GIL&#xff08;什么时候用进程&#xff0c;什么时候用线程&#xff09;&#xf…

20000W的电灯泡,真的是叼炸天

编排 | strongerHuang素材来源 | 电工电气学习1000W的灯泡有多亮&#xff1f; 20000W的灯泡呢&#xff1f;嵌入式专栏11000W灯泡一位手工帝名叫rctestflight&#xff0c;他认为普通白炽灯泡的能耗是LED灯8倍&#xff0c;他自己要做一盏最亮最亮的灯&#xff0c;就选择了LED灯泡…

以色列:新发明大幅提高太阳能发电效率

央视国际 [url]www.cctv.com[/url]  2007年08月22日太阳能发电是个老话题了&#xff0c;同时也有一个老问题&#xff0c;就是发电效率很低。最近&#xff0c;以色列科学家宣布&#xff0c;他们发明了一种新型的、高效太阳能发电系统&#xff0c;将促进太阳能在工业领域的广泛…

51单片机——I2C总线

单片机——I2C 宗旨&#xff1a;技术的学习是有限的&#xff0c;分享的精神是无限的。 UART 属于异步通信&#xff0c;比如电脑发送给单片机&#xff0c;电脑只负责把数据通过TXD 发送出来即可&#xff0c;接收数据是单片机自己的事情。而 I2C 属于同步通信&#xff0c; SCL 时…

物联网开发者被疯抢,华为做了什么?

5G时代到来&#xff0c;物联网技术的应用也离我们越来越近。智慧交通、智能家庭、智慧园区&#xff0c;越来越多的融入到我们的生活当中。所以&#xff0c;对于开发者而言&#xff0c;物联网将是未来发展的一大蓝海领域。但国内物联网人才短缺&#xff0c;每年人才缺口达百万之…