草庐IT

STM32初学-外部RTC时钟芯片DS3231

        RTC(Real_TimeClock)即实时时钟,它是电子产品中不可或缺的东西。其最直接的作用就是时钟功能。细心的朋友可以发现,当我们的电脑或者手机没联网时,仍然可以正常显示日期与时钟,这就是RTC的功劳。        RTC的运行无需网络连接,只需一个频率固定的振荡源和一个计数器,就能实现精准的计时。假如有一个振荡源,其每秒固定振荡1000次,那我们就可以用计数器对振荡进行计数,每振荡1000次,代表时间过去了1s,然后复位计数器并开始新的计数,同时,秒寄存器加1。如此循环,就能实现时钟的走时。    在单片机的某些使用场景下,RTC时钟是不可或缺的,例如使用了文件系统,就

windows - Win32 CreateProcess : When is CREATE_UNICODE_ENVIRONMENT *really* needed?

CreateProcess文档说明(我大胆强调):lpEnvironment[in,optional][...]IftheenvironmentblockpointedtobylpEnvironmentcontainsUnicodecharacters,besurethatdwCreationFlagsincludesCREATE_UNICODE_ENVIRONMENT.IfthisparameterisNULLandtheenvironmentblockoftheparentprocesscontainsUnicodecharacters,youmustalsoensurethatd

基于STM32设计的智能水产养殖系统(华为云IOT)

一、设计简述基于STM32设计的智能水产养殖监测系统1.1项目背景随着经济的发展和人口的增长,对水产养殖的需求不断增加。然而,传统的水产养殖方式存在一系列问题,如水质污染、鱼病爆发等。因此,智能化水产养殖技术成为当前热门研究领域。其中,基于物联网技术的智能水产养殖监测系统可以实时监测水质参数,自动调节水温,定时投喂等,大大提高养殖效率和水产品质。当前设计的智能水产养殖系统主控芯片采用STM32F103RCT6,可以实现对水位、水温、水混浊度和PH值等参数的监测和控制,并且支持定时投喂功能。通过连接华为云物联网平台,将传感器数据上传到服务器,并通过Qt设计的Android手机APP来获取设备上传

基于STM32G431嵌入式学习笔记——一、LED模块入门

一、使用CubeMX创建工程1.新建环境2.找到我们想要的芯片我们选择的芯片型号为STM32G431RBT6,可以从产品手册中查询(比赛可以使用)3.配置时钟比赛时对配置内部还是外部时钟没有强制要求,因此建议使用配置内置时钟:4.引脚配置我们想要知道需要使用哪些引脚,则需要查询电路图或产品手册。LED指示灯的电路图在产品手册的7.4:用到了PD2、PC8-15,且均为输出值存在的引脚,因此配置时均选择GPIO_Output,如下图所示最后配置状况如下图所示:单击左侧的GPIO,按照下图提示打开窗口在这里需要学习关于LED灯的先验知识图中的VDD是电源正极(高电平),如果想要LED初始状态为灯灭

基于CubeMX(hal库)stm32中hrtim高分辨率定时器的基本使用(自存)

基于CubeMX(hal库)stm32中hrtim高分辨率定时器的基本使用(自存)一、CubeMX配置1、选通道单通道输出or双通道输出2、TimerA~F配置(MasterTimer不用管)比较值Compare个人感觉跟CCR差不多的意思,注意不要大于上面的Period就行设置上升沿和下降沿时间:若想让上设Compare=CCR如图设置即可即在计数到Compare1时拉低,计数溢出时拉高所以上图输出频率10kHz占空比25%的互补PWM波Set/ResetSourceeSelection设置有几个源可以决定拉低拉高时间,有多个源还可设置优先级下面的Output2Configuration我设

.net - 在 64 位操作系统上以 32 位运行 AnyCPU 应用程序

有没有办法在64位Windows环境中运行时将在AnyCPU下编译的.NET应用程序作为32位应用程序执行,而无需重新编译为x86? 最佳答案 您可以使用corflags使用/32bit+选项。 关于.net-在64位操作系统上以32位运行AnyCPU应用程序,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/1075363/

将 Win16 C 代码转换为 Win32

一般来说,将16位Windows程序转换为Win32需要做些什么?我敢肯定,我不是唯一一个继承代码库并惊讶地发现隐藏在角落的16位代码的人。有问题的代码是C。 最佳答案 wParam和lParam的含义在很多地方都发生了变化。我强烈鼓励您保持偏执并尽可能多地转换为使用messagecrackers。它们将为您省去无穷无尽的麻烦。如果我只能给你一个建议,那就是这个。只要您使用的是消息破解器,还要启用STRICT。它将帮助您在本应使用HWND、HANDLE或其他内容的地方使用int捕获Win16代码库。转换这些将极大地帮助此列表中的第9

stm32单片机的智能交通灯设计

一.硬件方案       stm32单片机的智能交通灯主要由stm32单片机核心板+74HC245芯片+数码管+LED指示灯+按键等构成。硬件框图如下:二.设计功能(1)本设计能模拟基本的交通控制系统,用红绿黄灯表示禁行,通行和等待的信号发生,还能进行倒计时显示。(2)按键可以控制禁行、深夜模式、复位、东西通行、南北通行、时间加、时间减、切换等功能。(3)共四个二位阴极数码管,东南西北各一个显示时间,四个数码管的阴极都接到STM32F103C8T6的P1口,阳极接到74HC245芯片上,通过P0口控制74HC245芯片,起到驱动放大作用。(4)共12个发光二极管,四个路口每个路口各有一个红(禁

(STM32基础)STM32常用中断介绍

一、中断系统主程序运行过程中,出现中断请求,编译器会保护主程序断点现场,跳出优先处理中断,中断程序运行完成后,跳回主程序继续运行断点后的主程序。注意分清:中断、中断优先级、中断嵌套三个概念。1)STM32的中断介绍1、中断通道就是中断源,STM32具体到某个型号不一定有68个中断这么全,基本上所有外设均可触发中断。一个外设可以有多个中断源,每个中断通道都有16个可编程的优先等级。2、中断使用NVIC(嵌套中断向量控制器)统一管理(可以把它比作是医院里面的叫号系统,CPU是医生)。管理中断、分配优先级都由它来控制。NVIC是一个内核外设,服务与CPU。图中n的意思是一个外设可能会占用多个中断通道

windows - 检查 Win32 线程是否正在运行或处于挂起状态

如何检查Win32线程是正在运行还是处于挂起状态?我找不到任何提供线程状态的Win32API。那么如何获取线程状态呢? 最佳答案 我认为-最初-未提供此信息是因为提供此信息的任何API都具有误导性和无用性。考虑两种可能的情况——当前线程暂停了感兴趣的线程。当前线程中的代码知道挂起状态并且应该能够共享它,因此内核团队无需添加API。第二种情况,系统中的某个其他/第三个线程已挂起感兴趣的线程(并且无法跟踪是哪个线程)。现在你有一个竞争条件-其他线程可以在任何时候-取消挂起感兴趣的线程,并且从API收集的信息是无用的-你有一个值表明线程已