- 博客(21)
- 资源 (1)
- 收藏
- 关注
原创 HC32 SPI 配合GPIO 发送命令和参数 GPIO电平异常分析
HC32F460 SPI 配合GPIO 发送命令和参数异常HC32F460的SPI接口支持全双工串行同步传输引脚如下:错误场景SPI配合一个GPIO的电平使从机来区分发送的是指令还是参数。当开始发送8位指令之前,将GPIO拉低当开始发送8位数据之前,将GPIO拉高异常:GPIO状态异常,第一次开始将GPIO拉低,开始SPI传输后,GPIO电平变高后又变低,后边连续发送指令后,GPIO状态异常,操作GPIO的值失效。当前SPI速率不超过2Mbps,实测单独反转GPIO正常,操作寄存器速率可达
2021-11-16 22:00:55
1468
原创 HC32F460 I2S通信数据全为0
HC32F460 I2S数据通信记录一下华大HC32F460使用的时候出现的一些问题。I2S 集成电路内置音频总线 ,主要用于音频设备之间的数据传输。对于HC32F460的I2S管脚如图所示,出现错误的场景是,当I2S工作在半双工模式时,I2S所连接的从机的串行数据脚是开漏输出,所以需要I2S_SD脚内部上拉。但问题就出现在这里,当将I2S_SD脚配置为上拉输入时,初始化I2S接口,开始接收从机发来的音频数据,发现采集到的音频数据均为0,经过排查后发现,HC32F460的I2S_SD脚连接的上拉电
2021-11-16 21:53:33
1215
2
原创 STM32 RT-Thread Studio新建工程(F1)001
STM32 RT-Thread Studio新建工程最近项目中需要使用到RT-Thread操作系统,RT-Thread官方提供了RT-Thread Env 工具来配置和管理工程,包括配置器和包管理器,用来对内核和组件的功能进行配置,对组件进行自由裁剪,对线上软件包进行管理,使得系统以搭积木的方式进行构建,简单方便。同时RT-Thread还提供了一站式的 RT-Thread 开发工具,通过简单易用的图形化配置系统以及丰富的软件包和组件资源。笔者在配置项目的过程中,发现网上的教程与现在的版本配置方式有出入,
2021-07-03 17:28:32
679
原创 stm32 串口打印函数
STM32 串口打印函数#include <stdarg.h>#include "main.h"#include "string.h"#include "usart.h"#include "usart_printf.h"#define TXBUF_SIZE_MAX 100 //串口输出void usart_printf(UART_HandleTypeDef *huart,const char *format, ...){ va_list ar
2021-03-08 10:14:02
1427
原创 0.96OLED界面菜单的绘制
0.96OLED界面菜单的绘制最近空闲时间较多,整理下之前做过的项目。2019/12void KEY(void){ if((HAL_GPIO_ReadPin(KEY_SELECT_GPIO_Port,KEY_SELECT_Pin))||(HAL_GPIO_ReadPin(KEY_RETURN_GPIO_Port,KEY_RETURN_Pin))||(HAL_GPIO_ReadPin(KEY_ENTER_GPIO_Port,KEY_ENTER_Pin))) { HAL_Delay
2021-03-08 10:10:17
3076
1
原创 A*算法解决八数码问题
八数码问题题目描述八数码问题也称为九宫格问题。在3*3的棋盘摆着八个棋子,每个棋子上标有1至8的某一数字,不同棋子上标的数字不相同。棋盘上还有一个空格(以数字0来表示),与空格相邻的棋子可以移动到空格中。 要求解决的问题是:给出一个初始状态和一个目标状态,找出一种从初始转变成目标状态的移动棋子步数最少的移动步骤。**A*算法**A算法,又称启发式搜索。与广度优先搜索不同的是,加入了启发函数,来从扩展结点中选择代价最小的进行扩展。而不是盲目的搜索。A算法主要逻辑*初始化open_set和cl
2021-03-08 09:36:36
1638
原创 华硕美版路由器RT-AC1200G+解决无线信号弱问题
华硕美版路由器RT-AC1200G+解决无线信号弱问题需要准备:RT_AC1200G+*1XSHELL6首先进入路由器管理界面,打开SSH下载安装XSHELL6,并打开主机填写路由器管理地址,协议选择SSH协议,点击连接,在接下来弹出的登陆框中输入密码和用户名。依次输入以下命令nvram set location_code=US //支持的地区有,NA,EU,CN,TW,RU,BZ,IN,KO,JP,AU,CA,USnvram set wl0_country_code
2021-02-24 19:30:09
6052
原创 0.96 oled HAL库驱动 SPI STM32
这个是淘宝上的0.96寸,7针的OLED驱动,淘宝给的例程是标准库的,这个是我移植后的版本,修改了一部分函数。添加了一些没有的函数。使用的时候直接建立对应的文件,把代码拷进去就好了。感觉注释写的挺全的,就不多介绍了。大家自行看注释吧。首先是oled.c文件:/********************************************************/...
2019-12-05 13:43:15
7329
17
原创 STM32使用ESP8266接入机智云点亮LED教程
首先我们要访问机智云的官网,注册相应的开发者账号。机智云开发者中心点击立即注册后,登陆刚刚注册的账号,来到开发者中心,可以看到如下界面。点击右侧的创建新产品,开始我们的demo创建。产品分类,我们随便选择一下就行产品名称,我们把它命名为“小电灯”技术方案,我们选择最左侧的WIFI/移动网络方案通讯方式,WIFI数据传输方式,定长然后点击保存调准到如下界面点击去添加数据点...
2019-11-03 15:40:09
7502
17
原创 stm32共阴极四位数码管驱动
自己写的四位数码管驱动使用Hal库LED.C#include "main.h"#include "gpio.h"#define getbit(x,y) ((x)>>(y)&1) //first bit is y=0#define SCLK0 HAL_GPIO_WritePin(SCLK_GPIO_Port,SCLK_Pin,GPIO_PIN_RESET...
2019-09-16 17:51:58
6389
原创 python爬虫---12306获取列车座位信息
主要核心代码:Get_CityCode.pyimport requestsdef get_city(): target = "https://kyfw.12306.cn/otn/resources/js/framework/station_name.js?station_version=1.9100" req = requests.get(url=target) s...
2019-09-16 17:35:05
790
原创 动态规划之最大字段和
第十篇—最大字段和#include<stdlib.h>#include<iostream>#define N 6using namespace std;int a[6] = { -2,11,-11,13,-2,5 };int MaxSum() {//动态规划之最大字段和 int sum = 0, b = 0; for (int i = 0; i &l...
2019-09-16 17:21:46
473
1
原创 整数划分的递归实现
第九篇—整数划分#include<iostream>#include<stdlib.h>using namespace std;int q(int n, int m) { if (n < 1 && m < 1) return 0; if (n == 1 || m == 1) return 1; if (n < m)...
2019-09-16 17:20:15
170
原创 快速排序的递归实现
第八篇–快速排序的递归实现#include<iostream>#include<stdlib.h>using namespace std;int a[5] = { 2,1,7,4,9 };void Swap(int a[],int i ,int j) { int temp = a[i]; a[i] = a[j]; a[j] = temp;}int...
2019-09-16 17:17:59
235
原创 矩阵连乘
#include<stdlib.h>#include<iostream>#define N 6using namespace std;int m[N+1][N+1];//最优值int s[N+1][N+1];//记录断开点位置int p[N + 1] = {30,35,15,5,10,20,25};//第1、2、3、4、5、6个矩阵行数,第6个矩阵列数.voi...
2019-09-16 17:16:12
281
原创 活动安排贪心算法
第六篇—活动安排贪心算法#include<iostream>#include<stdlib.h>using namespace std;int n = 11;int s[11] = {1,3,0,5,3,5,6,8,8,2,12};int f[11] = {4,5,6,7,8,9,10,11,12,13,14};bool A[11] = {false};...
2019-09-16 17:11:51
332
原创 合并排序递归实现
第五篇—合并排序递归实现#include<iostream>#include<stdlib.h>using namespace std;int a[10] = { 5,7,4,2,9,3,10,8,1,4};int b[10] = { 0 };void Merge(int a[], int b[], int left, int middle, int ri...
2019-09-16 17:10:10
386
原创 斐波那契数列
#include<iostream>#include<stdlib.h>using namespace std;int F[100] = { 0 };int f[100] = { 0 };//斐波那契数列自底向上非递归动态规划int Fibonacci(int n) { F[0] = 1; F[1] = 1; for (int i = 2; i &l...
2019-09-16 17:06:17
167
原创 二分搜索的递归实现
第三篇—二分搜索#include<iostream>#include<stdlib.h>using namespace std;int Binarysearch(int a[], int left,int right,int n) { if(left <= right) { int middle = (left + right) / 2; if ...
2019-09-16 17:01:48
240
原创 Ackerman
第二篇—阿克曼函数#include<stdlib.h>#include<iostream>using namespace std;int Ackerman(int n, int m) { if (m == 0 && n == 1) return 2; if (m >= 0 && n == 0)return 1; if ...
2019-09-16 16:58:21
283
原创 0-1背包问题
#include<stdlib.h>#include<iostream>#include<iomanip>#define N 6#define W 21using namespace std;int B[N][W] = {0};int w[6] = { 0,2,3,4,5,9 };int v[6] = {0,3,4,5,8,10};int...
2019-09-16 16:53:48
107
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人