
单片机
文章平均质量分 54
本专栏主要介绍和单片机相关的基础模块和相关原理,以及单片机的基础知识
promising-w
为明天做的最好的准备就是做好今天
展开
-
基于单片机的电子法频率计
通过门控控制闸门开关,闸门时间T自己设定,计数器计数脉冲个数N(也就是待测信号),N个脉冲的时间间隔为δt,倒数即为信号的频率f,由此δt=T/Nf=N/T——信号频率根据公式,如果考虑反应速度,就希望闸门时间越短越好,但是会存在量化误差(±1误差)就是计数的个数可能多一个也可能少一个。因为闸门和信号相位之间的不确定性导致的。导致N有±1的误差。由于T越大,N越大,由于N的绝对误差是0.1,当N越大,它的相对误差越小因此,T的常见选择是0.1秒和1秒。原创 2025-05-11 22:34:58 · 274 阅读 · 4 评论 -
单片机不同通信方式的适用场景
由一个时钟线和数据线构成总线,多个设备挂在上面具有自己的设备地址,单片机只需 发送对应的地址即可进行通信。通信双方约定好波特率,每次发送一个字节(8位数据)这种通信方式一共有2根线,且互相独立不受影响。优点:通信速度快,单纯考时钟来做信号的同步。每次到时钟的上升沿,就去数据线上获取数据。同时RS485还具有一对多的功能。二、RS232和RS485。一、串口通信 UART。优点是能够远距离传输信号。RS485达到1000m。优点:支持多设备互相通信。RS232达到30m。原创 2025-04-30 15:18:53 · 760 阅读 · 7 评论 -
51单片机汇编工程建立、仿真、调试全过程
可以修改target和source group 1命名。可以通过点击左边编写的代码,右面自动显示对应的机器码。或者Ctrl+S,命名文件,一定要写上扩展名。该文件夹,然后选择新建的文件。8.添加文件进入到工程里面。.inc的是汇编的头文件。6.点击新建汇编程序。.h是C语言的头文件。原创 2025-03-09 16:09:28 · 638 阅读 · 27 评论 -
定时器——时基
但是如果放到时基里面去,每100ms执行一次,然后可以继续进行不同的事情。因此,用时基也可以达到软件延时一样的效果。~ :表示按位取反,即在数值的二进制表示方式上,将0变为1,将1变为0;以下是对不同时基的处理,通过1ms进而生成1s的时基。:代表逻辑取反,即:把非0的数值变为0,0变为1;这种情况下的延时,CPU是不能做其他事情的。,在不同的时基下可以做不同的事情。标志(Flag_1ms)原创 2025-02-17 22:22:23 · 403 阅读 · 0 评论 -
Keil常见报错汇总
处理方法:代码中添加 #include “xxx.h”处理方法:检查.h文件,确保.c和.h文件函数声明一致。处理方法:双击报错信息跳转至问题代码,修正中文符号。处理方法:双击报错信息跳转至问题代码,排查语法问题。处理方法:双击报错信息跳转至问题代码,添加分号。常见原因:修改函数定义后未修改.h文件函数声明。处理方法:在工程内添加代码文件(如下图所示)处理方法:从代码中移除未使用的函数。常见原因:代码缺少main()函数。处理方法:添加main()函数代码。常见原因1:代码未包含相应头文件。原创 2025-02-10 16:03:54 · 1339 阅读 · 0 评论 -
多级界面构建
上面的要求进行简单化即为。原创 2025-02-10 12:27:18 · 224 阅读 · 0 评论 -
PWM波形输出
因为是在1khz的频率下,所以用重新配置定时器0,定时长度为100微妙。原创 2025-02-09 21:46:00 · 274 阅读 · 0 评论 -
LED PWM亮度控制
全称为,即若想实现上面的要求,则应达到如下效果而LED只有亮灭两种状态,所以可以通过控制高低电平跳变的频率,通过积分的思想,从而实现不同亮度。如下图,上面的就是下面亮度的一半。因此,就可以根据调节占空比,即调节高低电平的比例来控制亮度。原创 2025-02-09 21:17:00 · 500 阅读 · 0 评论 -
keil 单步调试技巧
错误不影响编译过程能够输出Hex文件无法完成编译不输出Hex文件注意的是,warning的信息是要去关注的。下面的除外。原创 2025-02-05 23:58:05 · 537 阅读 · 0 评论 -
单片机基础模块学习——超声波传感器
左边发射超声波信号,右边接收超声波信号左边的芯片用来处理超声波发射信号,中间的芯片用来处理接收的超声波信号。原创 2025-01-29 22:50:59 · 1762 阅读 · 0 评论 -
单片机基础模块学习——NE555芯片
NE555也称555定时器,本文主要利用NE555产生方波发生电路。整个电路相当于频率可调的方波发生器。通过调整电位器的阻值,方波的频率也随之改变。RB3在开发板的位置如下图测量方波信号的引脚为SIGHAL,由上面的电路图可知,NE555已经构成完整的方波发生电路,不需要单片机进行控制,只需要采集方波信号即可。下面讲述测量方波信号频率的计数器,计数器并不是一个芯片,而是单片机内部的一个功能,根据测量一秒之内传入几个脉冲来计算频率,频率与时间的关系如下。原创 2025-01-29 20:29:09 · 3840 阅读 · 5 评论 -
单片机基础模块学习——AT24C02芯片
保留消失因此,如果在断电后希望数据继续保留的话,就需要存储在EEPROM芯片中。原创 2025-01-28 18:04:39 · 1558 阅读 · 0 评论 -
单片机基础模块学习——PCF8591芯片
s——start,代表开始ADDRESS 芯片地址0代表处在写模式A应答信号,若没有收到应答信号,代表外设没有接收到,需要再次发送,保证通信的稳定性CONTROL BYTE控制芯片行为的一个位,发送之后同样需要等待应答信号DATA BYTE 传递数据位,每传递一个字节,就要有一个应答信号,不断的循环。原创 2025-01-27 23:56:24 · 2149 阅读 · 0 评论 -
单片机基础模块学习——DS18B20温度传感器芯片
不知道该往哪走的时候,就往前走。原创 2025-01-26 23:30:50 · 2299 阅读 · 0 评论 -
单片机基础模块学习——DS1302时钟芯片
DS1302时钟也称为RTC时钟(Real Time Clock,实时时钟),说到时钟,可能会想到定时器,下表来简单说明一下两者的区别。原创 2025-01-26 15:49:35 · 3245 阅读 · 0 评论 -
单片机基础模块学习——蜂鸣器及继电器
当J6跳线帽接到左侧,蜂鸣器和继电器处于关闭状态,接到右侧时蜂鸣器和继电器处于开启状态。当N_BUZZ为低电平时,蜂鸣器开启。原创 2025-01-26 12:54:51 · 721 阅读 · 0 评论 -
单片机基础模块学习——按键
当把跳线帽J5放在右侧,属于独立按键模式(BTN模式),放在左侧为矩阵键盘模式(KBD模式)整体结构是一端接地,一端接控制引脚之前提到的都是使用了GPIO-准双向口的输出功能,按键模块用到的是输入功能实际每一个按键的原理图如下,vcc和电阻都在芯片内部,当按键断开时,流过电阻的电流称为灌电流,大概几十毫安,因此此时引脚为高电平。按下时与地接通为低电平。原创 2025-01-24 22:21:18 · 3673 阅读 · 0 评论 -
单片机基础模块学习——数码管(二)
这部分包括将数码管想要显示的字符转换成对应段码的函数,另外还包括数码管显示函数值得注意的是对于小数点和不显示部分的处理方式由于小数点没有单独占一位,所以这里用到了两个变量i,j用于跳过小数点导致的占据其他字符显示在数码管上的位置不想让某一位数码管显示的时候,用空格来代替,根据共阳数码管原理图,应将P0引脚全部设为高电平才可熄灭。原创 2025-01-24 19:42:14 · 610 阅读 · 0 评论 -
单片机基础模块学习——数码管
八位数码管实际上是由两个四位数码管组合而成的这两个四位数码管是有关联的,a1到dp1均是有关联的,com端口没有重叠。实际上每一段都相当于是独立的发光二极管,共有8段。实际电路连接关系如上图,所有二极管的正极相连引到公共端口,若想点亮二极管,需要给公共端高电平,负极对应的端口加一个低电平。由于8个数码管的负极都是有a1到dp1控制,那么该如何显示不同的数字呢,就用到了动态扫描的方法,通过控制每个数码管的com端,从而实现显示不同的数字,加快循环,由于人眼的视觉暂留效应,就能达到以下效果。原创 2025-01-19 23:46:44 · 778 阅读 · 0 评论 -
keil报错的可能原因与解决办法
上述警告的原因是未在文件夹中插入包含这个函数的头文件。原创 2025-01-18 22:56:50 · 838 阅读 · 0 评论 -
单片机基础模块学习——定时器
选择定时器计算器,将频率改为12mhz,单位为毫秒,定时长度为1复制下面代码。原创 2025-01-18 22:54:57 · 351 阅读 · 0 评论 -
单片机基础模块学习——LED(下)
【代码】单片机基础模块学习——LED(下)原创 2025-01-18 21:48:08 · 120 阅读 · 0 评论 -
STC-ISP&Keil学习——烧录程序
点击魔法棒->output->勾选creathexfile即可。原创 2025-01-18 21:06:46 · 353 阅读 · 0 评论 -
STC-ISP&Keil学习——安装STC库
点击keil仿真设置——>添加型号和头文件到keil中——>选择自己下载keil所保存的文件夹——>显示安装成功。然后在keil里就具有stc的库了。原创 2025-01-15 21:28:22 · 566 阅读 · 0 评论 -
单片机基础模块学习——LED(上)
LE接到了Y4C,Y4C接到了74HC02的四或非门芯片(包含了四个独立的或非门),WR在默认状态下接地,此时的或非门相当于非门,当Y4为低电平,Y4C为高电平,当Y4为低电平,Y4C为高电平。由此,通过控制P25-P27,以及P00-P07这些引脚,就可以控制LED。P25,P26,P27三个引脚由单片机直接控制,进而控制Y4的值。OE直接连到了低电平,所以74HC573锁存器一直在工作状态。C23是退耦电容用来优化信号质量。而Y4由74HC138译码器输出。一、LED原理图分析。原创 2025-01-15 19:23:38 · 168 阅读 · 0 评论 -
C51基础知识
计算机平台——C语言单片机平台——C51计算机平台的CPU主频,内存和硬盘相较于单片机平台都是巨大的量级,另一方面,计算机平台的有不同的操作系统,如Windows,Linux,macOS等,单片机一般是没有操作系统的,(也会有一些简单的操作系统如:RTOS,但与计算机平台的系统相比,还是较为简单的)代码直接运行在芯片上,我们常称为裸机开发,计算机平台的开发叫做基于系统的开发。另外,编写代码时,需要基于单片机硬件的不同进行编写,而在计算机平台的开发则很少考虑这些问题。原创 2025-01-14 17:46:57 · 1357 阅读 · 0 评论 -
数字电路基础知识
特别地,异或运算:相同为0,不同为1,也可看出与0不变,与1取反.如:00110010和00011010变为00101000。原创 2025-01-14 14:24:25 · 344 阅读 · 0 评论 -
单片机开发板
单片机原创 2025-01-14 10:59:54 · 124 阅读 · 0 评论