自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(83)
  • 资源 (32)
  • 收藏
  • 关注

原创 vs2008编译报错:1>cl: 命令行 error D8016 :“/MTd”和“/clr:oldsyntax”命令行选项不兼容

1>生成日志保存在“file://f:\t630_freertos\cypress\cypress_code\CyUSB3_USB_Suite_Source\CyUSB3_USB_Suite_Source\CyAPI_Library_Source\CyAPI\application\cpp\streamer\x86\Debug\BuildLog.htm”1>------ 已启动全部重新生成: 项目: Streamer, 配置: Debug Win32 ------

2023-12-25 17:28:29 754

原创 ubuntu20.04共享文件夹—— /mnt/hgfs里没有共享文件夹

1. 重新安装vmware tools. 在菜单中选择虚拟机--》重新安装VMware tools...安装过程中,一路yes即可,遇到默认是no,均输入yes覆盖。虚拟机启用共享文件夹后,/mnt/hgfs下面为空,使用。保存退出后,reboot重启ubuntu.查看设置的共享文件夹名字也是为空。

2023-08-18 12:03:11 2050

原创 ubuntu虚拟机和主机共享网络设置

ubuntu虚拟机 共享网络

2023-08-16 10:48:52 258

原创 ifconfig不显示ipv4地址,ifconfig eth0 192.168.5.9失败

ifconfig ,ifup,ifdown

2023-02-24 10:51:02 1766 1

原创 如何将虚拟机ubuntu设置网路连接为桥接模式

当将虚拟机的网络适配器设置为NAT模式时,一切正常,可以ping通所有ip, 但是当设置为桥接模式时,ping命令会提示ubuntu connect: Network is unreachable。下图种,VMnet0设置为桥接模式,选择已桥接至步骤1中的网络名字:Realtek PCIe GBE Family Controller.点击确定。如果上面框框中只有两个VMnet,可以手动添加一个,VMnet8是虚拟机的NAT模式,VMnet1是仅主机模式,VMnet0设为桥接模式。

2023-02-24 09:46:59 3396 2

原创 ubuntu下ifconfig找不到命令,packege ‘net-tools‘ has no installation candidate

用sudo apt install net-tools也提示错误:Package 'net-tools' has no installation candidate.再次执行sudo apt-get install net-tools就可以了。原因:系统缺少安装相关软件的包,需要更新软件源。

2023-02-23 20:03:56 3239

原创 QT console工程关于控制台的弹出

qt 关闭控制器弹出

2022-08-31 10:44:10 2157

原创 qt实现对bin文件的加密以及输出加密后的数据到数组中

代码】qt实现对bin文件的加密以及输出加密后的数据到.h中。

2022-07-22 10:55:26 1378

原创 keil配置After Bulid Run #1 Run #2

虽然做嵌入式开发这么多年,但是没有关注过keil options选项卡中配置After Build/Rebuild Run #1 Run #2是怎么配置的,今天就来记录一下。首先,下图中Run #1中的cmd是keil自带的,fromelf --bin --output=$L..\@L.bin #L先看一下命令解释:$L:表示生成的链接文件的路径,一般是工程路径下的\objects\@L: 表示生成的链接文件的文件名(包含路径),但不包含文件扩展名#L:表示生成的链接文件的完整路径名及文件名.. :表

2022-07-06 11:13:00 3149

原创 Winusb WinUsb_SetPipePolicy函数的使用

在项目过程中用 WinUsb_ReadPipe函数异步读取usb device数据;用WinUsb_GetOverlappedResult()函数获取读取的结果长度;测试demo的数据长度是从1056byte 按8byte 步长往上涨的, 当跑到2MB+1032byte的时候,上位机就会少收取8字节就结束了,而少收的这8字节就进入到了下一次请求的结果中;用usb分析仪抓包下位机发送的数据并没有错误;遇到问题不会就是百度啊,这是万能的解决方法,遇到这一篇帖子基于WinUSB的异步方式bulk传输的稳

2022-03-17 14:58:02 1199

原创 linux vim编辑退出保存不了错误:E37: No write since last change (add ! to override)

使用vi /etc/vim/vimrc进入vim编辑器,进行修改后保存不了,提示E37: No write since last change (add ! to override),是因为没有权限;需要在打开vim编辑器时,使用sudo来打开,sudo临时提供管理员权限,当执行某种操作系统提示诸如“operation not permitted”等权限不足信息时,可以在命令前面加上sudo来解决权限不足问题。使用sudo后,再次修改vim就可以正常退出了。按回车,退出vim编.

2021-10-12 17:03:17 7569

原创 usb xhci babble error问题解决

问题现象:xhci的板子通过USB接iphone设备,进行数据OUT和IN,有一些芯片对于OUT,IN都能正常,有一些芯片对于OUT正常,对于IN总是出现babble error. 有时还不能进入事件中断。整体来说就是数据OUT没问题,数据IN对于一些芯片正常,一些芯片不正常,还有一个特殊的芯片是快速开关电源就会正常。查看xhci对于babble error的描述如下:意思就是有三种情况下会产生babble error。1:当device 发送的数据 > TD transfer size时

2021-09-07 09:48:58 2340

原创 csky CDK IDE 中文注释显示方向旋转90度调整方法

操作步骤如下:

2021-07-05 17:40:08 737

原创 KEIL工程boot跳转失败,死在rt_system_scheduler_start()问题的解决

遇到的问题:app工程是基于RTT的工程,boot跳转到APP时,每次执行到rt_system_scheduler_start()这个函数后就复位,进入不了main函数,debug跟踪调试进入到rt_system_scheduler_start()

2021-06-08 15:24:46 1648 1

原创 keil怎么设置生成.bin文件

打开keil的魔术棒,按照下面图设置一下就可以了:fromelf.exe --bin -o "$L@L.bin" "$L@L.axf"

2021-06-01 11:31:26 173

原创 进制转换小函数实现,十进制转16进制,char转bcd码等

#include <stdint.h>#include "convert.h"unsigned bcd2bin(unsigned char val)//11 : 0x11{ return (val & 0x0f) + (val >> 4) * 10;}unsigned char bin2bcd(unsigned char val)//0x11 :11/10*16+1 = 17{ if(val==0) return 0; ...

2021-05-27 14:40:15 307

原创 keil 定位hardfault

首先,在程序中我设置了一个hardfault:然后运行程序程序复位,通过log打印可以看到通用寄存器的值:我们主要看lr的值,然后debug调试程序,打开keil的Disassembly窗口,在View菜单中,拖动鼠标找到0x800d7b1这个位置(大概位置就可以)出现hardfault的地方就在lr地址后面的地址出的代码:我们双击D7B2这个地址,代码跳转到这个函数中,仔细检查这个函数没有问题,推测可能是调用此函数的地方出现了问题:可以看到第一张图中我们设置的ha.

2021-05-18 15:26:11 928

原创 HAL_PWR_DisableBkUpAccess();影响RTC定时唤醒

设置完RTC定时唤醒后,如果调用了HAL_PWR_DisableBkUpAccess();这个函数会导致RTC无法唤醒;void rtc_wkup_set_time(uint16_t ms){ __HAL_RCC_PWR_CLK_ENABLE(); HAL_PWR_EnableBkUpAccess();//设置RTC唤醒前需要先执行备份区使能,并且保证备份区不会使能,否则低功耗后唤醒不了 HAL_RTCEx_DeactivateWakeUpTimer(&hrtc)...

2021-04-30 15:58:06 785 2

原创 strcmp不起作用的问题解决

最近在调试一个项目,项目中用到了strcmp;但是strcmp在L431上用着起作用,在L451上用着竟然不起作用,同样的代码;过程如下:char HeadStr[6];//全局变量void n_recv_gnss_data_process(char ch){ if(ch == '$') { BeginFlag = 1;//开始标志 } if(BeginFlag >= 1) { BeginFlag++;...

2021-04-27 10:49:11 1230

原创 对于MCU看门狗IIWDG WWDG喂狗时间的配置参考

对于MCU看门狗IIWDG WWDG喂狗时间的配置参考可以参考MCU的datasheet;在每个MCU的datasheet中都有这样的表格:6.3.25 Timer characteristicsF091的:可以封装接口进行看门狗的配置,参数传入ms时长:以091为例代码实现如下(看门狗是40KHz):/** * @brief config 内部独立看门狗. * @param ms:看门狗时间长度 * @retval None */uint8_t .

2021-04-21 11:14:49 955

原创 w25qxx SPI读取数据出来为全FF

调试L451的spiflash时读取w25qxx的数据,写入后再进入读取,读取出来是全FF,最后找到原因是: hspi2.Init.CLKPolarity = SPI_POLARITY_HIGH;配制成 hspi2.Init.CLKPolarity = SPI_POLARITY_LOW;的原因,改成HIGH后就正常了。void MX_SPI2_Init(void){ hspi2.Instance = SPI2; hspi2.Init.Mode = SPI_MODE_MASTER...

2021-04-20 11:09:02 8336 3

原创 实现printf函数的方法

void n_kprintf(const char *fmt, ...){ va_list va; char tx_buf[256]={0}; uint16_t len; va_start(va, fmt); len = vsnprintf(tx_buf, 256, fmt, va); va_end(va); uart_send_data(UART_3,(uint8_t*)tx_buf,len);//自己实现的uart DMA发送函数,...

2021-04-20 09:49:43 206

原创 MCP2515在8M晶振控制器下配置1M波特率的配置

MCP2515在8M晶振控制器下配置1M波特率的配置:CFG1,CFG2,CFG3的配置值为:0x00,0x80,0x00;虽然这样配置可以得出1M波特率来,但是可能会不稳定,因为:

2021-04-20 09:15:36 1851

原创 HAL库的HAL_GPIO_ReadPin()使用总结

HAL库readpin的函数使用起来有以下总结:当一个pin脚设置成OUTPUT的时候,那么使用HAL_GPIO_ReadPin()函数能不嫩读取出这个pin脚的值呢???很多人都认为HAL_GPIO_ReadPin()只是用来读取配置为INPUT模式的pin脚的,其实它也可以读取配置为OUTPUT的pin脚状态;但是,这里加个但是,当pin配置output时,想要读取pin的状态时,对于推挽PP和开漏OD模式是有区别的;当配置为GPIO_MODE_OUTPUT_PP时,使用HA...

2021-04-08 10:07:06 19844

原创 lis3dh低功耗调试笔记

最近在调试整机的低功耗,发现在单片机进入低功耗后,整体功耗在400多uA, 不带加速度计(我用的是SPI模式)的硬件版本低功耗为100uA. 两个硬件版本除了加速度计的区别,其他硬件电路都相同;于是确定是LIS3DH的低功耗没调试好,查看LIS3DH的数据手册,发现如下的地方:即pin7引脚内部有个上拉电阻,另外找到数据手册上的table13的下面描述可以将此上拉电阻配置为disable;果真,加上这个配置后,低功耗电流降低了140A左右;功耗还是在300多uA,和100uA相差甚远;根据数据手

2021-04-06 16:12:06 1167 2

原创 在线小工具分享

1. 时间戳转换工具:https://tool.lu/timestamp/2. hmacMd5 md5 等工具(在线HMAC算法):http://www.metools.info/code/c25.html3. 异或检验计算:http://www.ip33.com/bcc.html4.基站定位查询:api.cellocation.com:81/cell.html5. hmac-md5计算方法c语言实现:https://blog.csdn.net/a823837282/article/deta

2021-04-02 15:40:59 683

原创 gpio模拟uart 发送

用GPIO模拟UART输出一个字节,波特率9600,所以周期约为104us。这就需要用的精确的usdelay延时函数;延时函数可以用Cortex-M内核中的DWT计数器。另外还需要将GPIO配置成output模式;延时函数实现如下:delay.h//延时实现#define DWT_CR *(__IO uint32_t *)0xE0001000#define DWT_CYCCNT *(__IO uint32_t *)0xE0001004#define DEM_.

2021-04-01 14:43:39 1150

原创 STM32L431 MCU温度计算

找到L431参考手册上的MCU温度计算公式:在L431的datasheet上找到下面的地方:通过上面两张图,可以知道mcu温度计算公式,可公式中用到的值,注意这里的校准值是在3.0V下校准的,如果你的单片机是用的3.3V供电,就需要转换一下系数3.3/3.0;MCU温度计算公式:代码实现如下:#define TS_CAL1 ((uint16_t*)((uint32_t)0x1FFF75A8)) //TS ADC raw data acquired at a tempera..

2021-03-29 10:29:49 1192

转载 GPIO 模拟uart 发送

参考以下博文:https://my.oschina.net/igiantpanda/blog/1618138

2021-03-23 15:21:31 360

原创 can学习总结,关于波特率配置,采样点设置

CAN采样点的选择:当波特率>800k , 75%; >500K, 80%; <=500k,87.5%...

2021-03-11 13:29:45 3007 1

原创 L431 keil debug 进入不了main函数

通过cubemx5.5.0生成stm32L431芯片的KEIL工程,但是在调试的时候发现进入不了main函数;尝试过很多方法,都不行,程序能下载进去,jlink也能连接上,就是无法进入main函数;debug调试看着汇编窗口也在跑;用镊子短接了一下复位引脚还是不行;最后把jlink拔下来,重新开关了下电源竟然程序跑起来了。猜测原因:之前一直在芯片的引导区跑,一直没进入程序运行区,也就是可能是reset复位的问题导致的;这次运行起来后,每次debug就都能进入main函数了。有可能..

2021-03-10 15:57:12 1083

原创 MCP2515调试笔记----初始化注意事项

在调试基于F103单片机的MCP2515时,怎么调试都不正常,用的还是以前调试过的代码,隔了一段时间后再重新运行就不行了;于是单步运行调试,没想到,单步运行调试竟然成功了;于是想到是延时的问题,在初始化那里的reset函数里加了个延时,再下载进去板子里果然就正常了。void mcp2515_reset(void){ static uint8_t status; uint8_t cmd = MCP2515_CMD_RESET; mcp2515_cs_enable();//置M...

2021-01-20 14:08:36 2738

原创 git GUI版本回滚步骤

步骤:首先本地切换到要回退的那个分支上,然后按照下面步骤执行: 1 日志里选择版本 Repository -> Visualize master's history 2 选择要回到的版本号 reset master branch to here 3 完成回滚修改文件 hard4. Remote -->Push.(记住这个分支一定是不受保护的分支,否则push不成功),选择Force qverwrite-->push.完成。一下是图片展示:...

2020-12-29 20:13:41 3177

原创 GD32E230C8T6 定时器使用

定时器2的配置如下:定时时间是1ms,/** \brief configure the TIMER peripheral \param[in] none \param[out] none \retval none */void timer_config(void){ /* TIMER2 configuration: generate PWM signals with different duty cycles: TIM...

2020-12-29 11:06:45 3699

原创 gpio模拟串口uart接收数据(HAL库)

GPIO模拟uart的原理就是根据所需要的uart的波特率,计算出每个bit所用的时间,在此时间段内去读取gpio的输入,然后将读取的8bit拼接起来即可,当然这期间要检测起始位和结束位。uart的起始位是下降沿,结束位是上升沿。为了检测准确,我们读取每个bit的中位位置,所以定时时间是每个bit位所占用时间一半。9600波特率的uart模拟,每个bit位的时间是:1/9600 s = 104us的时间,那么半个bit位的定时时间就是104/2 = 52us。所以在检测到下降沿后,接着打开定时.

2020-12-08 14:16:45 1706

原创 keil包含了头文件仍然提示找不到定义 解决方案

简单粗暴,直接说明解决方法和问题原因:一看这个图片就明白原因了吧,哈哈。头文件名定义和里面的def名定义不一致。

2020-11-12 15:20:49 15050 10

原创 ACL16加密芯片硬件IIC调试

通过cubemx配置IIC:速率配置为100KHz,可以选择StandardMode,Fast Mode, Fast Mode Plus,这里选择StandardMode;选择RiseTime,FallTime都为100ns;7-bit地址模式,从机地址是0x53;GPIO设置为no-pull,开漏模式生成代码如下:OwnAddress1 = 166,16进制就是0xA6, 配置设置的0x53,0101 0011, 之所以代码里是0xA6,是因为cubemx自动将读写位填

2020-07-07 17:15:38 1163

原创 git分支合并冲突解决方法及步骤

下图是我的分支冲突图,在3点后,从develop分支分出一个release分支来,release分支更新了5次最后合并到了master分支,而没有往develop分支merge,所以导致master分支和develop分支版本不一样了,而由从3点出的develop分支拉出一个feature分支来,进行了两次更新,并合并到了develop分支上,此时再将develop分支merge到master的分支上就出现了版本冲突。开始说解决步骤:步骤1. 本地打开git GUI,本地checkout到dev

2020-07-02 11:21:28 5932

原创 lis3dh调试心得,读取正确的加速度值

最近在调试lis3dh加速度计,网上一搜能找到很多资料,但是描述正确的,感觉不是很多,所以这里我来总结一下,也是在网友博客的基础上将正确的地方集中整理一下。1. 首先说驱动,驱动网上流传的基本上就是一份,.h.c文件随便一搜就能下载到lis3dh的驱动,由于我的是公司电脑,文件是加密,就不上传驱动了,大家可以自行搜索其他的资源下载,驱动下载下来后,用户需要完成的就是底层SPI(这里我用的是SPI读写方法,IIC的没用过)的读写寄存器的函数,我把自己写的粘贴出来,大家参考一下,用的而是HAL函数,这里..

2020-06-29 15:05:51 10683 12

原创 STM32F091VCT6 PC13引脚使用注意 HAL库使用方法

最近在调试F091片子时,用PC13做了3V3的使能开关,结果发现驱动不了,给它输出高,用示波器测量输出还是低;查了很多资料,看到DATASHEET上有这样的描述:参考手册中的描述,RTC_TAFCR寄存器中的值:手动在代码中添加了如下部分,也是不起作用:后来找到这个博客:http://forum.eepw.com.cn/thread/312420/1/博客里面有这样一个回答,就是关闭入侵检测:我按照这样在RTC初始化后执行了这一句,还是不行,检查RTC的配置

2020-06-04 11:01:57 2320 1

<>

讲解xhci协议,充分讲解了xhci协议的理解,如果你看xhci英文原文理解不透的话,再结合此ppt的理解,你就会充分的理解xhci。

2021-10-28

usb uvc 分辨率等控制命令分析说明

通过抓包以及uvc 类协议分析分辨率等命令的是实现过程

2021-10-08

USB3CV 2.2.1.0 Installer - x86 Release.exe

usb cv测试工具

2021-09-30

xhci官方英文协议文档

xhci英文协议文档

2021-09-18

cppcheck_downcc.zip

cppcheck是一个静态代码检查工具,支持c/ c++代码;作为编译器的一种补充检查,cppcheck对产品的源代码执行严格的逻辑检查。 执行的检查包括: 自动变量检查 数组的边界检查 class类检查 过期的函数,废弃函数调用检查 异常内存使用,释放检查 内存泄漏检查,主要是通过内存引用指针 操作系统资源释放检查,中断.文件描述符等 异常 STL 函数使用检查 代码格式错误,以及性能因素检查

2021-09-18

global.prop

keil 编辑背景,字体颜色的配置

2021-08-26

AMCap3播放器软件

直播软件,可以直接音频视频直播,可以用海康摄像头设备直接连接。

2021-08-09

audacity_downcc.zip

PCM音频文件播放器

2021-08-09

sscom15.1.rar

串口工具

2021-05-12

GoogleEarth.zip

经纬度坐标定位系统

2021-05-12

pack包_F1xx_F0xx_F4xx_L4xx.rar

STM32F系列,L系列pack包

2021-04-24

STM32 ST-LINK Utility.rar

stlink驱动程序,用于st-link工具的驱动安装,32位和64位都包含。STM32 ST-LINK Utility提供了多种功能,可对STM32内部存储器((Flash、RAM、OTP等),外部存储器进行编程,以验证编程内容(校验和,编程期间和之后验证,与文件进行比较)以及自动执行STM32编程。

2019-12-09

rt_thread移植.txt

rt-thread移植的所需要的文件,说明需要移植哪些内容来创建工程。基于stm32的rt-thread的移植,以及stm32固件库中需要移植的文件。

2019-11-18

关于stm32l151c8t6在stop低功耗模式下通过RTC alarm唤醒的方法总结.pdf

文中讲了stm32l151c8t6在stop模式下通过RTC定时器A定时唤醒的方法,以及RTC时钟的配置 和 alarmA的配置,可以通过固定的日历日期定时唤醒,比如每月的1号早上8点唤醒,也可以通过按周唤醒,比如每周一早上8点唤醒,也可以每天早上八点唤醒

2019-10-29

eclipse下基于stm32 使用printf函数重定向的使用说明.pdf

大家都知道在嵌入式开发中将usart重定向到printf函数,在进行打印调试信息的时候非常方便,查了很多资料,大部分都是关于在keil下的printf重定向的说明,在eclipse下,对于printf的重定向和在keil下是不一样的,文档中对实现方法进行了说明

2019-10-29

stm32l151c8t6-A单片机关于定时器的时钟配置和计算(定时1ms的配置).pdf

文档中描述了stm321xx系列的关于系统时钟的配置,定时器的时钟配置等说明,给出了定时器定时时间的计算方法,并且附带配置代码。

2019-10-29

SIM800C datasheet.pdf

sim800c 的datasheet,英文原版,SIM800C_Hardware_Design_V1.02,硬件设计手册

2019-09-30

111019_EclipseSourcerySTM32开发环境搭建.pdf

里面描述了基于eclipse开发的stm32环境搭建,只需要eclipseforc,JRE,交叉编译工具GCC,不需要JDK.

2019-09-20

VS2008打补丁工具

VS2008打补丁工具,先在控制面板-程序-卸载和更改中,将VS2008打开,再以管理员身份运行该工具,点击打补丁,然后再VS2008中输入序列号,点击升级即可。

2018-04-11

高数微积分公式大全

高数文积分公式大全

2017-03-14

Apache+php+mysql_zend组合套件V2.0

2017-03-14

notepad文本打开工具

文本文档打开工具

2017-03-14

STM32_ECLIPSE环境搭建

描述了STM32_ECLPSE在window7环境下的环境搭建以及配置。

2016-11-01

VS2008实现windows自带的计算器功能

用VS2008工具通过VC++语言,实现windows自带的计算器功能开发,可实现加减乘除,乘方,开方,倒数,撤销错误输入,清零等功能。

2015-12-21

setup factory VC6.0打包软件

将VC6.0可执行程序打包为安装形式的setup.exe形式。简单易用。

2013-12-05

VC6.0LineNumberAddin.rar

使vc6.0代码显示行号,里面有说明使用,无需安装。

2013-11-02

VC6.0插件assist

vc6.0很好用的差价,使代码清晰化显示。

2013-11-02

安装MSDN需要的虚拟光驱

安装MSDN所需要的虚拟光驱。安装完后,右键点击找到image选项点击,找到MSDN的存放路径,点击打开就进入MSND的安装界面,可进行安装

2013-10-30

picpick_inst.exe

很好的一款截图软件,非常智能化,可以方便快捷的随意截图,全屏,活动窗口,部分区域都可以。

2013-10-25

visual_assist_VC6.0破解版.rar

VC6.0开发助手,帮助你的程序智能化显示。

2013-10-25

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

TA关注的人

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