- 博客(19)
- 收藏
- 关注
原创 (十六)ADC转换实验
本节主要是回顾有关于ADC的对应内容,我们这章通过一个AD芯片xpt2046来读取外部电压的变化,将电压的数字量显示在数码管上。关于ADC: 我们都知道单片机内部都是数字量,就是1或者0,而我们的电流电压在传递的时候是模拟量,也就是模拟量很可能是一个动态连续的电压,如果我们直接把这个电压放到单片机上,通过我们内部电路转化,大于多少电压值的为1,小于多少电压的为0,但是这个并不能表示电压值的具体大小,所以有了ADC来把模拟电压值转化为多位数字电压值,而你转化的电压的位数越多,说明你的转化越准确。
2022-06-27 21:07:52 3529
原创 (十五)红外通信
本节我们主要是讲解有关于红外通信的内容,我们通过我们的一个红外发射器(就像一个遥控器一样的东西)向连接了红外接收器的51单片机发射一个红外信号,红外接收器接收到了信号之后在我们的数码管上显示出来我们发射的具体的按键值。关于红外光: 人类能看到的光从长到短排列依次就是彩虹七色:红,橙,黄,绿,青,蓝,紫。其中红光的波长范围为0.62~0.76um;紫光的波长范围为0.38~046um;比紫光波长还短的光叫紫外线,比红光波长长的光叫红外线。红外线遥控就是利用波长为0.76u...............
2022-06-09 00:06:04 2620
原创 (十四)简单电机控制
这一节我们主要是讲电机相关的内容,我们先了解不用pwm来控制电机,而是只是使用GPIO来GPIO来控制电机的正反转和停止,但是只是使用电机驱动不起来电机,因为我们的GPIO输出的功率驱动不了电机,所以我们还是需要一个驱动电路或芯片来驱动电机,本节我们就使用GPIO来控制电机驱动芯片来控制电机转动几秒之后停止。硬件本节使用的驱动芯片是ULN2003,不仅可以用来驱动我们的直流电机,还可用来驱动五线四向步进电机。关于直流电机,直流电机就是将电能转化为机械能(直流电动机)或者将机械能转化为...
2022-05-18 22:00:53 1467
原创 (十三) 串转并
本节主要是假如GPIO的数量太少,达不到我们希望的要求,那么我们可以使用74hc595芯片,通过这个芯片可以使得我们使用少数gpio就能扩展出大量的gpio,完成我们的功能,本节我们使用这个芯片来完成一列led点阵的流水灯的效果。1 硬件由硬件原理图我们也能大概分析出来我们通过配置P3^4,P3^5,P3^6这三个引脚来控制右边的8个引脚,74HC596内部含有1个8位的移位寄存器和一个存储器,数据在SRCLK的上升沿输入,输入到移位寄存器里面,然后在RCLK的上升沿由移位寄存器输出到存储器中,
2022-04-01 23:39:02 599
原创 (十二)SPI通信
本节主要说明spi通信,通过51单片机模拟spi和ds1302时钟芯片进行通信,通过向ds1302写入当前时间,然后通过spi读出当前时间并在数码管上显示。(1)spi通信协议我们大部分的协议其实都是大致相等的,当然也可能会有一些区别,就以spi来说,spi都可以分为三线制和四线制,他们在通信的时候的相位和空闲时电平等都可能不相同,所以spi的协议好像稍微更加复杂,但是大致的原理相似,只要掌握了spi大致的原理,这个时候其实我们去看芯片手册,对应芯片手册上的时序就可以完成通信和相应的功能了。
2022-03-31 23:33:10 1185
原创 (十一)单总线通信
本节主要是通过我们的51单片机的gpio来模拟一线式总线通信,通过一线式总线和ds18b20温度传感器进行通信,读出环境中的温度,并通过数码管显示当前温度。1) 一线式总线通信协议...
2022-03-28 21:26:22 4208
原创 (十)I2C通信
本节我们来完成I2C的内容的学习,上一节我们了解的是串口通信,主要是我们的电脑和51单片机的通信,而这一节我们介绍51单片机和他的外设的通信,我们通过向E2prom里面读写一个字节数据来完成本实验。1. I2C总线I2C总线是由于飞利浦公司开发的两线式串行总线,用于连接微控制器及其外围设备,I2C总线只有两根双向数据线,一根SDA数据线,数据线用来表示数据,一根SCL时钟线,用来同步时钟。在一个I2C通信线中,可连接多个I2C设备,每个连接到总线的设备都有一个独立的地址,主机可以利用...
2022-03-14 23:20:07 1387
原创 (九)串口中断
本节我们来回忆串口有关的内容,串口在我们51单片机上虽然用的不算多,主要是用来下载,但是以后假如玩儿其他板卡的时候使用的就特别频繁了,所以对于串口的通信原理的了解还是特别有必要的,而且还有各种关于串口的协议,这些协议都是从最基础的串口的协议进行封装而成的,而我们在51单片机上只需要了解最基本的串口中断的内容就好了。1. 关于串口首先要了解的就是什么是串口通信,要了解串口通信就要先了解串行通信和并行通信,并行通信就是说我们的数据字节用多条数据线同时开始发送,这种传输方式只适合短距离传输,这种传输方式使
2022-03-01 00:03:45 6885
原创 (八)计数器中断
本节主要是写有关于计数器中断的内容,计数器中断其实和定时器中断相似度特别高,但是关于计数器的概念大家一定要准确,在51单片机中的计数器的概念是接收到的外界的高低电平的电平状态,这个接收到的状态可以是得到一个低电平或者是得一个由高到低的负跳变,我们得到这样一个状态就给计数一次,这就是计数器的基本原理。1. 计数器当我们设置为计数器模式的时候,外部事件计数脉冲由T0或T1引脚输入到计数器,当某周期采样到高电平后,准确的说应该是机器周期的S5P2,这就是上一节说的我们的1个机器周期,也就等于6个状态周期,
2022-02-23 20:51:18 1399
原创 (七)定时器中断
本节我们来看看51单片机定时器中断相关的内容,STC89C5X系列一般都是有三个定时器,定时器0,定时器1,定时器2,但不一定全有三个中断,这和具体的单片机有关系,但是一定有的是定时器0和定时器1,本章通过几个小的实验来学习一下定时器中断,来完成对于定时器中断的回忆和学习。1.定时器原理在讲述定时器原理之前,首先最重要的是关于定时器的几个时钟的介绍。1)振荡周期,为单片机提供时钟源的周期2)状态周期,两个振荡周期为一个状态周期,用一个S表示...
2022-02-22 23:05:46 5018
原创 (六)中断
1. 中断分类本章我们来写有关于单片机的中断的内容,首先关于什么是中断,其实就是我的程序在正常执行的时候,我们接收到了一个信号,之后我们就去执行我们写的中断函数里面的内容,而这个信号主要是分为了三类,第一类就是我们的单片机不是在运行的时候外部不是接了一个晶振么,有了晶振我们就可以记时,所以第一类就是定时器中断,第二类是我们不是有gpio口么,而51单片机有两个特别特殊的gpio口P3.4和P3.5,他们可以通过接收外来的脉冲,我们可以通过设置接收多少个脉冲之后就发一个信号,其实就是一个计数器,所以第二类
2022-02-21 20:30:33 221
原创 (五)矩阵按键
本章我们主要是写矩阵键盘的内容,矩阵键盘的原理和独立按键的按键原理基本是类似的,只是关于整个的原理还是要有些介绍,本章我们通过矩阵按键的某个按键按下,然后在数码管上输出对应的按键值。1.关于按键可以看前面按键的内容。2. 硬件首先我的矩阵键盘如下所示,我们首先是把P1接口分为了两组,P0到P3分为了一组,P4到盘分为了一组。我们可以首先是给P1^0一个低电平,然后给P1^1到P1^7高电平,然后我们检测P1^4到P1^7的电平状态,如果有某一个按键被按下了,那么就可以检测到P1^4到
2022-02-15 23:32:08 2296
原创 (四)独立按键
前面回忆了按键输出的相关内容,现在可以继续弄按键输入的内容,本节来弄一个独立按键的相关内容来回忆按键输入的相关内容,通过一个独立的按键的判断来使一个led灯亮灭。1.关于按键 键盘分为编码键盘和非编码键盘,键盘上编码键的识别由专用的硬件编码器实现,并产生编码号或键值的称为编码键盘,如计算机键盘。而靠软件编程来识别的键盘称为非编码键盘。非编码键盘又分为独立键盘和行列式键盘。单片机上的键盘一般都是非编码键盘,而这节我主要要回忆的就是独立键盘。...
2022-02-11 00:54:41 1656
原创 (三)动态数码管
本章就要说到关于动态数码管的相关内容了,其实从前面的gpio和蜂鸣器,我们基本都只是学习了一下单个gpio的使用,那这一节呢我们就来回顾一下整体的一组gpio的操作方法。在回忆之前,还是需要先将一些知识。1.关于数码管 首先关于数码管,其实说来也很简单,一个数码管其实就是说有很多个led灯需要同时进行操作,就是一组gpio全都给低电平或者是高电平咯,这里其实就有一点区分了,你的数码管在设计的时候是把所有的阴极接到了一起还是说把所有数码管的阳极接到了一起,如果是所有的阳极...
2021-09-11 02:15:07 2738
原创 (二)蜂鸣器
接下来就开始复习一些其他的接口,首先是现在基本无论哪个板子都会带有的一个外部接口部件就是蜂鸣器,关于蜂鸣器软件整体和GPIO没有什么区别,更重要的是关于蜂鸣器的一些知识的学习。1. 关于蜂鸣器 首先蜂鸣器分为压电式蜂鸣器和电磁式蜂鸣器两种,其实一句话就可以说出他们的区别,一个是需要,压电式蜂鸣器发声,是需要一定频率的脉冲信号,什么是脉冲信号,其实简单来说就是频率比较高的方波,而想要电磁式蜂鸣器发声,只需要给一个高低电平就行了。其实自己的板子是什么类型的蜂鸣器,直接看蜂鸣...
2021-09-08 01:43:59 1794
原创 (一)点亮LED灯
直接拿出大学时候的51单片机就开始回顾总结吧。首先关于什么是单片机,我觉得解释起来没那么麻烦,原来学习的时候听这些人说的高大上,然后自己就为了学个这个还有多次入门,多次放弃,多次从入门到放弃,现在想来真是傻透了,其实单片机是啥,其实就是一个可以编写程序然后让它能输出高低电平的东西,其实就是这么简单,不用想的特别复杂。至于51单片机,其实就是有个类叫做51单片机,至于具体的谁care呢,至于C语言,学过两天就能搞,实在不行就再拿本书翻翻呗,当然我也会回顾,但不是现在啦,用到哪儿实在不会了再去查...
2021-08-18 23:57:10 2244
原创 一.总结前言
其实早就有想要梳理一下学习的知识的冲动了,之前也写过一些文章,后来因为比较懒,也就没有坚持写下去,后来索性又把它们删除了,因为想着自己实力不够,也没有什么厉害的地方,感觉还是有些羞耻,但是最近学习的内容开始变杂了,如果再不进行一个梳理,之后的很多内容都会开始混淆,然后形成不了一个体系了,所以从今天开始放下羞耻,决定好好梳理一下我这么多年辛苦学习的知识,就是一个记录或者是分享吧,反正只要一直干这行,就会一直有新的知识需要去学习,现在暂时决定要开设的几个大的分支是51单片机,32单片机,C语言基...
2021-08-13 23:23:26 89
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人