自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 GD32F407调试SD卡FATFS文件系统

***GD32F407调试SD卡文件系统 ***准备文件添加链接描述GD官网下载开发板Demo包《GD32F4xx_Demo_Suites_V2.2.0》和《GD32F4xx_Firmware_Library_VX.X.X》。解压《GD32F4xx_Demo_Suites_V2.2.0》找到文件里的文件fat_fs和SDIO_SDCardTest工程。这些是我们所需的文件系统和SDIO的初始化程序。移植辅助SDIO的接口文件到工程文件下工程下建立Fatfs文件夹并添加fat_fs的文件到工

2021-08-12 17:30:30 5772 9

原创 模拟IIC通信

模拟的IIC通信

2024-01-17 14:48:58 382

原创 emWin 8Bit/16Bit切换

emWin LCD配置8bit/16Bit

2022-08-22 14:41:53 281 1

原创 GD32F407随笔记

GD32F407调试记录前言启动地址1.GPIO2.sysTick3.RTC4.TIM6.USART_UART7.SPI8.EXMC (FMC)LCD屏9.USB10.ADC DMA接收前言以前一直使用的STM32系列的单片机,然后最近涨价得厉害,为了产品的可持续性,得寻找可替代的芯片方案,刚好国产GD系列的单片机还不错,就先测试一下。这里使用的是GD32F407VET6。以下的调试其实很多都能在官方的例程里找到,话不多说,上程序。启动地址nvic_vector_table_set(NVIC_VEC

2021-01-21 16:42:14 9351 5

原创 STM32 HAL库IAP编写注意

**STM32 HAL库IAP编写注意**禁用中断 __set_PRIMASK(1); __disable_irq(); 在APP程序用需要启用 __enable_irq(); __set_PRIMASK(0);IAP中用到的在启动APP前需要释放掉,例如: HAL_TIM_Base_MspDeInit(&htim2); HAL_TIM_Base_MspDeInit(&htim3); HAL_UART_MspDeInit(&huart2);

2020-08-27 17:23:56 1985 1

原创 STM32 LL库踩坑系列四(SPI和UART随记)

STM32 LL库踩坑系列四(SPI和UART随记)这个作者很懒,想到什么就写什么!写在前面:这个是记录学习LL库的踩坑系列,这个资料很少,想要找例程可以在电脑用户文件下的STM32Cube\Repository里,前提是下载好那个单片机的pack,部分没有例程的可以借鉴同系列的文件。生成的代码还需要添加SPI添加LL_SPI_Enable();加一个SPI读写共用函数uint8_t SPI1_ReadWriteByte(uint8_t TxData){ uint8_t retry

2020-07-04 16:09:54 9062

原创 STM32 LL库踩坑系列三(ADC测电压或外部温度传感器)

STM32 LL库踩坑系列三(ADC测电压或外部温度传感器)这个作者很懒,想到什么就写什么!写在前面:这个是记录学习LL库的踩坑系列,这个资料很少,想要找例程可以在电脑用户文件下的STM32Cube\Repository里,前提是下载好那个单片机的pack,部分没有例程的可以借鉴同系列的文件。本次使用DMA读取2个GPIO口的脚的ADC采集值。使用cubemx配置如下采样的时钟频率一般情况下不宜太小或者太大,对应实际硬件。生成LL库代码后添加DMA添加代码主要有读取后保存的地址和启动DMA

2020-07-04 15:49:33 5826 1

原创 STM32 LL库踩坑系列二(TIM编码器)

STM32 LL库踩坑系列二(TIM编码器)这个作者很懒,想到什么就写什么!写在前面:这个是记录学习LL库的踩坑系列,这个资料很少,想要找例程可以在电脑用户文件下的STM32Cube\Repository里,前提是下载好那个单片机的pack,部分没有例程的可以借鉴同系列的文件。打开cubemx,配置TIM为编码器模式。注意编码器模式需要对应好硬件,这算上一个小坑。/* TIM4 init function */void MX_TIM4_Init(void){ LL_TIM_InitTyp

2020-07-04 15:30:16 3478

原创 STM32 LL库踩坑系列一(RTC)

这个作者很懒,想到什么就写什么!写在前面这个是记录学习LL库的踩坑系列,这个资料很少,想要找例程可以在电脑用户文件下的STM32Cube\Repository里,前提是下载好那个单片机的pack。部分单片机没有的可以先借鉴同类型的。STM32 LL库踩坑系列一(RTC)本次踩坑RTC实时时钟作为Calender使用。打开cubemx,配置好时钟模块,选择外部LSE。然后选择生成LL库,编译,添加代码,一个是设置,一个读取。/* Define used to indicate da

2020-07-04 14:06:18 4809

原创 stemWin 自定义字库制作

stemWin 自定义字库制作以前写了个外部挂flash的字库,现在加一个不用外部,自己加的把需要的字库全部放进一个txt文件里,保存成uincode格式打开FontCvtST.exe软件设置字体及大小edit >> disable all charactersedit >> Read pattern file 选择前面做好的txtsa...

2019-10-23 17:25:46 665

原创 简单的记录一下使用HAL库的SPI外挂W25Q32

简单的记录一下使用HAL库的SPI外挂W25Q32抽筋了,想记录一下。cubeMX配置SPICS脚spi.h 里添加 #define FLASH_ID 0XEF14 //指令表 #define W25X_WriteEnable 0x06 #define W25X_WriteDisable 0x04 #define W25X_ReadStatusReg 0...

2019-09-11 15:19:08 2387

原创 STM32F3HAL USB HID设备免驱动

STM32F3HAL USBUSB现在变得越来越重要了,最近在修改的过程中发现了很多坑,而且这个方面的很多资料在网络上都没有讲得很清楚,这里使用hal库操作一下。1.STM32F1和F3系列带USB的IO口内部没有上拉或下拉电阻。这个就使得必须自己在外部加 1.5K上拉电阻,还得使用一个IO口来控制这个上拉状态。所以在使用CubeMX生成代码后,需要在增加初试化控制脚的代码和拉高拉低状态。硬...

2019-09-09 11:28:15 2506

原创 STM32 emWin使用SPI外挂Flash显示xbf字库

emWin使用SPI外挂Flash显示xbf字库最近在学习emWin,在走到显示汉字时,发现想要使用字库要么使用UCODS字库,和LCD屏自带函数原来类似的显示方式自己重建字库类型。但是UCODS字库我目前真是没有找到可以自己做的,连字库也要去下载,很不方便。使用官方推荐的软件生成xbf文件,可以自己建字库了,但是能找到的教程基本是SD卡的,真是。。。心累。时常SPI外挂flash使用习惯了,想...

2019-09-03 18:57:48 4011 17

原创 HAL库添加STemWin移植

HAL库添加STemWin移植先放一个链接,这个使用HAL库点的屏,现在添加STemWinHAL点屏网上这个的教程很多,我这个也是参考其他大佬的,但是,我发现大家都写得不是很详细,所以就在这里再写一下。首先是准备工作,先去官网下载这个包,然后把对应的东西放进程序里修改GUIConf.c文件这个大小可以根据自己的情况定义,使用的大就多分配点 #define GUI_NUMBY...

2019-08-30 18:12:42 1461 3

原创 CubeMX使用FMC配置并行8口LCD屏

以前调试了一块LCD屏,现在用CubeMX生成的代码点一下,在网上看了好多相关的资料,感觉都不是写的很清楚,所以就在这里记录一下调试的过程。使用的LCD屏是并行8口打开CubeMX,单片机使用的是STM32F302VETx基本的时钟配置完毕后,选择FMC,里面有一个LCD Interface选项,注意,这里有很多种选择模式。这个就需要看一下单片机和实际的连接脚。选择不同的Reg...

2019-08-30 10:13:56 2464 3

原创 CubeMX学习记录

cubeMX学习记录这个HAL库使用好像是以后的趋势,先学一下,哈哈可以直接在官网下载对应的安装软件(还需要安装Oracle官方的JRE)及HAL库文件(也可以安装完软件后直接在软件里下载安装)(1) JREhttp://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html(2) S...

2019-08-20 15:30:00 248

原创 uCOSII学习使用记录

uCOSII学习使用记录最近学习和使用uCOSII, 在这里做一下笔记串口中断中断处理前添加OS_ENTER_CRITICAL();OSIntNesting++;OS_EXIT_CRITICAL();退出中断后OSIntExit();有人移植了2.86或者2.88版本后,发现跑的时间长了,会出现某些任务跑步了了,是需要设置将中断改为0就可以了,似乎嵌套多了也会出现这样...

2019-08-19 15:53:13 246

原创 使用STM32的Timer编码器模式调试旋钮

最近任务中使用到了旋钮,前面文章做了一个I/O口,今天记录一下使用STM32 timer编码器模式的方法旋钮的左右2脚接到带有timer的脚上,配置为编码器模式void timer_Initial(void){GPIO_InitTypeDef GPIO_InitStructure;TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;TIM_...

2019-07-11 18:55:21 2302

原创 一个简单的串口接收(带协议)

一个简单的串口接收(带协议)数据头信息(5个)数据长度信息(1个)数据(<1024个)数据校验(1个)数据尾一.串口数据接收buftypedef struct _UartCommadType{ uint8_t Buffer[1024]; uint16_t Index; // buffer index uint16_t u8Len;}UartComm...

2019-07-05 17:57:45 2557

原创 一款HDMI一分二的配置

一款HDMI一分二的配置一. 根据芯片寄存器手册制作#define HDXADDR (0XA0) #define REG_CONFIG (0X00) // default 0XFF#define BIT_CONFIG_TMDS_MODE (BIT7) ...

2019-07-05 17:01:24 4134

原创 STM32 编码器实现的2种方式比较

这个旋钮程序是用简单的I/O口持续读取状态检测的,通过读取的值比较,得出是左旋或者右旋,然后通过定时器记录同一方向旋钮的时间确定是转的快或慢。int dial_scan_buffer[80];int dial_old_data = 0;int dial_new_data = 0;int dial_scan_buffer_pointer = 0;int dial_scan_buffer_p...

2019-07-04 18:38:55 2670

原创 C语言《检测按键》

记录一下按键检测的快速算法typedef struct{uint16_t u16Value;//key valueuint16_t u16Trg;//triger uint16_t u16Cont;//continuebool boolPressed;uint16_t u16Release;//releasebool boolReleased; }KEY_INFO;u1...

2019-07-04 09:09:35 3881

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除