新手入门
麟枫
凭兴趣学单片机
b站ID:x麟枫
网易云ID:麟枫
展开
-
【问题解决】RuntimeError: Couldn‘t detect Bash version, shell completion is not supported.
只需修改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())原创 2021-08-06 11:53:00 · 1340 阅读 · 0 评论 -
【51单片机】编程小技巧(二)——for 循环参数的妙用
文章目录for 循环参数的妙用一般的for循环格式众所周知 i 是一个变量,范围是0~255 。但是,它除了在for循环中作为参数,还可以在for()循环中调用举个例子1. 显示数字2. 流水灯(可以下载测试)for 循环参数的妙用一般的for循环格式unsigned char i; //声明一个变量//递增型for(i=0;i<8;i++) //循环8次{ //do something}//递减型for(i=8;i++;i--){ //do something}众所.原创 2021-05-24 19:41:06 · 2223 阅读 · 0 评论 -
【51为例】单片机编程技巧(一)——写自己的库
前言为什么要写自己库呢?因为随着项目的越来越复杂,如果代码都堆再一个main.c文件里的话管理起来会比较难。你出现想找到某部分的代码得上下翻找。因此把各部的代码建立一个独立的库会使代码管理起来相对容易。想找到某部分人的代码只需找到相应的c文件即可。一、 开始我使用的是keil4先用keil4建立一个新项目。二、步骤1. 建立一个头文件保存为.h 文件,名字可以自己取。我这里就当写个led闪烁库吧。编写.h文件的内容,一般是一个固定格式。如果需要用的单片机的资源要包含它的头文件,不然原创 2021-05-24 18:28:44 · 3729 阅读 · 2 评论 -
【步进电机驱动】【简单暴力,功能强大】基于51单片机的步进电机驱动
今天写了个步进电机驱动电机如图驱动原理这个步进电机是四相五线制,只要给它特定的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原创 2021-05-03 00:23:27 · 1103 阅读 · 1 评论 -
【白嫖福利】【TM1637】简单易懂!51单片机完整的数码管驱动程序(数码管和按键拓展芯片)
概述在使用单片机的过程中发现某些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原创 2021-04-30 17:47:02 · 5703 阅读 · 8 评论 -
【避坑】【白嫖福利】PCF8574驱动程序,IO口驱动程序(本人亲写,国产有坑)
废话不多说放程序吧PCF的C程序#include"PCF8974.h"#include"intrins.h"#define Write 0x40#define Read 0x41unsigned 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;}原创 2021-04-26 00:01:09 · 1876 阅读 · 12 评论