单片机
文章平均质量分 91
主要是51单片机 32单片机 瑞萨单片机 使用过程中的一些笔记
王蒟蒻
蒟蒻
展开
-
单片机、ARM、开发版、嵌入式名词
ARM:ARM处理器是英国Acorn有限公司设计的低功耗成本的第一款RISC微处理器。Arduino:Arduino是一款便捷灵活、方便上手的开源电子原型平台。包含硬件(各种型号的Arduino板)和软件(Arduino IDE)。由一个欧洲开发团队于2005年冬季开发。单片机:单片机(Single-Chip Microcomputer)是一种集成电路芯片,是采用超大规模集成电路技术把具...原创 2019-09-11 15:42:03 · 972 阅读 · 0 评论 -
STM32——ADC实验
main.c/*********************************************************** FileName: ADC实验** Description: 使用电位器调整电阻值,ADC扫描电阻值,输入电压值 ** Author: 老猫** Date: 2019/10/7** Others: *...原创 2019-10-13 13:40:42 · 2938 阅读 · 0 评论 -
STM32——DMA实验
main.c/*********************************************************** FileName: DMA传输速度比较** Description: 分别使用CPU和DMA传输数据,对其计时,使用串口返回时间,对时间进行比较。 ** Author: 老猫** Date: 2019/10/7...原创 2019-10-11 11:15:00 · 621 阅读 · 0 评论 -
STM32——滴答定时器设置1us问题
在DMA实验中使用滴答定时器设置1us中断计时串口输出计时信息采用72Mhz无问题SysTick_Config(SystemCoreClock / 1000000);采用9Mhz 问题为串口没有发送成功 SysTick_Config(9); SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK_Div8);解释:使用systick...原创 2019-10-11 11:09:17 · 3235 阅读 · 0 评论 -
STM32——独立看门狗
main.c/*********************************************************** FileName: 看门狗实验** Description: 使用外部中断进入一个死循环,从而触发开门狗模式,打印对应消息 ** Author: 老猫** Date: 2019/10/7** Others:...原创 2019-10-09 22:28:23 · 296 阅读 · 0 评论 -
STM32——窗口看门狗
main.c/*********************************************************** FileName: 看门狗实验** Description: 使用外部中断进入一个死循环,从而触发开门狗模式,打印对应消息 ** Author: 老猫** Date: 2019/10/7** Others:...原创 2019-10-09 14:32:43 · 351 阅读 · 0 评论 -
STM32——外部中断 嵌套实验
main.c/*********************************************************** FileName: 中断实验** Description: 实验中断触发,用串口通信进行检测。 ** Author: 老猫** Date: 2019/10/7** Others: **********...原创 2019-10-09 11:00:46 · 2532 阅读 · 2 评论 -
STM32——USART串口通信
main.c/*********************************************************** FileName: 串口通信** Description: 接收电脑端发送数据,并返回发送的数据 ** Author: 老猫** Date: 2019/10/7** Others: ********...原创 2019-10-07 17:30:41 · 481 阅读 · 0 评论 -
STM32--按键控制LED灯
main.c/*********************************************************** FileName: 按键检测** Description: 按键检测的方法主要有延时和中断扫描,各有优缺点该方法能保证CPU效率和减少外部中断的消耗 ** Author: 老猫** Date: 2019/9...原创 2019-10-06 20:17:34 · 2583 阅读 · 0 评论 -
STM32点灯
main.c#include "stm32f10x.h" //STM32头文件#include "sys.h"#include "delay.h"#include "led.h"int main (void){//主程序 RCC_Configuration(); //时钟设置 LED_Init();//LED初始化 while(1){ //方法1: GPIO_WriteB...原创 2019-09-26 10:58:46 · 748 阅读 · 0 评论 -
STM32——GPIO笔记
感觉就是超强IO的意思,确实功能强大参看1参考2摘录几个重点:GPIO 8种工作模式(gpio_init.GPIO_Mode)(1) GPIO_Mode_AIN 模拟输入(2) GPIO_Mode_IN_FLOATING 浮空输入(3) GPIO_Mode_IPD 下拉输入(4) GPIO_Mode_IPU 上拉输入(5) GPIO_Mode_Out_OD 开漏输出(6) GP...原创 2019-09-25 15:16:24 · 370 阅读 · 0 评论 -
STM32相关名词解释
L是line的意思,相线,俗称火线;N是neutral,中性线的意思,在两相线中也称为零线。NO:也就是常开,即在未通电的情况下继电器触点是分开的。NC:也就是常闭,即在未通电的情况下继电器触点是吸合的。COM 公共端公共点一定要和常开和常闭连接组成...原创 2019-10-11 14:10:02 · 1404 阅读 · 0 评论 -
STM32导航指南
STM32命名原创 2019-10-09 11:16:25 · 759 阅读 · 0 评论 -
STM32命名
本文在杜老师文章基础上整理,仅做学习笔记使用。速读例子说明开发版使用STM32F103C8T6:32(系列):计算机的设计中,把多个二进制的位组成一组,一次处理这一组数据。一次处理32位。F(类型):字母F代表通用型,就是说F类型的单片机在性能、功能、功耗、价格方面比较平衡,哪项也不突出,哪项也不缺少,尽量满足所有需要微控制器的场合。103(子系列):指ST公司32位通用型单...原创 2019-09-09 15:18:36 · 1046 阅读 · 0 评论 -
上拉电阻和下拉电阻
上拉(Pull Up )或下拉(Pull Down)电阻(两者统称为“拉电阻”)最基本的作用是:将状态不确定的信号线通过一个电阻将其箝位至高电平(上拉)或低电平(下拉),无论它的具体用法如何,这个基本的作用都是相同的,只是在不同应用场合中会对电阻的阻值要求有所不同,从而也引出了诸多新的概念,本节我们就来小谈一下这些内容。**如果拉电阻用于输入信号引脚,通常的作用是将信号线强制箝位至某个电平,以防...转载 2019-09-10 17:23:51 · 602 阅读 · 0 评论 -
AD17学习笔记
熟悉菜单schematic 原理图schemat library 原理图库库熟悉库元器件位置(库有搜索功能 使用搜索功能进行元器件的搜索,点击放置进行放置)图库中找不到自己所需元器件,就自己新建库原理图库不需要很精确到尺寸,只是对它的原理做一个解释,用符号表示电路和原件当遇见库里面没有元器件时可以用类似的元器件代替并标明操作走线的时候英文状态下,使用shift+空格键可以进行斜...原创 2019-08-19 20:13:59 · 2443 阅读 · 1 评论 -
硬件基础
三极管相关知识PNP三极管: 箭头向里NPN三极管:箭头向外三极管基极、发射极、集电极基极为中间部位有箭头的为发射极另一条为集电极当箭头的始端比末端高0.7V的时候就可以导通三极管的e极和c极...原创 2019-07-30 10:07:00 · 781 阅读 · 0 评论 -
数码管显示字母
原创 2019-10-28 10:47:53 · 21058 阅读 · 0 评论 -
旋转编码器
大概原理是转动编码器的时候,A B端口会输出波形,这个波形会根据你是正转还是反转 相对另一个波形超前或者滞后。以使用微动开关的旋转编码器为例原理图过程:在按键顺时针旋转的时候,A先闭合,后B闭合在逆时针旋转的时候,B先闭合,后A闭合。这样在BM1-a和BM1-b中会输出不同的波形。波形:判断方法:当K2电压跳变的时候,先判断K2状态,确定时上升沿还是下降沿,然后判断K3状态,...原创 2019-10-25 13:41:10 · 980 阅读 · 1 评论 -
温度传感器DS18B20
初始化检查总线上是否存在该器件,存在就返回一个低电平脉冲,不存在,总线保持高电平。/*拉低引脚,持续500us延时60us读取存在脉冲,并等待脉冲结束*/bit Get18B20Ack(){ bit ack; EA=0; //禁止总中断 IO_18B20=0; DelayX10us(50); IO_18B20=1; DelayX10us(6); ack=...原创 2019-08-25 11:39:10 · 1331 阅读 · 0 评论 -
实时时钟芯片DS1302
特性1、DS1302是一个实时时钟芯片,可以提供秒、分、小时、日期、月、年等信息,并且还有软件自动调整的能力,可以通过配置AM/PM来决定采用24小时格式还是12小时格式。2、拥有31字节数据存储RAM。3、串行I/O通信方式,相对并行来说比较节省IO口的使用。4、DS1302的工作电压比较宽,在2.0~5.5V的范围内都可以正常工作。5、DS1302这种时钟芯片功耗一般都很低,它在工作...原创 2019-08-14 16:54:37 · 7069 阅读 · 0 评论 -
28BYJ-48步进电机
介绍参数含义28——步进电机的有效最大外径是28毫米B——表示是步进电机Y——表示是永磁式J——表示是减速型48——表示四相八拍原理图工作原理通过对不同的相依次导通一定时间,使得定子转到指定角度。最佳工作模式为八拍模式(八拍转过一个定子角度)需要注意减速比节拍刷新大于1.8ms即可单片机控制首先查询得步进电机节拍对应的IO控制代码然后每隔一定的时间进行代码的刷新(这...原创 2019-08-09 15:30:37 · 6327 阅读 · 0 评论 -
1602液晶
接口原理图接口介绍4引脚:数据命令选择端。当引脚为高电平时为数据,引脚为低电平时为命令5引脚:功能读写选择短。H读,L写,读写之前需要判断液晶状态6引脚:使能引脚。关系到液晶的读写命令和数据在液晶上显示字符过程[1]读取液晶显示的状态 (不忙才可进行读写操作,忙需要继续等待)[2]确定写入的位置 通过写指令的方式[3]写入字符 即写指令液晶读写时序介绍显示2行,每行16...原创 2019-08-07 21:06:45 · 992 阅读 · 0 评论 -
红外遥控
与单片机红外接收模块检测到38K红外信号后,会在OUT引脚输出低电平,没有的话OUT脚就会输出高电平。接收到红外信号,通过使用外部中断,进入中断,测量信号时间,判断信号值,具体要看使用的是什么协议。NEC协议NEC数据格式:引导码、用户码、用户码(或者用户码反码)、按键键码和键码反码,最后一个停止位。每个一个字节。引导码:9ms的载波+4.5ms的空闲。比特值“0”:560us的载...原创 2019-08-07 17:27:37 · 2769 阅读 · 1 评论 -
瑞萨单片机入门导航--持续更新
开发环境的建立外部编译器VSCode使用瑞莎编辑的时候,注释报错问题,改成国标后,在重新写注释即可VS更改默认打开保存编码gb2312使用VScode作为keil编辑器并设置滚轮放大字体入门小程序原理图和51使用的开发版一致,就是其中51芯片换成瑞莎最小开发版程序原理图瑞莎单片机–流水灯瑞莎单片机入门之秒表...原创 2019-09-19 15:32:21 · 2239 阅读 · 0 评论 -
瑞莎单片机入门之秒表
主要部分main.c/* Start user code for global. Do not edit comment generated here */#define ADDR0 P0.0#define ADDR1 P0.1#define ADDR2 P0.2#define ADDR3 P0.3#define ENLED P0.4#define key1 P2.4#defin...原创 2019-09-18 15:55:28 · 643 阅读 · 0 评论 -
瑞莎单片机--流水灯
main.c#include "r_cg_macrodriver.h"#include "r_cg_cgc.h"#include "r_cg_port.h"#include "r_cg_timer.h"/* Start user code for include. Do not edit comment generated here *//* End user code. Do not...原创 2019-09-18 09:15:30 · 731 阅读 · 0 评论 -
C51串口的SCON寄存器及工作方式
串行口控制寄存器SCON它用于定义串行口的工作方式及实施接收和发送控制。字节地址为98H,其各位定义如下表:其中fosc为晶振频率SM2:多机通讯控制位。在方式0时,SM2一定要等于0。在方式1中,当(SM2)=1则只有接收到有效停止位时,RI才置1。在方式2或方式3当(SM2)=1且接收到的第九位数据RB8=0时,RI才置1。REN:接收允许控制位。由软件置位以允许接收,又由软件清0来...转载 2020-03-14 13:43:22 · 10024 阅读 · 1 评论 -
RS232、RS485和TTL电平与UART串口通信
串口通信初步认识1、并行通信:通信时数据的各个位同时传送,可以实现字节为单位通信,但是通信线多占用资源多,成本高。2、串行通信,一次只能发送一位,要发送8次才能发送一个字节。GND为单片机系统电源参考地TXD为串行发送引脚RXD为串行接收引脚低位先发,高位后发波特率:发送二进制数据位的速率UART串口通信通信三种基本类型【1】单工通信:只允许一方向另外一方传送信息,另一方不能...原创 2019-08-08 10:08:27 · 1687 阅读 · 0 评论 -
51 简易加法计算器
/********************************************************************************目标做一个简易的加法计算器功能分析按下键盘数字,显示到数码管按下加号 数码管清零,记录下一个数字直到按下回车键 显示出结果构思按键扫描函数,检测4次报告哪个键被有效按下 keyscan按键驱动函数,再主程序里...原创 2019-08-01 15:24:25 · 944 阅读 · 0 评论 -
51矩阵按键数码管小程序
电路参考/********************************************************************************对矩阵按键进行扫描,数码管对按键的键值进行显示********************************************************************************/#in...原创 2019-08-01 10:42:16 · 1266 阅读 · 0 评论 -
51秒表程序
/*完成一个秒表的功能所需函数按键驱动 检测按键按键动作函数秒表启动函数秒表清零函数秒表计时函数数码管数值函数数码管显示函数扫描时间设置函数config*/#include <reg52.h>//数码管显示相关sbit ADDR3=P1^3;sbit ENLED=P1^4;//键盘相关sbit key1=P2^4;sbit key2=P2^5;sb...原创 2019-08-05 10:48:38 · 1069 阅读 · 0 评论 -
51单片机代码知识技巧
【1】数字类型能用小就不用大【2】sfr P0=0x80;其中srf是关键字,它的作用是定义一个单片机特殊功能寄存器P0是一个功能模块,里面有八个开关【3】sbit LED=P0^0;sbit就是对刚才所说的SFR里面的一个开关其中的一个进行定义【4】while(1);单片机执行程序时候,要让程序进入一个死循环,否则可能会导致单片机自动复位。【5】使用定时器的时候,要注意定时器有范...原创 2019-07-31 16:25:04 · 2966 阅读 · 0 评论 -
51中断
中断理解中断即达到条件后就会进行自动调用,故无需再主程序中调用,触发条件一到,标志位自动置位,中断发生,定时器的运行和中断的处理是并行的。中断寄存器用到中断首先打开EA,然后需要用到哪个分中断再打开对应的开关就可以了。EA=1;ET0=1;void InterruptTimer0() interrupt 1{}//中断函数不返回任何值,中断函数后面的数字按下表取用中断的...原创 2019-07-31 15:29:32 · 599 阅读 · 0 评论 -
定时器
时钟周期晶振时间为11.0592M,周期就为1/11059200机器周期单片机完成一个操作的最短时间,51系列一个机器周期为12个时钟周期定时器内部有一个寄存器,它开始计数后,这个寄存器的值每经过一个机器周期就会自动加151单片机的定时器的寄存器TH0/TL0用于T0 TH1/TL1用于T1主要记住TR0 定时器0运行控制位,软件置位/清零来进行启动/停止定时器TF0定时器...原创 2019-07-31 15:16:47 · 856 阅读 · 0 评论 -
单片机资料入门大全
单片机的组成内部资源flash 程序存储空间(断电后数据不丢失)RAM 数据存储空间(存储程序运行过程中产生的和需要的数据,断电后数据丢失)SFR 特殊功能寄存器(单片机的功能主要是通过用户对SFR的读写来实现单片机的功能)单片机的最小系统电源晶振(作用是为单片机系统提供基准时钟信号)复位电路(作用就是重启)硬件知识传送门代码块数字类型能用小就不用大sfr P0=0x8...原创 2020-03-15 15:07:16 · 1096 阅读 · 2 评论 -
一个串口通信实例
/*功能描述通过串口向单片机发送一个信号,数码管显示该信号值函数分析数码管扫描定时器设置定时串口配置函数*/#include <reg52.h>sbit ADDR3=P1^3;sbit ENLED=P1^4;unsigned char TORH=0;unsigned char TORL=0;unsigned char refresh=1;unsigned c...原创 2019-08-08 10:54:19 · 1817 阅读 · 0 评论 -
1602液晶移动
Lcd1602.c/*液晶显示相关代码*/#include <reg52.h>#define LCD1602_DB P0sbit LCD1602_RS=P1^0;sbit LCD1602_RW=P1^1;sbit LCD1602_E=P1^5;void LcdWaitReady()//读状态{ unsigned char sta; LCD1602_DB=0XFF...原创 2019-08-08 17:38:03 · 699 阅读 · 1 评论 -
51长短按键
/*设计一个按键按住向上键加一按住向下键减1连续按住1s后,美200ms加1所需函数按键驱动函数 在主函数中不断检测按键是否按下按键动作函数,对按键动作进行判断按键驱动函数LED显示函数,LED驱动函数*/#include <reg52.h>sbit ADDR3=P1^3;sbit ENLED=P1^4;sbit key1=P2^4;sbit key2=...原创 2019-08-09 14:25:57 · 814 阅读 · 0 评论 -
液晶密码锁(可更改密码)
main.c/*********************************************************** FileName: 液晶密码锁** Description: 使用液晶完成一个密码锁功能初始界面password:输入数字在下方显示,按下回车完成输入初始密码12345输入正确提示:hello world! 任意键返回初始界面输入错...原创 2019-09-02 17:04:36 · 988 阅读 · 0 评论