• 2024-06-23Flash均衡读写
    #defineFLASH_INITIAL_BYTE0xff #definePAGE_NUM_PER_CONFIG       2 #defineCONFIG_FLASH_PAGE_START     508#defineCONFIG_BUF_SIZEsizeof(CFG_CHARGE_ST)/2#define  CONFIG_FLASH_ADDRESS_START
  • 2024-06-22crc16 linux版本
    #include<stdio.h>#include<stdint.h>//CRC-16-CCITT标准的多项式#definePOLY0x1021uint16_tcrc16(uint16_tcrc,constunsignedchar*buffer,size_tlen){while(len--){crc^=(*buffer++<<8);for(inti=0;i<
  • 2024-06-22STM32硬件接口I2C应用(基于FT6336)
    目录概述1硬件介绍1.1 ST7796-LCD1.2MCUIO与LCDPIN对应关系1.3 MCUIO与Touch PIN对应关系2FT6336的寄存器2.1FT6336寄存器列表2.2寄存器功能介绍 3STM32Cube控制配置I2C3.1 软硬件版本信息3.2 I2C参数配置3.3 使用STM32Cube产生工程4HAL库函数
  • 2024-06-20TMS320F28377D学习日志:day2点亮LED
    文章目录一、28377开发板的led电路分析二、28377的GPIO相关寄存器介绍2.1前言2.2GPySET寄存器介绍2.3GPyCLEAR寄存器介绍三、程序介绍3.1引入库3.2配置GPIO引脚功能3.2.1GPIO_SetupPinMux函数3.2.1GPIO_SetupPinOptions函数3.3系统初始化3.4循环程序参考文
  • 2024-04-30stm32F07 HAL 库 通过定时器方式实现呼吸灯 自定义呼吸灯函数 (以参数方式设置io口,亮或灭的持续时间,亮或灭的频率,从最低亮度开始上升)
    效果: 1、通过Stm32CubMX开启定时器、设置对应的io口,然后生成工程STM32CubeMX|STM32HAL库方式的微秒延时函数  2、自定义呼吸灯函数代码://呼吸灯函数//GPIO_TypeDef*GPIOx:GPIO组(A-G)//uint16_tGPIO_Pin:IO口(GPIO_Pin_0--GPIO_Pin_16)//
  • 2024-04-26STM32之UASRT试验
    一、实验目的1.实现STM32F407开发板与上位机工具通讯,中断方式 具体实现的效果:上电后,下位机主动发送helloworld,上位机收到并显示;上位机发送数字0~9,回复:zero~nine2.通讯协议,后面补充3.硬件使用野火开发版STM32F4074.与开发板连接的接口是Usb转串口,根据原理图看出选择的
  • 2024-04-24关于引脚复用,不得不提的GPIO_PinSource 和GPIO_Pin
    调整前的代码GPIO_PinAFConfig(GPIOA,GPIO_Pin_9,GPIO_AF_4);GPIO_PinAFConfig(GPIOA,GPIO_Pin_10,GPIO_AF_4);调整后的代码GPIO_PinAFConfig(GPIOA,GPIO_PinSource9,GPIO_AF_4);GPIO_PinAFConfig(GPIOA,GPIO_PinSource10,GPIO_AF_4);  不难看出,该工程师调整的就是上面红色参
  • 2024-04-17123123
    #include<stdio.h>#include<stdint.h>#pragmapack(push,1)typedefstruct{   struct{      uint16_tmon:8;            //月      uint16_tyear:8;         //以2000年为基准   };   struct{      uint1
  • 2024-04-17123
    #include<stdio.h>#include<stdint.h>#pragmapack(push,2)typedefunion{uint16_tall;struct{uint16_ttime_set1:2;uint16_ttime_set2:2;uint16_ttime_set3:2;uint16_ttime_set4:2;
  • 2024-03-12stm32 TIM输出比较(OC) PWM
    stm32P6-4 05:00  ([6-4]PWM驱动LED呼吸灯&PWM驱动舵机&PWM驱动直流电机_哔哩哔哩_bilibili)1.stm32f10x.tim.h部分头文件讲解voidTIM_DeInit(TIM_TypeDef*TIMx);​​​​​​​voidTIM_TimeBaseInit(TIM_TypeDef*TIMx,TIM_TimeBaseInitTypeDef*TIM_TimeBaseInitStruct
  • 2024-01-22CRC - 校验汇总
    CRC-校验汇总软件: 1.计算法: #ifndef__CRCLIB_H__#define__CRCLIB_H__#include"stdint.h"uint8_tcrc4_itu(uint8_t*data,uint16_tlength);uint8_tcrc5_epc(uint8_t*data,uint16_tlength);uint8_tcrc5_itu(uint8_t*data,uint16_tlength);uin
  • 2024-01-04合约交易系统开发(开发案例)丨合约交易所系统开发(逻辑方案)/设计程序/成熟源码
    智能合约的生命周期根据其运行机制可概括为协商、开发、部署、运维、学习和自毁六个阶段,其中开发阶段包括合约上链前的合约测试,学习阶段包括智能合约的运行反馈与合约更新为智能合约的基础架构模型,模型自底向上由基础设施层、合约层、运维层、智能层、表现层和应用层组成,基
  • 2023-12-12Time slice based task routine in C
          基于时间片的轮询任务调度实例。#include<stdint.h>#include<stdio.h>#include<WinSock2.h>#defineMAX_TASK_NUM10#defineMAX_HALF_WORD0xffff#definefalse0#definetrue1staticuint16_tg_ti
  • 2023-11-27实用!Arduino平台最强大的“显卡”驱动:Adafruit GFX 图形库8000字详细使用指南
    实用!Arduino平台最强大的“显卡”驱动:AdafruitGFX图形库8000字详细使用指南光锥之外​昆明尚禾农业科技有限公司副总经理​关注他  概述Arduino的Adafruit_GFX库为我们所有的LCD和OLED显示屏提供了通用语法和图形功能集。这使得Arduino示例程序可
  • 2023-11-20CH573 CH582 CH592 CH579常用库函数记录
    一:系统篇:软件复位SYS_ResetExecute();延时函数mDelaymS(1);//延时1msmDelayuS(1);//延时1us设置晶体匹配电容 voidHSECFG_Capacitance(HSECapTypeDefc);//外部高频32MHZvoidLSECFG_Capacitance(LSECapTypeDefc);//外部低频32.768KHZ 开启DCD
  • 2023-11-17CH32V20x_30x系列用户选择字区域应用与操作
    来源:https://www.cnblogs.com/liaigu/p/17838776.html简介CH32V20x系列、V30x系列用户选择字区域大小为128字节,除却用户选择字信息结构用到的16字节,还剩余112字节可作为他用,用来存储相关数据等。注意剩余空间在使用时,和上述一致,若[7:0]为数据,则[15:8]为数据的反码。此外,在对剩
  • 2023-10-20ardunio-stm32采集风速传感器
                波特率都是4800设备地址默认01广播FF #definemySerialSerial2byteMsg_getdata[8]={0x01,0x03,0x00,0x00,0x00,0x02,0xC4,0x0B};charRecData[9]={0};//==============校验==============uint16_tmodbus_crc16(char
  • 2023-10-20STM32 EEPROM_Emulation 保存数据使用注意事项
    1目的:stm32官方提供flash模拟eeprom的代码例子,为了能给产品添加数据保存功能,可以改造该例子迅速完成数据保存的功能。示例代码路径:C:\Users\rd-yhzhang\STM32Cube\Repository\STM32Cube_FW_F1_V1.8.5\Projects\STM32F103RB-Nucleo\Applications\EEPROM\EEPROM_Emulation。2
  • 2023-10-02自定义数据类型和数据类型别名
    自定义数据类型和数据类型别名代码//example.gopackagetestimport"fmt"funcTestFunction(){ fmt.Println("自定义类型") //自定义类型mesType,它是uint16的别名 //注意:虽然mesType是uint16的别名,但是二者仍是不同类型,不能够 //相互赋值和比较,需要进行类型转换 //
  • 2023-10-0107. 通用GPIO
    一、什么是GPIO  GPIO是控制或者采集外部器件的信息的外设,即负责输入输出。它按组分配,每组16个IO口,组数视芯片而定。STM32F103ZET6芯片是144脚的芯片,具有GPIOA、GPIOB、GPIOC、GPIOD、GPIOE、GPIOF和GPIOG七组GPIO口,共有112个IO口可供我们编程使用。  STM
  • 2023-09-30STM32 控制一盏灯的亮灭
    #include"stm32f10x.h"//Deviceheaderintmain(void){ RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE); GPIO_InitTypeDefGPIO_InitStructure; GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;//typedefenum//{GPIO_Mode_AIN=0x0,
  • 2023-09-30操作STM32的GPIO的步骤
    1.使用RCC开启GPIO的时钟2.使用GPIO_Init函数初始化GPIO3.使用输入/输出控制GPIO口RCC在library组中的 stm32f10x_rcc.h中找:(第一个参数是选择哪个外设,第二个参数是EABLE或者DISABLE)voidRCC_AHBPeriphClockCmd(uint32_tRCC_AHBPeriph,FunctionalStateNewStat
  • 2023-09-22STM32之LCD显示
    LCD学习资料:【正点原子】手把手教你学STM32HAL库开发全集LCD基础知识LCD(LiquidCrystalDisplay),即液晶显示器,由:玻璃基板、背光、驱动IC等组成全彩LCD,是一种全彩显示屏(RGB565、RGB888),可以显示各种颜色LCD接口分类:接口分辨率特性MCU≤800*480自带SRAM,无需
  • 2023-09-20CH573 CH582 CH579外设RTC使用讲解
    一.RTC可以选择使用外部32768HZ晶振或芯片内部32768HZ(区别是精度不同)外部:20ppm以内外部:0.04%-0.1%(400ppm-1000ppm)。LClk32K_Select(Clk32K_LSI);//启用内部32K精度0.04%-0.1%(400ppm-1000ppmLClk32K_Select(Clk32K_LSE);//启用外部32K精
  • 2023-09-17Socket编程:htons()、htonl()、ntohs()、ntohl()
    前言在计算机网络学到Socket编程的时候,自己在Linux下用C语言试验了一番,发现了这四个古怪的函数:htons()、htonl()、ntohs()、ntohl()。查阅资料得知,这是涉及到网络字节序与主机字节序的转换。字节序,顾名思义字节的顺序,就是大于一个字节类型的数据在内存中的存放顺序。主机字节