自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 windows下lua调用C动态库文件(.dll)

1.lua调用C库时,找不到指定程序问题.lua代码如下:local clib = require "myLuaCLib"clib.test()C库代码如下:#include "lua.h"#include "lualib.h"#include "lauxlib.h"#include <stdio.h>static int l_test(lua_State* L){ printf("hello world\r\n"); return 0;}static con

2020-12-08 13:49:12 3304

原创 永磁直流电机速度闭环控制-基于响应曲线法的PID整定

一直以来,关于PID整定都在进行手动调试,例如试凑法、1/4衰减曲线法、齐格勒-尼柯尔斯整定法等; 虽然上述方法都可以完成对参数的整定,但是需要非常丰富的调试经验才能达到预期的目的。同时,当需要控制的系统过于庞大,影响系统的参数整定,根据经验的调试也会力不从心,那么关于PID整定的工作量无疑是巨大的。 因此,我们需要从系统内部出发,对系统进行建立数学模型,进行图形化的PID参数整定。 1.永...

2020-03-16 09:10:21 697

原创 二分查找的应用

#include <stdint.h>#include <stdio.h>#define BINARY_SEARCH(n) \ pos = n(arr, length, target_val); ...

2019-09-23 21:36:53 201

原创 STM32驱动直流电机(一)驱动电路的介绍

驱动电路典型的H桥驱动电路如下: 要使电机旋转只需导通对角线上的两个三极管即可,如导通Q1,Q4,关闭Q2,Q4即可驱动电机正转; 若想电机反向转动,即导通三极管Q2,Q3,关闭Q1,Q4。 此时电路图可简化为如下所示: 但当我们直接导通一个半桥上的Q1,Q3(或Q2,Q4)时,电源被短接,由于三极管电阻很小,此时流过三极管的电流很大,非常容易烧坏三极管,因此实际运用中一定不能...

2018-03-23 12:34:34 18054

原创 SecureCRT串口传输下界面无法输入字符问题

SecureCRT串口传输下界面无法输入不外乎两种原因: 1.在创建串口连接时,选中了硬件流模式,因此无法输入; 解决办法:关闭串口连接的硬件流; 右键单击“Serial-COM4”选项卡,弹出如下窗口,选择如图所示串口后,将红框中的硬件流模式关闭即可; 2.使用串口连接时,没有开启本地回显; 解决办法:右键单击“Serial-COM4”选项卡,弹出如下窗口,选择如图所示串口后,将红框

2018-03-22 10:29:48 18179 1

原创 STM32CubeMx下LWIP教程(一)-PHY硬件层搭建

关于LWIP的PHY搭建,采用的PHY芯片为LAN8720A,RMII模式。 关于硬件连接部分采用的是原子的板子F407,硬件连接如下: 注意:LAN8720A 可以通过 PHYAD0 引脚来配置,该引脚与 RXER 引脚复用,芯片内部自带下拉电阻,当硬复位结束后, LAN8720A 会读取该引脚电平,作为器件的 SMI 地址,接下拉电阻时(浮空也可以,因为芯片内部自带了下拉电阻),设置 S

2017-08-22 15:27:07 22553 13

原创 STM32CubeMX之定时器控制微秒延时详解

写在前面的话,为什么另需定时器进行微秒级延时。 1.在HAL固件库中只有使用Systick作为延时计数器,毫秒级延时HAL_Delay()。为了增加精确的微秒级延时,一般都是更改Systick配置参数,但HAL固件库许多地方都使用了HAL_Delay()函数,因此建议大家不要修改系统自动配置的Systick参数; 2.个人觉得到加入操作系统时要占用Systick,而MCU系统自身的时基还要选择其

2017-07-31 20:24:19 32876 10

原创 STM32CubeMX下FPU,DSP库的移植

1.关于FPU的移植只要是硬件带有FPU功能的芯片,FPU的使用一般都是默认开启的。也可在Options选项卡中自行选择; 2.关于DSP库的移植使用STM32的DSP库一定要开启FPU功能 使用STM32CubeMx生成的项目工程中,一般都包含了STM32的DSP库(存在于CMSIS中),不过需要根据硬件的大小端模式选择相应的DSP库。其DSP库位于: 固件库安装路径+ \STM32Cub

2017-07-30 21:32:07 8187 2

原创 STM32CubeMx之硬件IIC调试基本方法

如题,最近在调试STM32的硬件IIC,从中发现了很多问题,经过网上查找资料总结和实际测试,总结出如下步骤来检测硬件IIC。 测试环境如下: STM32F407开发板; STM32Cube固件库F4 1.6.0 IIC设备 AT24C02 IIC配置如下:void MX_I2C1_Init(void){ hi2c1.Instance = I2C1; hi2c1.Init.Clock

2017-07-28 13:55:40 18555 1

原创 STM32Cubemx下实现通用定时器微秒级延时

因为STM32 HAL库中仅有对HAl_Delay()毫秒级的延时,为实现精确的微秒级延时,就不得不修改Systick,但由于HAL库内部使用其作为超时判断等操作,对其修改会发生不可预期的错误,不建议修改。因此,使用通用定时器进行定时操作。 参考网上例程,使用定时器中断方式实现延时,代码如下:/* TIM3溢出时间=72MHz/(71+1)/(0+1)=1Mhz=1us 计数模式:

2017-07-24 16:59:03 9832 6

原创 C-可变参数个数函数的构建

printf(*format,…),其中的…就代表可变参数列表 需要包含的函数库void va_start(va_list ap, last);type va_arg(va_list ap, type);void va_end(va_list ap);void va_copy(va_list dest, va_list src);其中: va_list是用于存放参数列表的数据结构。 va

2017-07-20 16:41:33 345

原创 Android串口蓝牙开发实战

最近,正在做关于Android串口蓝牙遥控小车的APP,在此罗列出相关技术细节,用以备忘。1.蓝牙权限的申请在AndroidManifest.xml加入以下权限:<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" /><uses-permission android:name="android.permission

2017-07-18 20:26:15 1343

空空如也

空空如也

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

TA关注的人

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