<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[linfengXBB的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/linfengXBB</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; linfengXBB]]></copyright><item><title><![CDATA[【licheePi-dock】驱动一个OLED-SSD1306]]></title><link>https://blog.youkuaiyun.com/linfengXBB/article/details/127940666</link><guid>https://blog.youkuaiyun.com/linfengXBB/article/details/127940666</guid><author>linfengXBB</author><pubDate>Sat, 19 Nov 2022 20:09:20 +0800</pubDate><description><![CDATA[设备树地址：/home/bango/tina-d1-h/device/config/chips/d1-h/configs/nezha/board.dts。【LicheePi-dock】在linux上写了个BUG(oled驱动。就可以生成可执行文件到板子运行。注意选择好自己编译链的地址。]]></description><category></category></item><item><title><![CDATA[【报错解决】depmod: ERROR: could not open directory /lib/modules/5.2.0-licheepi-zero+: No such file or dir]]></title><link>https://blog.youkuaiyun.com/linfengXBB/article/details/122511860</link><guid>https://blog.youkuaiyun.com/linfengXBB/article/details/122511860</guid><author>linfengXBB</author><pubDate>Sat, 15 Jan 2022 16:34:52 +0800</pubDate><description><![CDATA[报错解决]]></description><category></category></item><item><title><![CDATA[【问题解决】RuntimeError: Couldn‘t detect Bash version, shell completion is not supported.]]></title><link>https://blog.youkuaiyun.com/linfengXBB/article/details/119451686</link><guid>https://blog.youkuaiyun.com/linfengXBB/article/details/119451686</guid><author>linfengXBB</author><pubDate>Fri, 06 Aug 2021 11:53:00 +0800</pubDate><description><![CDATA[只需修改shell_completion.py里305行那的两行代码
output = subprocess.run(["bash", "-c", "echo $BASH_VERSION"], stdout=subprocess.PIPE)
match = re.search(r"(\d)\.(\d)\.\d", output.stdout.decode())


]]></description><category></category></item><item><title><![CDATA[【51单片机】编程小技巧（二）——for 循环参数的妙用]]></title><link>https://blog.youkuaiyun.com/linfengXBB/article/details/117229632</link><guid>https://blog.youkuaiyun.com/linfengXBB/article/details/117229632</guid><author>linfengXBB</author><pubDate>Mon, 24 May 2021 19:41:06 +0800</pubDate><description><![CDATA[文章目录for 循环参数的妙用一般的for循环格式众所周知 i 是一个变量，范围是0~255 。但是，它除了在for循环中作为参数，还可以在for()循环中调用举个例子1. 显示数字2. 流水灯(可以下载测试)

for 循环参数的妙用
一般的for循环格式
unsigned char i; //声明一个变量
//递增型
for(i=0;i&lt;8;i++) //循环8次
{
	//do something
}
//递减型
for(i=8;i++;i--)
{
	//do something
}

众所.]]></description><category></category></item><item><title><![CDATA[【51为例】单片机编程技巧（一）——写自己的库]]></title><link>https://blog.youkuaiyun.com/linfengXBB/article/details/117228400</link><guid>https://blog.youkuaiyun.com/linfengXBB/article/details/117228400</guid><author>linfengXBB</author><pubDate>Mon, 24 May 2021 18:28:44 +0800</pubDate><description><![CDATA[前言
为什么要写自己库呢？
因为随着项目的越来越复杂，如果代码都堆再一个main.c文件里的话管理起来会比较难。你出现想找到某部分的代码得上下翻找。因此把各部的代码建立一个独立的库会使代码管理起来相对容易。想找到某部分人的代码只需找到相应的c文件即可。
一、 开始
我使用的是keil4

先用keil4建立一个新项目。
二、
步骤
1. 建立一个头文件
保存为.h 文件，名字可以自己取。我这里就当写个led闪烁库吧。
编写.h文件的内容，一般是一个固定格式。

如果需要用的单片机的资源要包含它的头文件，不然]]></description><category></category></item><item><title><![CDATA[【算法初体验】【白嫖福利】花了一天写了个基于51单片机的OLED图形库——即拿即用]]></title><link>https://blog.youkuaiyun.com/linfengXBB/article/details/116711735</link><guid>https://blog.youkuaiyun.com/linfengXBB/article/details/116711735</guid><author>linfengXBB</author><pubDate>Wed, 12 May 2021 17:42:34 +0800</pubDate><description><![CDATA[文章目录前言我发现关于51使用OLED的UI算法并不多，其实可以去开源项目找。但是开源项目的代码复杂化了，也比较难以理解。所以我专程花了一天研究OLED的图形算法并且写了这篇博客来总结。b站视频演示：[入口](https://www.bilibili.com/video/BV1u54y1L7Sc)一、OLED显示原理二、UI源函数———画点函数画点函数三、画线函数1.画横线（速度可调，适合做动画）2.画竖线（速度可调，适合做动画）3.反向竖线（速度可调，适合做动画）4. 画任意方向的直线(参考，不能改变速度]]></description><category></category></item><item><title><![CDATA[【步进电机驱动】【简单暴力，功能强大】基于51单片机的步进电机驱动]]></title><link>https://blog.youkuaiyun.com/linfengXBB/article/details/116358469</link><guid>https://blog.youkuaiyun.com/linfengXBB/article/details/116358469</guid><author>linfengXBB</author><pubDate>Mon, 03 May 2021 00:23:27 +0800</pubDate><description><![CDATA[今天写了个步进电机驱动
电机如图

驱动原理
这个步进电机是四相五线制，只要给它特定的8个脉冲就能使它内部的电机转动圈，减速比为64：1

驱动程序
main.c文件
#include"reg52.h"
#include"step.h"


void main(){

	while(1){
	//正转1圈，反转2圈
		StepMotor(2,1,500);
		Delay_50ms(20);
		StepMotor(4,0,1000);
		Delay_50ms(20);

	
		 
	}
}

ste]]></description><category></category></item><item><title><![CDATA[【白嫖福利】【TM1637】简单易懂！51单片机完整的数码管驱动程序（数码管和按键拓展芯片）]]></title><link>https://blog.youkuaiyun.com/linfengXBB/article/details/116306210</link><guid>https://blog.youkuaiyun.com/linfengXBB/article/details/116306210</guid><author>linfengXBB</author><pubDate>Fri, 30 Apr 2021 17:47:02 +0800</pubDate><description><![CDATA[概述
在使用单片机的过程中发现某些IO口不够用或者单片机的IO口比较少，比如如果IO口直驱数码管的话会用去很多IO口造成不必要的资源浪费
方案
使用TM1637模块，使用的是I2c的IC，只占用2个IO口便可以驱动6位数码管跟16个按键
代码效果演示视频
代码
main函数
#include"reg52.h"
#include"tm1637.h"

unsigned char code smgduan[17]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
					0x]]></description><category></category></item><item><title><![CDATA[【避坑】【白嫖福利】PCF8574驱动程序，IO口驱动程序（本人亲写，国产有坑）]]></title><link>https://blog.youkuaiyun.com/linfengXBB/article/details/116140915</link><guid>https://blog.youkuaiyun.com/linfengXBB/article/details/116140915</guid><author>linfengXBB</author><pubDate>Mon, 26 Apr 2021 00:01:09 +0800</pubDate><description><![CDATA[废话不多说放程序吧
PCF的C程序
#include"PCF8974.h"
#include"intrins.h"

#define Write 0x40
#define Read  0x41


unsigned char dat[]={0};

void IIC_Start(void)
{
	CLK = 1;
	SDA = 1;
	CLK = 0;
	SDA = 0;
}

void IIC_Stop(void)
{
	CLK = 0;
	SDA = 0;
	CLK = 1;
	SDA = 1;
}

]]></description><category></category></item><item><title><![CDATA[蓝牙调速小车测试程序（只放程序）]]></title><link>https://blog.youkuaiyun.com/linfengXBB/article/details/113683937</link><guid>https://blog.youkuaiyun.com/linfengXBB/article/details/113683937</guid><author>linfengXBB</author><pubDate>Fri, 05 Feb 2021 11:37:21 +0800</pubDate><description><![CDATA[亲测有效
需要的材料
1.蓝牙串口软件
应用商店可以下载

2.L298N电机驱动模块
淘宝可以买得到

3.stc89c52最小系统板
淘宝可以买得到

4.智能车底盘
淘宝可以买得到

蓝牙模块：JDY-31
淘宝购买

接线资料在买模块的时候会有（自己去实践）
测试代码
#include &lt;reg52.h&gt;
//定义输出端口
sbit INT=P2^2;
sbit INT2=P2^3;
sbit INT3=P2^4;
sbit INT4=P2^5;
sbit EN1 = P2^6;
sbi]]></description><category></category></item><item><title><![CDATA[【代码简单简洁】51单片机入门速成——蜂鸣器]]></title><link>https://blog.youkuaiyun.com/linfengXBB/article/details/113594533</link><guid>https://blog.youkuaiyun.com/linfengXBB/article/details/113594533</guid><author>linfengXBB</author><pubDate>Wed, 03 Feb 2021 12:17:14 +0800</pubDate><description><![CDATA[【代码简单简洁】51单片机入门速成——点灯
文章目录【代码简单简洁】51单片机入门速成——点灯代码以stc89c52为例驱动鸣器以上就是驱动蜂鸣器的代码

代码
以stc89c52为例
驱动鸣器
#include"reg52.h"		//51单片机的头文件

typedef unsigned char u8;		//typedef ： 就是让u8成为 unsigned char 的别名
typedef unsigned int u16;		//以后调用unsigned char 就是直接用u8就好了；

s]]></description><category></category></item><item><title><![CDATA[【代码简单简洁】51单片机入门速成——点灯]]></title><link>https://blog.youkuaiyun.com/linfengXBB/article/details/113590618</link><guid>https://blog.youkuaiyun.com/linfengXBB/article/details/113590618</guid><author>linfengXBB</author><pubDate>Wed, 03 Feb 2021 11:57:54 +0800</pubDate><description><![CDATA[TOC
【代码简单简洁】51单片机入门速成——点灯
文章目录【代码简单简洁】51单片机入门速成——点灯代码以stc89c52为例点灯以上就是一个简单的点灯程序2 .使led 闪烁代码

代码
以stc89c52为例
点灯
#include"reg52.h"		//51单片机的头文件

typedef unsigned char u8;		//typedef ： 就是让u8成为 unsigned char 的别名
typedef unsigned int u16;		//以后调用unsigned char 就]]></description><category></category></item><item><title><![CDATA[PID算法学习心得]]></title><link>https://blog.youkuaiyun.com/linfengXBB/article/details/110954805</link><guid>https://blog.youkuaiyun.com/linfengXBB/article/details/110954805</guid><author>linfengXBB</author><pubDate>Thu, 10 Dec 2020 15:52:45 +0800</pubDate><description><![CDATA[PID算法学习心得
PID控制算法：一种能精确控制的实用性经典算法。
P-I-D 所代表的含义
P—比例  I—积分  D—微分
为什么要用pid算法？
因为它的特点就是能够精准控制，如果使用一些开环控制的话总是会达不到预期结果。
结果会在期望值附近上下波动。究其原因就是实际环境中会有很多干扰。例如温控，如果
只是用开环控制算法，温度达到预期温度后，其余热会使温度升高加热停止。而温度低于预期温度时
开始加热，但是得经过一段时间才能到达预期温度。又例如平衡车，，使用开环控制的话直接就反应不过来。
而PID算法]]></description><category></category></item><item><title><![CDATA[超简单“手把手教你写PWM程序”（基于STC89C52）]]></title><link>https://blog.youkuaiyun.com/linfengXBB/article/details/110950991</link><guid>https://blog.youkuaiyun.com/linfengXBB/article/details/110950991</guid><author>linfengXBB</author><pubDate>Thu, 10 Dec 2020 14:15:59 +0800</pubDate><description><![CDATA[提示：文章写完后，目录可以自动生成，如何生成可参考右边的帮助文档

文章目录前言一、学习前需要掌握哪些内容？1.掌握单片机定时器的使用方法2.掌握c语言基础二、开始1.基操来一下2.重头戏以下代码就是具体实现方案所以我们只要调节Speed 的值就可以调节占空比了Speed的值应该比A小总结

前言
学习单片机总要接触一些控制，比如电机调速，舵机驱动，步进电机驱动。这是必不可少需要用到一种控制机制———PWM（脉冲宽度调制）

提示：以下是本篇文章正文内容，下面案例可供参考
一、学习前需要掌握哪些内容？
1.]]></description><category></category></item></channel></rss>