自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 资源 (1)
  • 收藏
  • 关注

原创 关于Gdb工具的交叉编译、移植

文章目录前言一、termcap库的准备二、使用步骤1.引入库2.读入数据总结前言为了在arm-linux处理器上捕捉程序异常,调试程序,需使用GDB工具,需要将gdb源码使用交叉编译工具编译成为可在arm处理器上运行的格式。需要的工具为交叉编译工具链arm-none-linux-gnueabi-gcc 本人使用的是4.3.2版本交叉工具链。编译中需要的依赖库有termcap。一、termcap库的准备示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使.

2020-11-14 21:19:39 3102

原创 linux中的日志存储检测

linux 中为了检测linux中存储log不能无限大的情况,使用脚本去控制文件大小的存储以及存储满的时候的处理。#!/bin/bashecho "nfs-gw-log_check"echo "version: 1.0.0"#Get APP Namecase $1 in app=$1 ;; *) echo "Error - log_check! Please indicate APP name firstly." exit

2020-08-07 11:33:06 180

原创 STM32 模拟IIC驱动MS5607气压传感器调试记录

标题 STM32 模拟IIC驱动MS5607调试记录因项目需求,需使用MS5607的作为检测气压,再此写下自己遇见的问题以及调试记录。硬件原理图如下:IIC接口总线使用了气压传感器,SHT35温度传感器,调试MS5607硬件的7位地址是0X76。所以写的地址是0xEC,读操作的地址是0XED.在第一次写数据的时候MCU无法得到ACK回应,最后查到的问题是地址错误导致的无回馈信号,在发送正确的时序图如下:MS5607操作指令:复位指令:void MS5607BA_Reset(void)

2020-05-31 18:25:44 2301 5

原创 STM32F207产生Pwm调压调制PWM输出的占空比达到调压的目的

前一阵做的项目牵扯到PWM调制电压,调节直流电机的速度,设置方式等都是相同的在频率一致的时候我们只需要调制PWM的占空比即可调整输出的电压的值,调节直流电机的速度。在此就调节电压的例子来说明PWM调节输出电压,做一个记录出来从上图可以看到207的定时器有4个通道可以作为PWM通道的输出,我们选择time3的通道2 在PB5引脚输出,PB5可用作TIMER3_CH2通道的输出,如下图所示...

2020-04-06 10:18:33 2134

原创 STM32L010驱动2.7寸电子水墨屏心得亲测可用

#STM32L010驱动2.7寸电子水墨屏心得经过几天的折腾调试2.7寸电子水墨屏的驱动,驱动芯片使用GDEW027W3芯片,厂家给了调试驱动,但是一开始使用原厂给的Demon移植过来无法实现局部刷新,经过几天的排查发现硬件的升压电路存在问题总是升压不够导致刷新不了,要么就是刷新不完全不稳定。2.7寸电子水墨屏的特点是低功耗,但是刷新速度比较慢,我的调试代码亲测可用。void pic_disp...

2020-04-04 23:54:38 2666 2

原创 QT使用stackLayout实现层叠布局

为了实现层叠布局样式使用stackLayout分离背景和frontend显示,分层显示叠加布局。此内容是一次应用背景叠加的实现记录,作为后续遇到需要实现此功能的方案可作为参考。

2024-06-07 14:13:04 220

原创 Mplayer 移植笔记

Mplayer 移植记录

2023-10-11 13:39:19 377

原创 C/C++根据token 字符串分隔实现

c++ split 字符串分隔

2022-11-16 13:57:56 623 1

原创 STM32F407 SPI接口驱动MCP42100

MCP42100 STM32F407

2022-09-16 14:26:42 964 2

原创 STM32F407 硬件IIC驱动MCP4017 数字电位器

MCP4017驱动

2022-09-16 11:28:02 2456 3

原创 STM32F407 ADC+DMA+定时器 定时采样模拟量

STM32F407 ADC +DMA 定时采样

2022-06-24 14:46:43 6767 14

原创 linux下添加用户开启samba服务

linux下添加用户开启samba服务文章目录linux下添加用户开启samba服务前言一、samba是什么?二、在linux服务器上添加用户1.添加你的个人用户2.命令行只显示$符号3.修改/etc/samba/smb.conf文件4.添加samba用户,设置密码重启总结前言鉴于使用linux搭建samba服务,方便在windows下访问linux下的文件。所以记录新建用户以及开启samba服务的过程。一、samba是什么?Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,

2022-05-11 12:15:13 5815

原创 System V消息队列报Resource temporarily unavailable 错误

项目场景:使用System v 消息队列,进行线程间数据通讯。msgsnd()函数作为生产者,msgrcv()函数当作消费者。问题描述:当大事件量数据的时候会出现 Resource temporarily unavailable 错误。在常规情况下不会产生此错误。原因分析:经过对代码的分析,当有大事件数据触发时会产生消费者,消费者msgrcv()处理的时间较长,速度较慢。生产者msgsnd()在非阻塞的模式下,无法将数据放入到消息队列而报错。int queue_create(queue_ins

2022-02-18 11:44:17 1592

原创 Python2.7交叉编译

前言根据项目需求,需要将python2.7.16版本库交叉编译在arm板子上运行。因此本人记录此次交叉编译中遇到的问题以及分享编译成功的心得。提示:以下是本篇文章正文内容,下面案例可供参考一、Python2.7.16下载Python2.7.16版本源码:下载地址: python.org/downloads/release/python-2716/示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、交叉编译执行步骤1. 解压Python2.7.16

2021-09-09 10:44:49 1009

原创 gdb调试程序问题分析

项目问题:在日常程序开发中不免遇到类似空指针操作导致程序崩溃的问题,所以需要一定的手段去定位bug,而断点调试是普遍使用的技巧,,但在Linux系统中使用的是没有图形界面的调试工具-GDB(听说eclipse支持GUI调试,暂未尝试),所以需要通过指令进行操作,下面逐步介绍gdb调试定位进程崩溃问题。问题描述:linux 嵌入是系统的进程启动后当与另一个进程进行数据传输的时候,会发现进程崩溃现象。原因分析:在log 日志中无法定位进程崩溃的问题,因此我想到使用gdb进行调试此程序。GDB是一个由G

2021-07-26 15:28:56 1595

原创 oprofile交叉编译、移植使用

oprofile 简介oprofile 检测哪个程序,以及哪个函数消耗的CPU时间较多,CPU负荷,性能比较关注的时候可以使用此工具检测以及对程序以及相应程序进行优化。其原理是: CPU都提供一个所谓性能计数器的东西(performance counter),大致的原理就是程序可以注册告诉CPU对什么event感兴趣(比如CPU_CYCLE,CPU经历了一次时钟周期),然后CPU在执 行了相应的操作后,就会在性能计数器上加1,这样程序就可以取出。所以,使用OProfile来定位CPU使用率的问题,就变成

2021-04-16 22:44:45 423

原创 ubuntu下串口 测试

ubuntu下串口驱动的测试1.为了测试新机器的串口硬件的是否正常,因此 使用以下程序 测试串口是否正常 运行#include <stdio.h> /*标准输入输出定义*/#include <stdlib.h>#include <unistd.h> /*Unix标准函数定义*/#include <sys/types.h> /**/#include <sys/stat.h> /**/#include <fc

2020-12-09 20:48:16 1391

原创 valgrind检测c++ 内存泄露

1.在linux下的服务进程发现内存增长,采用valgrind工具进行检测定位内存泄露的具体位置。valgrind 使用的参数 --tool= [default=memcheck]–tool参数指明所要使用valgrind的哪一个工具,默认的为memcheck。因为大多数情况下我们只会用到memcheck工具,因此该参数可以不写。 --leak-check=<no|summary|yes|full>[default:summary]在退出时检查是否有泄漏。Summar

2020-10-25 10:33:43 217

原创 linux中使用libiconv库中的iconv()函数将UTF_8编码转换成UTF-16BE编码失败遇到的坑

linux中使用libiconv库中的iconv()函数将UTF_8编码转换成UTF-16BE编码失败遇到的坑在使用Iiconv()转换UTF-8编码为UTF-16编码的时候发现int result = iconv(cd, &bufferStart, &inLen, &convertedStart, &outLen);调用接口函数返回result 的值总是-1无法转换失败。原因是因为outlen长度的不足。因为开始赋值inleN=outlen,导致长度存在问题。

2020-10-21 21:24:19 989

原创 linux中用shell脚本自动管理版本号

为了统一管理版本,在编译之前调用shell脚本将版本号进行解析然后以jason 文件的格式保存。脚本源码:#/bin/bash# find current dircd ..version_dir=`pwd`echo $version_dir# version file Dirversion_file_dir="${version_dir}/bin/version"# Find the version number and assign if [ -f ${UfnNcm_ver.

2020-08-23 16:37:49 1017

原创 记录使用monito软件监测 log文件的大小

monit是一个可以监控系统,进程,文件系统,目录,设备的监控软件,可以自动唤起那些异常退出的进程,还可定制你想监控的东西。同时monit提供了内置的WEB UI的功能,可以一目了然地了解监控项的情况。其中正常项为绿色,异常项为红色,很方便的告警,另外,monit还提供了发邮件通知的功能,对于紧急的异常情况可以发送邮件到指定邮箱。比如发生了coredump,发生了DB corrupt,daemon进程异常重启,可以第一时间邮件通知到管理员,呵呵很强大吧。片汤话我们不多讲,讲讲怎么用monit搭建一个监控..

2020-08-13 22:30:02 291 1

SHT20驱动.rar

STM32驱动SHT20温湿度传感器,亲测可用,不同的MCU只需移植即可使用,仅仅只需修改IO控制口即可

2020-04-05

空空如也

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

TA关注的人

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