草庐IT

基于stm32f103c8t6及AS608-----指纹锁项目

一、关于本项目:     本文适合于初学者,大佬还请勿喷,欢迎提出意见,有纰漏之处将及时纠正。在浅学了stmf103c8t6后,想着依据现在所拥有的知识和能力做一个小项目。在了解到有关宿舍指纹锁的相关内容,对该功能的实现产生了极大的兴趣。于是着手准备学习研究.....|ू・ω・`)。注:工程代码在文章末尾。二、准备工作:掌握C语言基础....这个最基础啦...接触过类似单片机,稍微看得懂芯片手册,会烧录啥的...画板子,焊接(这个项目里自己给画了一个板子,整体更整洁美观一点,其实也不是必要的,个人选择)..需要用到的一些硬件...三、硬件需要:(大概估计了一下成本在100左右)1.stm32f

【STM32】基于STM32F103C8T6驱动步进电机

步进电机介绍:步进电机是一种特殊的电机,它的转动角度是离散的,可以通过给定脉冲信号控制其转动角度。步进电机通常由两个或多个线圈组成,每个线圈都可以通过施加电流使其磁化,在磁化的情况下,线圈会与定子上的磁极产生磁吸引力,从而使转子转动。控制步进电机转动的基本原理是通过改变电流的方向和大小使线圈磁化状态发生变化,从而控制转子的转动。接线介绍:在STM32F103C8T6库函数驱动步进电机的实现中,使用GPIO控制步进电机的线圈,通过控制线圈的电流方向和大小来控制步进电机的转动。具体实现中,将步进电机的线圈分为ABCD四个线圈,分别对应GPIO的四个输出引脚。根据步进电机的转动方向决定线圈的磁化顺序

关于C或C++,数组的强制类型转换,uint8_t与char的区别,uint8_t*与char*的兼容性问题以及一些指针的常见问题

一、uint8_t与char的区别1.类型定义:uint8_t:这是一个无符号8位整数类型,定义在或头文件中。它是标准的固定宽度整数类型之一,确保在所有平台上占用8位(1字节)。char:这是C语言的基本字符存储类型,用于存储单个字符。在不同的系统和编译器中,char可以是有符号的或无符号的,默认情况下通常是有符号的。2.符号性:uint8_t:作为无符号类型,uint8_t的范围是0到255。它不表示任何负值。char:char可以是有符号的或无符号的,这取决于具体的实现(编译器和系统)。如果是有符号的,其范围通常是-128到127;如果是无符号的,其范围是0到255。3.用途:uint8_

基于STM32F103C8T6的温控散热器实践,软硬件开源!!!

前言大家好!今天我要给大家分享一款基于STM32F103C8T6的温控散热器。在炎热的夏天,我们经常会遇到电子设备因高温而过热的问题。为了解决这一问题,我设计了这款温控散热器,它能根据环境温度智能控制风扇的开关,确保设备的稳定运行。让我们一起来看看它的构成和工作原理吧!🔬一、实现功能1️⃣根据环境温度控制5V0.2A的直流电机。当环境温度高于35℃时,风扇开启;当环境温度低于或等于35℃时,风扇关闭。2️⃣电源管理:通过Type-C接口和MX1.25针座接口进行充电。使用XH2.54接口连接板子,为板子供电。二、工作原理温控散热器的工作原理很简单。首先,我们使用GX18B20温度传感器来感知环

自制STM32F103C8T6最小系统板

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、MCU二、电源1.供电MICROUSB2.ASM1117-3.3V三、CH340G四、按键及LED电路四、时钟电路五、下载电路1、JTAG下载电路2、SWD下载电路六、AT24C02EEPROM存储电路七、通用IO口引出八、封装修改前言记录自己绘制第一块STM32F103C8T6最小系统板,包括原理图的绘制,pcb图的绘制和布局,以及器材的选购。提示:有任何问题和交流可以加q:2874160799,我基本上不看评论和私信。一、MCU根据ST官方手册,查看引脚的功能,画出原理图,不同的人画出来的原理图当然是不一样的,

Java Uint32(存储长)至4个字节阵列

我正在写入具有UINT32的存储格式,最大值为“4294967295”。当然,Java中的整数在“2147483647”中不到一半。因此,在内部,我必须使用Long或Guava的UnsignEdinteger。要写入此格式,字节阵列长度必须为4,它适合整数恰好,但是将长度转换为字节阵列需要长度为8。如何将表示“4294967295”的最大值作为4个字节数组转换为“4294967295”?看答案只需将其转换为8个字节数组,然后仅采用最后4个字节:publicstaticbyte[]fromUnsignedInt(longvalue){byte[]bytes=newbyte[8];ByteBuff

一款集成ST-link下载及虚拟串口的STM32F103C8T6最小系统板设计

前言            在以前的STM32单片机应用中,经常使用STM32F103C8T6最小系统板(小蓝板)作为主控。程序下载和串口交互都需要额外器件和接线,程序下载的话要用到ST-link,串口交互用到USB-TTL,常见的样子就下面这样吧。   为了摆脱接线的麻烦和少占用我一个USB口,我决定将它俩集成到主控上。这里采用的方案是ST-linkV2.1,上图所示的是ST-linkV2,它没带串口功能。而V2.1的带有虚拟串口,但是固件大小比V2的大。一、设计3D展示             这里用要2块STM32F103的芯片,顶层的芯片是刷ST-linkV2.1固件作下载加串口功能,

【stm32CubeMX】STM32F103c8t6串口通信

【stm32CubeMX】STM32F103c8t6串口通信发送'hellowindows'一、串口通信协议1.UART协议2.RS-2323、RS-485二、USB转TTL三、配置CubeMX并建立工程四、串口通信实现五、keil仿真观察串口输出波形六、总结七、参考资料一、串口通信协议  串行通信协议包括系统间协议和内部系统协议。  系统间协议:用于通信两个不同设备的系统间协议。就像计算机与微控制器套件之间的通信一样。通过内部总线系统进行通信。常见的有UART协议、USART协议、USB协议。  内部系统协议:内部系统协议用于通信电路板上的两个设备。在使用这些系统内协议时,我们将不使用系统内

嵌入式硬件——stm32F103C8T6

STM32F103C8T6是一款基于ARMCortex-M3内核的32位微控制器如下图:  处理器核心:STM32F103C8T6内置了ARMCortex-M3处理器,这是一种高性能、低功耗的32位RISC处理器,适用于嵌入式系统。时钟速度:它可以工作在不同的时钟速度,最高主频可达72MHz。存储器:包括64KB的Flash程序存储器用于存储程序代码,以及20KB的SRAM用于存储数据和变量。外设:该芯片提供了丰富的外设接口,包括GPIO(通用输入/输出)、USART(串口通信)、SPI(串行外设接口)、I2C(I2C总线)、定时器、PWM控制器、ADC(模数转换器)等。通信接口:它支持多种通

STM32系列(HAL库)——F103C8T6获取DHT11温湿度串口打印

本文参考此篇博客并在其基础上进行了修改:STM32F103驱动DHT11温湿度传感器(STM32MXcube,HAL)在此特别鸣谢原文博主!1.软件准备(1)编程平台:Keil5(2)CubeMX(3)XCOM(串口调试助手)2.硬件准备(1)F1的板子,本例使用经典F103C8T6 (2)DHT11——温湿度传感器(3)ST-link 下载器(4)USB-TTL模块(5)杜邦线若干3.CubeMX配置(1)芯片选择STM32F103C8T6 (2)配置RCC、SYS、时钟树配置RCC配置SYS配置时钟树(3)配置GPIO (4)配置串口1(5)设置路径、生成代码工程4、Keil5代码 (1)