单片机
单片机外设:电机驱动笔记
# 几种直流电机模块 **TB6612** [商品链接](https://detail.tmall.com/item.htm?abbucket=1&id=539749232497&ns=1&spm=a230r.1.14.13.2c612ca3iL1J4l) **DRV8833** [商品链接](ht ......
单片机的裸机系统和多任务系统总结
一、裸机系统 1.1轮询系统 轮询系统是裸机编程时,先初始化好相关硬件,然后让主程序在一个死循环内不断循环,顺序完成各种事情。伪代码如下所示: 1 int main(void) 2 { 3 /* 硬件相关初始化 */ 4 HardWareInit(); 5 6 /* 无限循环 */ 7 for(;; ......
嵌入式开发入门-51单片机基础知识(9)- DS18B20
一、DS18B20简介 1、DS18B20是一个数字温度传感器,单总线传输数据,测量温度范围为-45℃-125℃,测量精度可配置为9位,10位,11位,12位,默认配置12位,分别对应0.5℃、0.25℃、0.125℃和0.0625℃。 二、温度测量 1、由于DS18B20通电后,处于空闲状态,不进 ......
STM32单片机引脚要职能配置为输入或者输出模式,并不能像51一样准双向,那么如何进行但总线通讯呢?STM32F103C8驱动HTD11示例
如题 随便找个端口举例 对应的程序为 难道需要写之后立即初始化为输入?然后赶紧读?然后再赶紧初始化为输出?再往外写? 是的,还真他妈就是这么傻逼的操作 ......
关于单片机控制电压检测的学习
1. 使用单片机内自带的ADC模块进行检测 问题在于频率是否合适:在实验2的基础上得到结论,当两线圈距离在2cm左右时,工作频率将会超过1MHz。采样的最好结果是采集尽可能多的点,这样才能绘制出真正反映实际情况的曲线。 目前想要完成的是实验3的demo,采用电阻分压和二极管整流,直接利用单片机内部的 ......
单片机原理及应用——基于C51和Proteus仿真(微课版)
单片机原理及应用——基于C51和Proteus仿真(微课版) 主 编:张同光出版单位:清华大学出版社ISBN:ISBN:出版时间:2023.9CIP:页数:260 内 容 简 介前 言三级目录 第1章 8051单片机基本结构 1 1.1 单片机概述 1 1.2 单片机入门首选8051单片机 4 1. ......
【带DC引脚SPI屏】STM32L010K8超低功耗单片机软件模拟SPI驱动ST7567点阵屏12864示例
显示屏驱动芯片多种多样,有的不带DC,通过接收的数据的某个特定位确定是命令还是数据,比如常见的12864 移植案例在 【不带DC脚的spi屏】STM32F103C8移植u8g2 在软件模拟spi模式下驱动st7920带字库 的12864显示屏 - 不打鱼光晒网 - 博客园 (cnblogs.com) ......
ST7920芯片硬件SPI串行 stm32f103c8单片机移植u8g2后,定做一幅高清的logo
软件spiSTM32F103C8移植u8g2 在软件模拟spi模式下驱动st7920带字库 的12864显示屏 - 不打鱼光晒网 - 博客园 (cnblogs.com) 硬件spistm32f103c8硬件spi驱动st7920移植u8g2 - 不打鱼光晒网 - 博客园 (cnblogs.com) ......
AVR单片机知识点
1、 AVR单片机采用RISC架构,8051单片机采用CISC架构。前者速度为后者的2~4倍,为流水线操作指令 2、 AVR单片机有32个通用寄存器(地址在RAM区从$0000开始到$001F),其中有6个(最后6个)合并为3个16位的X,Y,Z寄存器,用来存放地址指针,Z寄存器还可以寻址程序存储器 ......
嵌入式开发入门-51单片机基础知识(8)- IIC
一、IIC发送时序图 从上图可以看出: 起始条件:SCL线是高电平时,SDA线从高电平向低电平切换; 停止条件:SCL线是高电平时,SDA线从低电平向高电平切换; 首先SDA和SCL都处于空闲状态(SDA和SCL都为高电平时), 然后,SDA跳变为低电平(可以理解为,SDA向SCL发出通知,我现在要 ......
单片机学习-Writing
Date: 2023-04-01 11:17:44 ps: 写作中 前言 我的专业是物联网工程,虽然几乎没怎么听过课,但毕业设计把我硬生生逼入门了,以下为我的学习感受,知识不应该被遗忘,应该被记录,储存,对我自己有意义就可以了 实现阿里云温湿度监测 完成毕业设计目标,随便选的一个课题,学校要求要使用 ......
51单片机(普中板)红外遥控
1,下降沿触发 现象:按下k3键,Lcd值会增加。 #include <REGX52.H> #include "Delay.h" #include "LCD1602.h" unsigned char number; void main() { LCD_Init(); LCD_ShowString(1 ......
51单片机(普中板)函数库
外部中断 Into.c #include <REGX52.H> void Into_Init() { IT0 = 1; //1:下降沿触发;0:低电平触发 IE0 = 0; EX0 = 1; EA = 1; PX0 = 1; // 触发优先级 } /* void Into_Routine(void) ......
51单片机(普中板)蜂鸣器控制
蜂鸣器通过震荡脉冲控制 1,尝试发声 #include <REGX52.H> #include "Delay.h" sbit buzzer = P2^5; // 蜂鸣器端口unsigned int i; //演奏时长 void main() { while(1) { for (i=0 ; i < 5 ......
51单片机 90g360°舵机控制
主函数 main #include <REGX52.H> #include "Delay.h" #include "Timer0.h" unsigned char count = 0; unsigned char pwm; void Timer0() interrupt 1 { // 每隔0.1ms ......
为什么单片机编程放不下超过32万的整数?
因为你的单片机可能是16位的,c语言16位编译器的int类型占2字节,也就是范围:-2^15~2^15 - 1 (-32768~32767)。 32位的编译器int类型占4字节。 这种情况下可以使用long int(16位编译器4字节),也可以使用循环处理整数。 ......
51单片机学习笔记 STC89C52RC (05)矩阵键盘和独立键盘(轻触开关)
按键抖动,需要消抖 原理图来自清翔电子 一、独立键盘模块 1.可以直接获取 P3^0对应S2 P3^1对应S3 P3^2对应S4 P3^3对应S5 的电压 当轻触开关按下时,电流会流向GND,此时这一路的电压为0V,松开轻触开关,又变为5V //第一种方法:单个I/O口检测控制 #include < ......
51单片机学习笔记 STC89CRC (04)数码管和锁存器
一、数码管 点亮:共阴极给高电平,共阳级给低电平,二进制点亮顺序为 dp g f e d c b a 想要显示1,就可以给0x06, //0000 0110,bc亮起显示1. 0x3F, //"0" 0x06, //"1" 0x5B, //"2" 0x4F, //"3" 0x66, //"4" 0x ......
51单片机学习笔记 STC89CRC (03)蜂鸣器和三级管
蜂鸣器根据工作原理的不同可分为 "电磁式蜂鸣器" 和 "压电式蜂鸣器" 蜂鸣器根据驱动方式可分为"有源蜂鸣器" 和 "无源蜂鸣器" 有源蜂鸣器:一通电就会叫 无源蜂鸣器:必须用2k~5k的方波去驱动它 三极管 直插式 封装 TO-92: 面向三极管平的一面,从左往右数 1.发射极 2.基极 3.集电 ......
51单片机学习笔记 STC89CRC (02)流水灯
#include <reg52.h> #include <intrins.h> #define uint unsigned int #define uchar unsigned char uchar temp;//LED灯相关变量 //延时函数,ms 毫秒 void delay(uint ms) { ......
51单片机学习笔记 STC89CRC
STC89C 51( Flash程序储器(字节)4k) 52( Flash程序储器(字节)8k) 53( Flash程序储器(字节)12k)...具体参考芯片手册STC89C系列 51单片机封装方式 1.DIP封装 2.LQDP封装 3.PLCC封装 电平特性 数字电路中只有两种电平:高电平和低电平 ......
在linux系统下搭建STM32单片机开发环境
在linux系统下搭建STM32单片机开发环境的记录 前言 懒得说了,过后再补 准备 ubuntu系统,vscode,交叉编译工具链gcc-arm-none-eabi,还需要一个下载软件,我还没装 安装交叉编译工具链 ubuntu系统可直接运行下面的命令直接安装 sudo apt install g ......
成都控制设备订做:利用74373芯片进行单片机IO口扩展的方法介绍
本文介绍用74373芯片进行微处理器IO口扩展的方法。1.为什么要进行IO口扩展?在电路设计的某些时候,微处理器(如单片机)IO口不够用了,此时该怎么办呢?利用辅助芯片进行IO口扩展是个简单直接的方法,能用较少的成本增多IO口。我处提供单片机、PLC、电路板、控制器/箱、仪器仪表、机电设备或系统、自 ......
IIC_51单片机模拟时序_单字节读写
#include<reg52.h> #include<intrins.h> //内部有_nop_(); //IIC模拟时序实现 //注意:SCL为高电平时变化SDA数据是起始或者终止信号;所以若不是起始或者终止信号,需要在SCL为低电平时变化SDA数据 sbit SDA = P2^0; sbit S ......
基于51单片机智能小车循迹功能的实现
说明:本博客来自本人CSDN博客 点击跳转本人csdn博客 点击跳转本人个人网站 (目录) 一、思路(仅供参考) 本实验采用两路红外循迹模块单黑线循迹的方法。当红外循迹模块未检测到黑线,则前进;若一边检测到黑线,则实现转弯;若两边均检测到黑线,则停止。利用两路红外循迹模块接收到的信号控制电机的运动, ......
《安富莱嵌入式周报》第309期:开源脑机接口套件,三相多电平逆变器,开源电位仪,单片机并行计算,蓝牙市场分析报告,AI密码破解,nRF54H2发布,Z-Wave
周报汇总地址:http://www.armbbs.cn/forum.php?mod=forumdisplay&fid=12&filter=typeid&typeid=104 视频版: https://www.bilibili.com/video/BV1aX4y1r7LA 1、东芝推出使用MOSFET ......
单片机程序运行过程中,某些变量被莫名其妙的修改了
在开发单片机程序中,遇到这么一个问题,程序运行过程中,某些变量被莫名其妙的修改了,然而经过打断点还有打印信息都完全查不出哪里出了问题,直到我灵光一闪。 解决方法:查 map文件,定位到被修改的变量,然后往上查看有可能的数组。后面经查看找到了可疑数组。然后再查看相关代码。发现有越界访问现象。然后对其进 ......
基于51单片机的智能鱼缸设计
基于51单片机的智能鱼缸设计。 有原理图,程序,原文 才用STC12C5A60S2,最新款国产51单片机。 本系统设计的主要是基于单片机为核心,设计一款集温度检测、恒温控制、步进电机控制、继电器控制、矩阵键盘设计于一身的智能鱼缸控制系统,理论联系实际达到期望的效果。 本系统的信号采集主要依靠DH17 ......
怎样学习一款单片机
1.首先整体死磕规格书,了解各模块是什么?能达到什么效果?有什么特殊之处? 2.整体看官方提供的各模块库及各模块DEMO,主要是熟悉寄存器,了解各模块能做哪些功能? 3.尝试修改一个官方demo,点亮一个LED,重点看规格书的一个外设,并使用。 4.看官方的方案源代码,看看这款MCU具体的应用场景, ......
51单片机看门狗定时唤醒低功
程序流程: 1.检测到符合睡眠条件,进入到睡眠程序。 2.初始化看门狗,设置定时唤醒时间,关闭其它外设中断。 3.开总中断,只开看门狗中断 4.进入睡眠模式 5.发生看门狗唤醒中断,清除看门狗定时器,复位看门狗标志,防止复位。 6.退出睡眠模式,初始化单片机外设寄存器,打开外设中断。 7.执行主程序 ......