STM32 CubeMX HAL库MH-Z19B获取CO2二氧化碳数据
1、说明(1)MCU为STM32F103C8,二氧化碳传感器使用型号MH-Z19B; (2)硬件连接:MH-Z19B的串口与STM32的串口2相连接; (3)MH-Z19B的HD引脚连接到STM32的一个引脚,可用于手动校准零点; (4)程序中使用HAL库,代码有CubeMX生成;
2、程序驱动头文件:mh_co2.h123456789101112131415#ifndef __MHCO2_H_#define __MHCO2_H_#include "stdbool.h"#include "string.h"#include "main.h"#include "usart.h"#include "gpio.h"void co2_init();void co2_sample(uint16_t *co2);#endif
驱动主文件:mh_co2.c123456789101112131415161718192021222324252627282930313233343536373839404 ...
STM32 CubeMX HAL库M24C02 EEPROM操作
1、说明(1)MCU为STM32F103C8,EEPROM型号M24C02; (2)硬件连接:EEPROM连接STM32的IIC1; (3)EEPROM的E0,E1,E2,WC脚连接地,因此其设备地址为:(0x50<<1),即0xA0; (4)程序中使用HAL库,代码有CubeMX生成;
2、程序驱动头文件:m24_eeprom.h12345678910111213141516171819\#ifndef __M24_EEPROM_H_#define __M24_EEPROM_H_#include "stdbool.h"#include "string.h"#include "main.h"#include "tim.h"#include "usart.h"#include "gpio.h"HAL_StatusTypeDef EEPROM_ReadByte(uint16_t MemAddress,uint8_t *data);HAL_StatusTypeD ...
STM32 CubeMX HAL库使用SGP30获取CO2和VOC
1、说明(1)MCU为STM32F103C8,模块为SGP30; (2)硬件连接:SGP30连接STM32的IIC1; (3)SGP30的设备地址为:(0x58<<1); (4)程序中使用HAL库,代码有CubeMX生成;
2、程序驱动头文件:sgp30.h12345678910111213141516#ifndef __SGP30_H_#define __SGP30_H_#include "stdbool.h"#include "string.h"#include "main.h"#include "tim.h"#include "usart.h"#include "gpio.h"HAL_StatusTypeDef sgp30_init();HAL_StatusTypeDef sgp30_sample(float *co2, float *tvoc);#endif
驱动主文件:sgp30.c123456789101112131415161718192 ...
STM32 CubeMX HAL库使用SHT30获取温湿度
1、说明(1)MCU为STM32F103C8,温湿度芯片为SHT30; (2)硬件连接:SHT30连接STM32的IIC1; (3)SHT30的ADDR脚连接地,因此其设备地址为:(0x44<<1),即0x88; (4)程序中使用HAL库,代码有CubeMX生成;
2、程序驱动头文件:sht30.h12345678910111213#ifndef __SHT30_H_#define __SHT30_H_#include "stdbool.h"#define SHT_ADDR (0x44<<1)uint8_t sht30_init();uint8_t sht30_sample(float *t, float *h);#endif
驱动主文件:sht30.c1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 ...
NFC模块PN532使用
1、PN532数据包格式:(1)正常数据包:
00
00 FF
LEN
LCS
TFI
PD0…PDn
DCS
00
00 :序列头
00 FF :起始号
LEN :数据包长度,包含TFI
LCS :数据长度校验和,LEN+LCS = 0
TFI :命令; D4表示主机到PN532,D5表示PN532到主机
PD0…PDn:数据
DCS :数据校验和,TFI+PD0+…+PDn = 0
00 :序列结尾
(2)应答包:
00
00 FF
00 FF
00
00 :序列头
00 FF :起始号
00 FF :应答包
00 :序列结尾
(3)非应答包:
00
00 FF
FF 00
00
00 :序列头
00 FF :起始号
FF 00 :没有应答
00 :序列结尾
(4)加长数据包:
00
00 FF
FF
FF
LENM
LENL
LCS
TFI
PD0…PDn
DCS
00
在正常情况下,只能发送256个字节的数据,PN532提供一种特殊的格式可以发送更 ...
FreeCAD基础操作
1、快捷方式1.1、3D导航
1.2、快捷键2、工作台2.1 PartDesign零件工作台
2.2 Kicad可以结合Kicad进行PCB边框设计。
KiCAD快捷键
1、原理图编辑
快捷键
说明
a
可以添加元器件符号,第一次会加载符号库
Ctrl+D
复制符号
Ctrl+C
复制到系统剪贴板
w
添加连线,将器件引脚连接
v
可以给器件添加值,比如电阻阻值,电容容值等
p
可以打开电源选择窗口,选择并添加电源符号
g
可以拖拽器件,过程中连线不会断开
m
移动会改变器件的位置并且连线会断开
x / y
分别按照x或y轴镜像符号
r
符号沿着中心点顺时针旋转90度
e
编辑元器件的一些符号属性
f
鼠标在元件上,编辑单个元器件的封装库
L
用于添加网络标签
Insert
按照一定规则重复最后一次操作项
Shift+鼠标框选
块复制
q
添加不连接标志
Ctrl+f
查找
Ctrl+z
撤回
Esc
停止正在进行的任何命令并返回正常指针模式
a
添加符号
在原理图上添加元器件
w
连线
开始画线
q
添加不连接标志
用于悬空引脚
e
编辑项目
编辑元器件的一些符号属性
y
y轴镜像
元器件沿Y轴镜像翻转
p
添加电源
在原理图上添加电源器 ...
E-Tool工具说明
E-Tool, A Tool Easy To Use , 用于嵌入式软件工程师、创客等的开发工作。
下载地址:微云:https://share.weiyun.com/EDVQgAKt
Github:https://github.com/makerinchina-iot/E-Tool-release
使用说明文档
简介: http://makerinchina.cn/docs/index.html?file=001-E-Tool%E5%B7%A5%E5%85%B7/001-E-Ttool%E7%AE%80%E4%BB%8B
modbus-rtu温湿度监控: http://makerinchina.cn/docs/index.html?file=001-E-Tool%E5%B7%A5%E5%85%B7/002-Modbus-RTU%E6%B8%A9%E6%B9%BF%E5%BA%A6%E7%9B%91%E6%8E%A7
界面
简要记录
2020年6月2日 发布0.10版本
2020年9月2日 发布0.20 版本,主要增加英语版本支持;修改软件图标.
半导体技术词汇-中英对照
整理一些半导体技术中常用的词汇。 A Abrupt junction 突变结 Accelerated testing 加速实验 Acceptor 受主 Acceptor atom 受主原子 Accumulation 积累、堆积 Accumulating contact 积累接触 Accumulation region 积累区 Accumulation layer 积累层 Active region 有源区 Active component 有源元 Active device 有源器件 Activation 激活 Activation energy 激活能 Active region 有源(放大)区 Admittance 导纳 Allowed band 允带 Alloy-junction device 合金结器件 Aluminum(Aluminium) 铝 Aluminum – oxide 铝氧化物 Aluminum passivation 铝钝化 Ambipolar 双极的 Ambient temperature 环境温度 Amorphous 无定形的,非晶体的 Amplifier 功 ...
数字IC设计-分频电路
1、偶数分频
方法
直接使用计数器实现,在计数一半时将时钟翻转即可;
4 分频示例
12345678910111213141516171819202122232425262728module clk_div_even#( parameter DIV = 4)( input clk, input rstn, output reg clko);reg [DIV/2-1:0] cnt;always @(posedge clk or negedge rstn)begin if(!rstn) begin cnt <= 0; clko <= 0; end else begin if(cnt == (DIV/2 - 1)) begin clko <= ~clko; cnt <= 0; end else begin cnt <= cnt + 1; end endendendmodule
仿真波形:
2、奇数分频
非 50% 占空比
使用计数器,当计数到一半时候进行翻 ...