• 2024-10-18STM32 ADC实例解析(1)-寄存器方式
    文章目录一、寄存器列表二、示例代码三、总结优点:缺点:在很长的一段时间里我在项目中都是使用寄存器方式一、寄存器列表__IOuint32_tSR;/!<ADC状态寄存器,地址偏移量:0x00/__IOuint32_tCR1;/!<ADC控制寄存器1,地址偏移量:0x04/__IOuint32_tCR2;/!<ADC控制寄存
  • 2024-10-17ton tact合约中的map采用go的调用方式
    tact中的map结构:structRoundInfo{//Purchaserecordsquotient:map<Intasuint32,BuyInfo>;//keyissequencenumber//Orderanti-duplicationrecords,keyisordernumber,valueissequencenumberorders:map<Intasuint32,Intasuint16
  • 2024-10-17单片机项目|基于STM32实现具有室内定位功能的智能手环的设计
    作者简介:Java领域优质创作者、CSDN博客专家、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、多年校企合作经验,被多个学校常年聘为校外企业导师,指导学生毕业设计并参与学生毕业答辩指导,有较为丰富的相关经验。期待与各位高校教师、企业
  • 2024-10-10ESP32移植Openharmony设备开发---(3)任务调度
    任务调度官方文档:OpenAtomOpenHarmony基本概念从系统角度看,任务是竞争系统资源的最小运行单元。任务可以使用或等待CPU、使用内存空间等系统资源,各任务的运行相互独立。OpenHarmonyLiteOS-M的任务模块可以给用户提供多个任务,实现任务间的切换,帮助用户管理业务程序流程。
  • 2024-10-09通过GRUB Multiboot2引导自制操作系统3h
    通过GRUBMultiboot2引导自制操作系统前言之前花了一周时间,从头学习了传统BIOS的启动流程。惊讶于背后丰富的技术细节的同时,也感叹x86架构那厚重的历史包袱。毕竟,谁能想到,一个现代CPU竟然需要通过操作“键盘控制器寄存器”来启用一条地址线呢。最终,出于兼容性和功能性的
  • 2024-10-09串口的“窗口”应用(如何通过串口打印其他寄存器内的数据)
    一、串口应用概述本文重点叙述使用串口打印其他寄存器内的数据,并且使用STM32的HAL库进行代码编写。对于串口这个外设,我们一开始接触的就是(串口与上位机通信)用串口返回我们发送的数据。这个实验,可以让我们对串口有一个较为直观的感受。在这个实验中,串口打印的数据来自串口自
  • 2024-10-08CH57X/CH58X/CH59X 加PA应用
    一、前言在有些时候产品需要做到更远的距离在原来的基础上加上PA放大芯片来实现广播或者连接距离上的提升。PA是PowerAmplifier的简称,中文名称为功率放大器,简称“功放”,指在给定失真率条件下,能产生最大功率输出以驱动某一负载的放大器。对于射频通信系统,PA负责发射通道
  • 2024-09-28STM32F407+IAP+Ymodem协议
    首先硬件, BOOT的接线方式是选择方式1,当stm32软件复位可以0x08000000重新启动程序重新加载bootloader程序移植官方的ymodem协议common.c1/**2******************************************************************************3*@fileSTM32F4xx_IAP/s
  • 2024-09-22stm32 FLASH闪存(读写内部FLASH&读取芯片ID)
    理论1.FLASH简介STM32F1系列的FLASH包含程序存储器、系统存储器和选项字节三个部分,通过闪存存储器接口(外设)(FLASH管理员)可以对程序存储器和选项字节进行擦除和编程读写FLASH的用途:   利用程序存储器的剩余空间来保存掉电不丢失的用户数据    通过在程序中编
  • 2024-09-17CRC 计算 C 语言例子
    #include<stdio.h>#include<stdint.h>#include<stdlib.h>voiduint32_2_bin(char*buf,uint32_tval){uint32_tb=0x80000000;while(b>0){if(val&b)*buf='1';else*buf='0';
  • 2024-09-14stm32驱动HX711称重传感器 c++代码分享
    一、HX711模块介绍HX711模块是一种专门用于称重传感器的放大器模块。它的主要功能是将测得的微小电压信号放大到可以被微控制器读取的范围。HX711模块通常配合称重传感器一起使用,例如压力传感器、负载细胞等。它采用24位的模数转换器(ADC)来精确测量传感器的电压变化。HX711模块具
  • 2024-09-14ADC_DMA_双buffer传输
    ADC_DMA_双buffer传输线程A切换buffer地址开启ADC转换,并使用DMA传输等待获取DMA中断的信号量,获取到信号量,表示上一次DMA传输已完成将地址通过消息队列传输给线程Buint32_t*adc_value=NULL;/*USERCODEENDHeader_adc_dma_task_function*/voidadc_dma_task_func
  • 2024-09-10Divide and Conquer:ZK除法中隐藏的漏洞
    ZK的崛起与演变曾几何时,零知识证明(以下简称ZK)仍然被认为是密码学教科书中的理论概念,至少在传统安全研究中很少被主流社群深入探索。然而在Web3.0领域,区块链技术的迅速发展,用短短几年时间实现了ZK从理论到实践的跨越式进展,一路蓬勃,高歌猛进。1985年诞生,2014年ZCash才用SNAR
  • 2024-09-10STM32F7外设FMC控制LCD显示屏
    STM32F7外设FMC控制LCD显示屏,显示屏的点阵LCD控制器(DotMatrixLCDController/Driver)是ST7066U。配置在CubeMX中选择图1根据实际情况选择,Bank几,LCD片选引脚。图2FMC原理对于FMC如何控制LCD,我的理解:FMC能自动发送数据读写RAM,通过FMC读写LCD的显存就可以完成显示的
  • 2024-09-03PA1-总结
    前言代码全是自己写的,没看过参考代码,思路也有部分和指导书不一样,算是个原创?然后毕竟pa1是简单的部分,也没有什么值得骄傲的地方,只是作为一次记录。毕竟自己的水平还是有限,可能部分地方会有些bug。自己成绩也不太好吧,程序设计不会,计算机系统基础说实话是0,只有在acm训练的经历,然后
  • 2024-09-03对OpenHarmony中LiteOS的内核分析——超时原理和应用
    前言在软件世界里面,超时是一个非常重要的概念。比如●当前线程暂时休眠1秒钟,休眠结束后继续执行●每5秒钟采集一下CPU利用率●数据发送失败,2秒钟以后再试一试●等待某种数据,但最多等待50毫秒应用//将当前任务休眠若干tick数,tick为时间单位,常见值为10毫秒LITE_OS_SEC_TEXTUINT3
  • 2024-09-03文件夹图标工具类 - C#小函数类推荐
          此文记录的是修改文件夹图片的工具类。/***文件夹图标工具类AustinLiu刘恒辉ProjectManagerandSoftwareDesignerE-Mail:[email protected]:http://lzhdim.cnblogs.comDate:2024-01-1515:18:00使用方法:
  • 2024-08-25题解:P7952 [✗✓OI R1] 天动万象
    提供一种和第一篇题解不同的理解思路。题目分析看到操作\(1\):拿dfs序水水就行了。看到操作\(2\):???特殊情况我们考虑一下特殊情况下操作\(2\)怎么处理。假如这棵树是一条链。设从根到叶节点权值如下:(随便赋的)节点编号123456权值123456如果我们
  • 2024-08-25题解:SP1182 SORTBIT - Sorted bit squence
    题意将区间\([m,n]\)的所有整数按照其二进制位表示的数中\(1\)的数量从小到大排序。如果\(1\)的数量相同,则按照数的大小排序。求序列中第\(k\)个数。其中,负数使用补码来表示:一个负数的二进制数与其相反数的二进制数之和恰好等于\(2^{32}\)。分析考虑用uint32_t存
  • 2024-08-24gameobject_template | gameobject_template_addon
    目录gameobject_templateentrytypedisplayIdIconNameContentTuningIdAINamegameobject_template_addon factionflagsgameobject_templateentry gameobject模板的IDtype gameobject模板类型,取值参考源码GameObjectData.h的structGameObjectTemplat
  • 2024-08-24TEA算法相关
    TEA算法相关TEATEA,TinyEncryptionAlgorithm,微型加密算法#include<stdint.h>voidencrypt(uint32_tv[2],constuint32_tk[4]){uint32_tv0=v[0],v1=v[1],sum=0,i;/*setup*/uint32_tdelta=0x9E3779B9;/*akeys
  • 2024-08-07将iap的接收升级数据部分移植到freertos系统中
    目录前言二、移植过程1.在任务中添加代码三、遇到的问题1.boot跳转卡死在TIM6的中断使能2.代码进入app后却卡死在boot的.s文件的B.处总结前言        在完成基于TCP服务器的iap裸机程序后得到一个新的任务,该任务让我把iap中通过TCP接收数据的代码移植
  • 2024-08-06ARM Cortex-M3中断简介
    目录中断优先级分组三个系统中断优先级配置寄存器SHPR1SHPR2SHPR3三个中断屏蔽寄存器PRIMASKFAULTMASKBASEPRI中断优先级分组ARMCortex-M内核的MCU具有一个用于中断管理的嵌套向量中断控制器(NVIC,全称:Nestedvectoredinterruptcontroller)。ARMCortex-M的NVIC最大可支持
  • 2024-08-04代码优化:使用C语言重构单片机汇编启动代码
    目录前言实现思路单片机启动流程汇编语言分析开发环境代码分析总结前言在近期的工作需求中,我需要对实时操作系统(RTOS)的底层代码进行一些必要的调整。为此,我重新深入研究了ARM架构的相关知识点。在这一过程中,我回顾了之前一直让我感到困惑的一个技术问题:在几乎所有的
  • 2024-08-01STM32G030F6P6TR_IAP
       bootloader程序 STM32FLASH读写1/**2******************************************************************************3*@filestmflash.c4*@brief读写STM32内部flash(STM32G030F6P6TR)5**************************************