
51单片机
文章平均质量分 89
koom_panel
这个作者很懒,什么都没留下…
展开
-
红外遥控实验
红外线遥控就是利用波长为 0.76~1.5μ m 之间的近红外线来传送控制信号的。原创 2023-10-05 10:11:01 · 404 阅读 · 0 评论 -
DS1302时钟
DS1302 是 DALLAS 公司推出的涓流充电时钟芯片, 内含有一个实时时钟/日历和 31 字节静态 RAM, 通过简单的串行接口与单片机进行通信。DS1302 与单片机之间能简单地采用同步串行的方式进行通信, 仅需用到三根通信线: ①RES复位②I/O 数据线③SCLK 串行时钟。时钟/RAM 的读/写数据以一个字节或多达31 个字节的字符组方式通信。DS1302 工作时功耗很低保持数据和时钟信息时功率小于 1mW。原创 2023-10-05 09:43:07 · 5681 阅读 · 0 评论 -
DS18B20温度传感器
DS18B20 是由 DALLAS 半导体公司推出的一种的“一线总线(单总线) ” 接口的温度传感器。与传统的热敏电阻等测温元件相比, 它是一种新型的体积小、适用电压宽、 与微处理器接口简单的数字化温度传感器。特点配置寄存器是配置不同的位数来确定温度和数字的转化低五位一直都是"1", TM 是测试模式位, 用于设置 DS18B20 在工作模式还是在测试模式。在 DS18B20 出厂时该位被设置为 0, 用户不需要去改动。原创 2023-10-04 15:20:31 · 2564 阅读 · 1 评论 -
IIC-EEPROM
AT24C01/02/04/08/16...是一个 1K/2K/4K/8K/16K 位串行 CMOS, 内部含有128/256/512/1024/2048 个 8 位字节, AT24C01 有一个 8 字节页写缓冲器,AT24C02/04/08/16 有一个 16 字节页写缓冲器。该器件通过 I2C 总线接口进行操作, 它有一个专门的写保护功能。原创 2023-10-04 13:52:48 · 279 阅读 · 1 评论 -
串口通信实验
串口通信(Serial Communication), 是指外设和计算机间通过数据信号线、地线等按位进行传输数据的一种通信方式, 属于串行通信方式。串口是一种接口标准, 它规定了接口的电气标准, 没有规定接口插件电缆以及使用的协议。接口标准:在串口通信中, 通常我们只使用 2、 3、 5 三个管脚。原创 2023-10-04 10:54:22 · 472 阅读 · 1 评论 -
UART串口通信
IO口模拟串口通信,让大家了解了串口通信的本质,但是单片机程序却需要不停地检测扫描单片机IO口收到的数据,大量占用了单片机的运行时间。这时候就会有聪明人想了,其实我们并不是很关心通信的过程,只需要一个通信的结果,最终得到接收到的数据就行了。这样就可以在单片机内部做一个硬件模块,让它自动接收数据,接收完了,通知一下就可以了,51单片机内部就存在这样一个UART模块,要正确使用它,当然还得先把对应的特殊功能寄存器配置好。原创 2023-09-29 15:31:12 · 3129 阅读 · 1 评论 -
实例练习与经验积累
C语言有两种方法实现类型转换,一是自动类型转换,另外一种是强制类型转换。当不同数据类型之间混合运算的时候,不同类型的数据首先会转换为同一类型,转换的主要原则是:短字节的数据向长字节数据转换。比如:c = a *b;强制类型转换的方法:在一个变量前边加上一个数据类型名,并且这个类型名用小括号括起来,就表示把这个变量强制转换成括号里的类型。如 c =;在51单片机里边,有一种这个bit类型的强制类型转换,是不符合上边讲的这个原则的,比如bit a=0;a=(bit)b;原创 2023-09-29 08:55:20 · 111 阅读 · 1 评论 -
步进电机与蜂鸣器
准双向、开漏、推挽、高阻态。实际上三极管是靠电流导通的,而MOS管是靠电压导通。开漏输出和准双向IO的唯一区别就是开漏输出把内部的上拉电阻去掉了。开漏输出如果要输出高电平时,T2关断,IO电平要靠外部的上拉电阻才能拉成高电平,如果没有外部上拉电阻IO电平就是一个不确定态。标准51单片机的P0口默认就是开漏输出,如果要用的时候外部需要加上拉电阻。而强推挽输出就是有比较强的驱动能力,如图9-1中第三张小图,当内部输出一个高电平时,通过MOS管直接输出电流,没有电阻的限流,电流输出能力也比较大;原创 2023-09-28 18:36:05 · 231 阅读 · 2 评论 -
单片机最小系统、函数进阶与按键
我们要使用STC89C52RC单片机的时候,找到它的数据手册第11页,看第二项——工作电压:5.5~3.4V(5V单片机),这个地方就说明这个单片机正常的工作电压是个范围值,只要电源VCC在5.5~3.4V之间都可以正常工作,电压超过5.5V是绝对不允许的,会烧坏单片机,电压如果低于3.4V,单片机不会损坏,但是也不能正常工作。原创 2023-09-26 17:37:22 · 236 阅读 · 1 评论 -
51常用的一些函数
【代码】51常用的一些函数。原创 2023-09-26 17:34:06 · 123 阅读 · 1 评论 -
变量进阶与点阵LED
8位串行输入、并行输出的位移缓存器,其中并行输出为三态输出(高电平、低电平和高阻抗)。15和1~7脚QA--QH:并行数据输出9和QH非:串行数据输出10脚和SCLK非(MR):低电平复位引脚11SCK(SHCP):移位寄存器时钟输入12RCK(STCP):存储寄存器时钟输入13G非(OE):输出有效14SER(DS):串行数据输入移位寄存器和存储器时钟是单独的时钟。数据在SCK的上升沿输入,在RCK的上升沿进入到 存储器中。如果两个时钟连到一起 ,则移位寄存器总是比存储器早一个脉冲。原创 2023-09-25 17:46:10 · 117 阅读 · 1 评论 -
中断与数码管动态显示
多个数码管显示数字的时候,实际上是轮流点亮数码管(一个时刻内只有一个数码管是亮的),利用人眼的视觉暂留现象(也叫余晖效应),就可以做到看起来是所有数码管都同时亮了,这就是动态显示,也叫作动态扫描。那么一个数码管需要点亮多长时间呢?也就是说要多长时间完成一次全部数码管的扫描呢(很明显:整体扫描时间=单个数码管点亮时间*数码管个数)?答案是10ms以内。原创 2023-09-23 22:05:39 · 835 阅读 · 1 评论 -
定时器与数码管基础
在数字电路中经常会遇到逻辑电路,而在C语言中则经常用到逻辑运算。逻辑上的“假”就是数字电路或C语言中的“0”这个值,而逻辑“真”就是其他一切“非0值”。原创 2023-09-23 18:03:35 · 275 阅读 · 1 评论 -
C语言基础及流水灯的实现
二进制前缀:0b十六进制前缀:0x对于二进制来说,8位二进制称之为一个字节,二进制的表达范围值是从0b00000000~0b11111111,而在程序中用十六进制表示的时候就是从0x00到0xFF,这里教大家一个二进制转换十进制和十六进制的方法,二进制4位一组,遵循8/4/2/1的规律,比如0b1010,那么从最高位开始算,数字大小是8*1+4*0+2*1+1*0=10,那么十进制就是10,十六进制就是0xA。原创 2023-09-23 12:38:06 · 255 阅读 · 1 评论 -
51单片机 硬件基础知识学习
三极管是一种很常用的控制和驱动器件,常用的三极管根据材料分有硅管和锗管两种,原理相同,压降略有不同,硅管用的较普遍,而锗管应用较少,本书就用硅管的参数来进行讲解。三极管有两种类型,分别是PNP型和NPN型。横向左侧的引脚叫作基极(base),中间有一个箭头,一头连接基极,另外一头连接的是发射极e(emitter),那剩下的一个引脚就是集电极c(collector)了。原创 2023-09-22 22:54:26 · 202 阅读 · 0 评论