自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(107)
  • 收藏
  • 关注

原创 C51--测速小车

广泛用于电机转速检测,脉冲计数,位置限位等。有遮挡,输出高电平;无遮挡,输出低电平。VCC——正极GND——接地DO TTL开关信号输出AO 此模块不起作用。

2024-01-14 20:19:08 583

原创 C51--摇头测距小车

调试:正面距离过小的时候让小车向后退。摇头测距小车——舵机和超声波封装。

2024-01-13 19:58:01 421

原创 C51--小车——跟随

左边跟随模块能反射回红外,输出低电平0,右边反射不回,输出高电平1(左信号灯亮,右信号灯不亮)右边跟随模块能反射回红外,输出低电平0,左边不能返回,输出高电平1(右信号灯亮,左信号灯不亮)前边有物体时,红外线能被反射回来,输出低电平0,前边没有物体时,输出高电平1。两个跟随模块都能返回信号,都输出低电平0,两个信号灯都亮。GND——地,VCC——5v,OUT——信号线。或反射回来强度不够大时,模块的输出。与循迹原理相同:当发射出的红外线。跟随模块红外在前方,循迹在下方。来且足够强大,此时模块输出。

2023-12-21 11:58:35 408

原创 C51--小车——循迹

红外接收管一直处于关闭状态,模块的输出高电平1(指示二极管处于熄灭状态);当红外线有被反射回来且足够强大,此时模块输出低电平0(二极管被点亮)当循迹模块发射出来的红外线照射到黑线,红外线被黑线吸收,循迹模块上的光敏三极管处于关闭状态,反射较弱,向右:右边压线,右边模块不能反射回来,输出高电平,左边模块反射回来输出低电平。向左:左边压线,左边模块反射不回来,输出高电平,右边模块能反射回来是低电平。当发射出的红外线没有被反射回来或反射回来强度不够大时,向前:两个模块都能反射回来,输出低电平。

2023-12-21 11:20:52 515

原创 C51--小车——PWM调速

单位时间内,例如20ms,有15ms是全速,5ms是停止,速度就会比15ms是停止,5ms是全速的功率多,速度快。要用到PWM的舵机控制代码。

2023-12-18 20:14:43 590

原创 C51--小车——串口/蓝牙控制及点动

建立串口分文件:uart.c 和 uart.h文件声明函数。声明函数:串口初始化。

2023-12-18 17:51:36 487

原创 C51--小车——L9110s电机驱动模块

接通VCC,GND 模块电源指示灯亮。

2023-12-13 20:51:10 630

原创 C51--OLED

位图(Bitmap)模式:它没有进行数据压缩,其内部存储的色彩信息(灰度图,RGB 或 ARGB)直接以二进制的形式暴露在外,也十分方便借助计算机软件进行简单或深入的分析。水平横向寻址,写到127时,他会返回到该行的头部。水平横向寻址,写到127时,他会返回到下一行的头部。写入:b 0111 1000 (0x78)(2、发送cmd:0x02;竖向寻址,到尾部时,会返回下一列的头部继续。2.1、确认为页面寻址模式。2.1、确认为页面寻址模式。1、发送cmd:0x20。位置为0时,表示写入)

2023-12-09 17:09:18 1156

原创 C51--IIC协议

IIC全称Inter-Integrated Circuit (集成电路总线)是由PHILIPS公司在80年代开发的两线式串行总线,用于连接微控制器及其外围设备。IIC属于方式SCL——时钟信号SDA——数据信号。

2023-12-07 22:20:28 343

原创 C51--分文件实现代码优化(extern--static)

1、把几个模块的代码分别建立成分文件2、再把函数进行封装声明。3、主函数调用时(.h文件)在主文件中用形式展现要实现两个文件中同时使用,也可以封装为.h形式,在两个文件中头文件形式使用例如config.h头文件的建立。封装的.h文件中函数头要与.c文件头一致,否则会警告。//声明为外部变量,把别的文件中的全局变量拿走使用,

2023-12-06 16:37:16 390

原创 C51--DHT11数据读取并通过串口上传--LCD显示

【代码】C51--DHT11数据读取并通过串口上传--LCD显示。

2023-12-06 10:55:09 654

原创 C51--DHT11数据读取

dht)卡点,当不满足while时,信号。用while(dht)卡点,当不满足while时,信号。在50um后读取数据,传输0和1时有效数据。

2023-12-01 10:43:58 407

原创 C51--DHT11温湿度传感器

DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。

2023-11-30 17:47:33 529

原创 C51--LDC1602--显示字符串

【代码】C51--LDC1602--显示字符串。

2023-11-30 16:51:36 379

原创 C51--LCD1602显示屏

LCD602是一种工业字符型液晶,能够同时显示16x02,即32字符(16列,2行)

2023-11-29 21:46:03 1319

原创 C51--4G模块

支持MQTT协议,支持接入OneNet平台、百度云平台、阿里云平台的MQTT服务;串口助手、网络调试助手、用户手册(AT指令)、花生壳软件(公网IP的服务器地址)支持 Modbus RTU 与 Modbus TCP 自动相互转换;内网IP穿透,内部穿透,为局域网的设备提供一个外网可访问的地址和端口。在测试之前,将电源、天线、SIM 卡、串口线等硬件连接好。支持网络AT指令,可以通过网络,远程配置设备;支持心跳包、注册包功能最大支持64个字节数;支持TCP、UDP 网络协议;支持APN/VPN。

2023-11-28 16:28:51 1090

原创 C--51--WiFi模块ESP-01S ( 路由服务器 )

USB转TTL插入电脑,TX/RX交叉接线,VCC接5V,GND接地。TX/RX交叉接线,VCC接5V,GND接地。查询IP地址:AT+CIFSR。(ESP8266接C51)(接CH340接入pc)一、配置网络调试助手。

2023-11-27 18:06:12 593

原创 C51--WiFi模块ESP8266--AT指令

ESP8266EX集成了32位Tensilica 处理器、标准数字外设接口、天线开关、射频balun、功率放大器、底噪放大器、过滤器和电源管理模块,可将所占的PCB空间降低。内置低功耗Tensilica L106 32位 RISC处理器、cpu时钟最高达160MHz、支持实时操作系统(RTOS)和wifi协议栈,可将高达80%的处理能力留给应用编程和开发。WiFi模块–ESP-01s,通信模块是通过串口调试助手发送AT指令实现联网。

2023-11-16 22:59:58 590

原创 C51--蓝牙HC-08

透传即透明传送,是指在数据传输过程中,通过无线的方式这组数据不发生任何形式的改变,仿佛传输过程是透明的一样,同时保证传输的质量,原封不动地到了最终接受者的手里。TXD/RXD交叉连接,VCC接5v,GND接GND;通过CH340来修改蓝牙数据,AT+…蓝牙模块又叫做蓝牙串口模块。下载蓝牙模块专属软件来控制。

2023-11-15 10:56:06 47

原创 C51--串口协议

stopbit停止位为1,TI=1,全部数据发送完后由0变为1。stopbit停止位为1,RI=1,全部数据收完后由0变为1。1帧数据位10位,1位起始位+8位数据位+1位停止位。RxD(RxD / P3.0口)为接收端接收信息。TxD(TxD / P3.1口)为发送信息。RXD(DATA IN),根据时钟移位接收。startbit起始位为0,TI=0。startbit起始位为0,RI=0。波特率、起始位、数据位、停止位。tclock产生晶振和脉冲,shift移位寄存器。shift移位寄存器。

2023-11-15 10:15:11 47

原创 C51--PC通过串口(中断)点亮LED

REN = 1为允许串行接收状态。接收数据必须开启。所以SCON:0101 0000;即0x50RI位:当收到数据后 RI = 1(由硬件置一)硬件置一后必须用软件复位: RI = 0。

2023-11-12 12:12:06 952

原创 C51--串口发送中断请求

在串口通信寄存器中有T1:发送中断请求标志位。

2023-11-12 11:18:24 379

原创 C51--串口

串行接口的简称为,也称为接口或者接口(),是采用串行通信的扩展接口。是指数据一位一位的进行顺序传送,其通信线路简单,只要一堆传输线就能实现双向通信,大大降低成本,适用远距离通信,单传输速度较慢。设备间接线通信的一种方式;(通信的本质是数据的传送)数据一位一位顺序传送双向通信,全双工传送速度相对较慢(允许二台设备间双向数据传输)(允许二台设备之间的双向数据传输,但不能同时进行)串行接口按电气标准和协议可分为:RS-232-C、RS-422、RS-485等。

2023-11-09 11:19:53 77

原创 C51--项目--感应开关盖垃圾桶

检测靠近时,垃圾桶自动开盖并伴随滴一声,2s后关盖。发生震动时,垃圾桶自动开盖并伴随滴一声,2s后关盖。按下按键时,垃圾桶自动开盖并伴随滴一声,2s后关盖。c52单片机、sg90舵机、超声波模块、震动传感器、蜂鸣器舵机控制口 P1.1超声波 Trig 接 P1.5口Echo 接 P1.6口蜂鸣器接 P2.0口震动传感器接 P3.2口(外部中断INT0)

2023-11-02 15:29:16 527

原创 C51--超声波测距

接线参考:模块除了两个电源引脚外,还有TRIG,ECHO引脚,这两个分别接开发板的P1.5和P1.6端口。超声波模块是用来测距的一种产品,利用时间差和声音传播速度,计算出模块到前方障碍物的距离。二进制左移一位相当于乘以2. 例:1左移一位为10(十进制的2)距离=(时间)*波的速度(340m/s)/ 2。波返回时,停止计时器,计算出中间经过的时间。左移8位,相当于乘以2的8次方 = 256。TRIG - P1.5口(发送波)波发出去,开始计算时间,启动定时器;ECHO -P1.6口(接收波)

2023-10-26 22:42:04 539

原创 C51--PWN-舵机控制

定时器需要定义20ms,关心单位是0.5ms,40个0.5ms,初值为0.5ms,用cnt计算:cnt++0.5ms——-0°, 2.5%对应函数中占空比为 250。1.5ms——90°, 7.5%对应函数中占空比为 750。2.5ms——180°,12.5%对应函数中占空比为1250。1ms高电平+3ms低电平,为1个周期,占空比是25%。常见的舵机有:0-90°,0-180°,0-360°。黄色信号线——PWM,红——VCC,黑——GND。例:stc15w的cpu,有标注PWM1等。

2023-10-26 10:23:05 521

原创 C51--单片机中断

51单片机是单线程模式,需要用到硬件中断。

2023-10-25 10:58:24 293

原创 C51--定时器

C51中的定时器和计数器是同一硬件电路支持的,通过寄存器配置不同,就可以当作使用。:用数数。每过一个机器周期,计数存储器的值就加 1。:读取针脚的数据(每来一个信号就加1,完成计数)信号输入的引脚:P3.4、P3.5标准的C51有两个定时器/计数器:T0和T1,两个使用方法一致C52相比于C51,多了一个T2定时器和计数器,电路一样。定时器或计数器的本质就是让单片机某个部件数数当定时器用时,靠内部震荡电路数数当计数器用时,数外面的信号,读取针脚的数据本质原理:每过一个。

2023-10-24 10:35:25 456

原创 C51--简易报警器设计

C52单片机震动传感器模块433M无线发射接受模块继电器模块高功率喇叭杜邦线。

2023-10-20 09:09:59 191

原创 C51--LED灯

ledOne =!//一个按键控制,取反自己。用到头文件:#include <intrins.h>看电路板原理图,找到对应LED的接口位置。

2023-10-18 11:01:28 92

原创 C51--基本认知

I/O口,通常使用P1/P2/P3/P4口,为准双向口、弱上拉(普通8051传统I/O口);P0口是开漏输出,作为总线扩展用,不用加上拉电阻,作为I/O口用时,需要加上拉电阻。(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程序。多种 I / O 口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、通过寻址,有一些地址数据,头文件已经做了很多了,生成的project里.c文件底下生成的.h文件。

2023-10-17 10:05:59 110

原创 C51--开发环境

1、电动车报警器 ----------》IO控制入门2、感应开关盖垃圾桶----------》定时器,pwm开发,超声波3、基于WiFi的智能控制插座----------》串口开发,ESP8266模块AT控制指令学习,终中断学习4、基于蓝牙HC–05的智能控制插座----------》串口开发,蓝牙穿透5、基于4G的智能控制插座----------》串口开发,蓝牙穿透。

2023-10-11 09:50:33 327

原创 Linux--FTP服务器功能--项目

一个子进程负责一条连接通道。

2023-10-07 10:03:29 625

原创 Linux--socket编程--双方收发

在服务端运行:./文件名 + IP + 端口号。在客户端运行:./文件名 + IP + 端口号。服务端得到:并且不会退出。

2023-10-04 13:39:13 198

原创 Linux--socket编程--服务端代码

查看struct sockaddr_in包含的东西:在/user/include下搜索:grep "struct sockaddr_in { " * -nirr : 递归i : 不区分大小写n : 显示行号。

2023-10-03 22:02:42 539

原创 Linux--socket编程

内核为每个由服务器进程接受的客户连接创建一个已连接套接字(表示TCP三次握手已完成),当服务器完成对某个给定客户的服务时,相应的已连接套接字就会被关闭。设置能处理的最大连接数, listen()并未开始接受连线,只是设置socket 的 listen 模式,listen()函数只用于服务器端,服务器进程不知道与谁连接,因此不会主动要求与某个进程连接,只是一直监听是否有其他客户进程与之连接,然后响应该连接请求,并做出处理:一个服务进程可以同时处理多个客户进程的连接。这些套接字处于SYN_REVD状态。

2023-10-03 16:29:44 220 1

原创 Linux--网络编程-字节序

是指多字节数据再计算机内存中存储或网络传输时各字节的存储顺序。

2023-10-03 11:27:31 236

原创 Linux--线程条件控制实现线程的同步

的互斥量对条件进行保护,调用者把锁住的互斥量传给函数。函数把调用线程放到等待条件的线程列表上,然后对互斥量解锁,这两个操作都是原子操作。这样就关闭了条件检查和线程进入休眠状态等待条件改变这两个操作之间的时间通道,这样线程就不会错过条件的任何变化。条件变量与互斥变量一起使用时,允许线程以无竞争的方式等待特定的条件发生。线程在改变条件状态前必须首先锁住互斥量,其他线程在获得互斥量之前不会察觉到这种改变,因为必须锁定互斥量以后才能计算条件。如果在给定的时间内条件不能满足,那么会生成一个代表一个出错码的返回量。

2023-10-01 01:56:30 216

原创 Linux--互斥锁

在访问共享资源前对互斥量进行加锁,在访问完成后释放互斥量。如果释放互斥锁时有多个线程阻塞,所有在该互斥锁上的阻塞线程都会变成可运行状态,第一个变成可运行状态的线程可以对互斥量加锁,其他线程将会看到互斥锁依然被锁住,只能回去等待它重新变为可用。在加了两个锁的前提下,当线程A获得一把锁时,想要获得另外一把锁,线程B想要拿到对方手里的锁时,都不可以向下解锁,就会造成死锁。资源参考地址: https://www.cnblogs.com/xiehongfeng100/p/4620852.html。

2023-09-28 17:51:10 179

原创 Linux--线程 共享内存空间

如果使 t1 = 3时退出,运行结果发现:有的时候能捕获到 t1 == 3,退出线程t1;有的时候捕获不到,t1无法退出。

2023-09-19 11:16:02 319 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除