自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(64)
  • 资源 (19)
  • 收藏
  • 关注

原创 QT编程实现播放器(一)ffmpeg库的编译

今天主要记录编译ffmpeg过程。

2024-03-21 15:53:28 425

原创 手把手移植 simpleFOC (六):成果展示

SimpleFOCShield和SimpleFOCPowerShield两版,均是一版成功,不太喜欢arduino,源码看不到,所以将Simple_FOC-2.3.0.zip都移植到了 vscode下gcc编译成功运行。驱动由stm32cubeMX生成。Simplefoc移植成功,pcb都是一版成功。

2023-08-22 14:03:43 256

原创 手把手移植 simpleFOC (五):电流检测 篇

前期的工作, simpleFoc开环控制已经完成了,实现完整的闭环控制,就差两相电流检测了,主要设计思路是来源于odrive,用产生pwm波的定时器update事件,触发两路adc 注入式采样。硬件管脚分配 ib-----adc in0硬件配置整个串口调试,接收数据来看。电流检测部分成功移植。整个个移植工作都以完成,剩下的只是针对力矩,速度,角度等闭环调试了。

2023-08-10 08:42:46 697

原创 stm32 上电初始化串口会输出一个字节FE

该代码移到IO初始化之前即可解决该问题。

2023-08-07 10:37:03 380

原创 手把手移植 simpleFOC (四):pwm 六相 篇

今天移植的内容,为定时器生在pwm,能按矢量数据控制电机到相应的位置一、定时器的配置通读了simpleFoc的代码,准备让定时器1生成的pwm波为20KHz,中心对齐模式3,三个通道均工作在模式1,极性为高电平,即TIMx_CNT < TIMx_CCRx时OCxREF信号为高,输出为高电平。

2023-07-30 09:25:16 617

原创 手把手移植 simpleFOC (三):编码器篇

今天移植的主要内容是simpleFoc的encoder,目标是转到电机,读出对应的角度及角度率。运行结果,编码器程序移植工作正常。只是simpleFoc采用的是外部中断方式进行采集,看了stm32定时器章节,里面有编码器接口功能,后续有必要的情况下会对该部分以定时器接口进行实现。

2023-07-27 14:07:42 440

原创 手把手移植 simpleFOC (二)

本章主要实现 simpleFoc 里的 Serial.print功能,建立setup、loop函数,并且调用Serial.print功能。一、建立目录,提取文件。

2023-07-26 17:12:19 300

原创 手把手移植 simpleFOC (一)

由于之前用的是自画的odrive板子,移植的 simplefoc,驱动用的drv8301。逢上嘉立创免费打样,闲暇之余,重新学习了FOC整个过程。准备再次深入了解simpleFoc和odrive,比较他们的细节差异。就画了两版simpleFoc:一版为SimpleFOCShield(单路):stm32f103cb+L6234D另一版为SimpleFOC-PowerShield(双路):stm32f405G+btn8982。上图:SimpleFOCShield版嘉立创贴片中仿真图还未出。

2023-07-26 10:22:27 1286

原创 allegro制作封装的几个概念

它们一个事物的两种表达方式。区别在于正片就是,你看到什么,就是什么,你看到布线就是布线,是真是存在的。但是我们在begin layer和end layer也设置thermal relief(热风焊盘),anti pad(隔离盘)的参数,那是因为begin layer和end layer也有可能做内电层,也有可能是负片。thermal relief(热风焊盘),主要是与负片进行连接,一般应用在VCC或GND等内电层,因为这些层较多用负片。负片就是,你看到什么,就没有什么,你看到的,恰恰是需要腐蚀掉的铜皮。

2023-06-15 10:48:20 582

原创 Centos 搭建 不同的ftp用户对目录分级管理

建立ftp服务器目录 ftp_repository 使用用户名和密码登陆对它有读写权限,在该目录下建立子目录public可以匿名登陆,对其只有读权限。

2023-05-10 18:56:18 705

原创 基于electronbot作品bootLoader设计

说到electronbot,不得不提及稚晖君,本人一直以来也想做一个能动,有声音,有显示,能遥控等功能的玩具,投入成本和懒散一直搁浅,看了稚晖君electronbot后,感觉是入手不错的选择,模具和结构也不用考虑了,同时被他这种全栈式开发精神所打动!看了该视频演示,第一个想法就是小人装配好之后,如果有新的固件更新,再打开就显得麻烦,所以借用usb通道进行固件更新显得很必要。

2022-12-19 14:49:11 952 2

原创 基于STM32实现USB复合设备CDC+MSC正确实现方式

看了网上也有相关实现文章,比较HAL原代码框架,无论是odrive里,还是网上其它实现案例,都是通过ep_addr进行switch ,而原代码框架里有USBD_RegisterClassComposite函数,阅读HAL库USB相关代码后,决定以符合原代码框架的姿势打开USB组合设备CDC+MSC

2022-11-27 23:23:13 5988 5

原创 移植 simpleFoc笔记(四)

即整个移植工作告一段落,在测试时,由于手上只有A2212航模电机,闭环也工作起来了,但发烫pid参数还没有时间去调试,也有网上推荐使用云台电机测试。电流采集,即用DRV8301的DC_CAL, gain为40V/V 定时器TRGO触发ADC注入式转换,中断接收转换结果。今天主要记录一下昨天闭环移植的成果,移植了encoder和InlineCurrentSense。也就是电流采集和编码器,本主用的是odrive测试电机,自带了一块TLB5012,ABZ接口。另一方面是中断注册编码器三个函数。

2022-11-16 08:39:04 453

原创 移植 simpleFoc笔记(三)

这次移植成功,主要是定时器1的设定及嫁接到源码里去,定时器的设置延用了odrive设置规则,即3500为峰值,即48KHz,中心对齐3模式,即pwm的频率为24KHz,RCR=1,即TRGO事件和update中断即为24KHz,与odrive有点区别的是通道x的模式为pwm2,但极性我设置成了低有效。今天是高兴的一天,经过本主的移植,开环控制成功了,电机也转起来,但由于调试不成功几次,以为自己过于保护,给的voltage_limit值过大,不一回电机冒烟了。之前有一个微秒级有个过界处理,也屏蔽了。

2022-11-13 11:31:08 412

原创 移植 simpleFoc笔记(二)

今天 基本将drv8301及大部分代码添加到了工程里,接下来就是将timer,pwm,电流采样,有感采集接入 simpleFoc,即可以调试起来。继上篇之后,大概看了下源码,今天移植的主要任务是commander,方便以后串口发指令调试电机参数。由于odrive主板有UART4可用,目前使用它打印信息,并接收指令,后续再将usb虚拟串口专门用来接收指令。并且开了一个基本定时器6,84MHz 分频为1MHz 周期为50000个,即最大周期50ms。保持commander 接收数据和解析指令。

2022-11-10 18:31:50 494

原创 移植 simpleFoc笔记(一)

odrive主板,移植simpleFoc

2022-11-09 19:48:10 2613 2

原创 如何解析bmp文件在液晶屏上显示

以前做嵌入式开发时,在裸奔的单片机、arm7或stm32上,显示图片时方式往是将一张图片通过ImagetoLcd等软件,转换成数据烧录在flash中,显示时调出数据,刷到屏上。但对于后来移植了文件系统,这种做法在维护更换图片时就不直观了,今天主要讲讲在有文件系统后,如何调出bmp图片解析显示液晶屏上。由于手头上没有硬件,就用vs或qt的控件作为一个显示单元,方法:不直接调用系统的接口函数显示图...

2019-05-21 14:24:51 1083

原创 Bootstrap-v1.14代码分析摘要

Bootstrap-v1.14代码分析摘要crt0_gnu.S.section start   定义start代码段         .text      定义为text段,text段保存代码,是只读和可执行的,后面那些指令都属于.text段。        #include "include/part.h"  包含头文件         .globl reset  声明 res...

2018-12-07 16:04:25 219

原创 window下交叉编译arm平台程序,方便驱动调试

1、https://www.veryarm.com/arm-none-linux-gnueabi-gcc 网上下载window安装版:arm-2007q1-21-arm-none-linux-gnueabi.exe2、https://sourceforge.net/projects/mintoolchain/  网上下载min-toolchain_1.2.exe3、将以上两个软件安...

2018-12-06 16:04:06 3209

原创 at91sam9g45板上移植mcp2515网络型驱动笔记

本人在at91sam9g45板应用mcp2515字符型驱动,只能阻塞访问,感觉不太爽,于是花了两天时间移植了下网络型驱动,以便于socket 编程。在这一过程中碰到的问题记录如下:一、移植mcp2515x代码,可以在linux2.6.34版本以上找得到,但往2.6.30里移植时,需要根据编译错误,进行调整和切入。并配置Kconfig和Makefile,由于当时错误情况当时未记录,暂且不表移...

2018-10-25 16:03:28 422

原创 quidway 5700 52c-ei配置 操作

1、清除之前配置reset saved-configuration 选y然后reboot 选n重启2、显示当前配置display cur3、进入配置sys4、划分网段(将36个口划分三个网段192.168.3.0 \192.168.4.0 \192.168.5.0)vlan 3vlan 4vlan 55、配

2016-12-07 07:52:19 629

原创 嵌入式QT configure

./configure -opensource -prefix /usr/local/Trolltech/qt-4.8.6-arm -embedded arm -xplatform qws/linux-arm-g++ -qt-mouse-tslib -I /usr/local/tslib/include -L /usr/local/tslib/lib -nomake demos -nomake e

2016-08-26 12:52:57 451

原创 USB hid通信 间隔报告的困扰

平台:stm32  win7 winxp代码:移植的是keil下例程更改。需求:为了免驱,兼容win7 xp .没有用cdc 模式。而是采用 hid通讯。但是实际中有一个问题就是间隔报告。目前的策略是无协议通讯时,间隔报告无用数据。。用协议通讯时,报告实际协议内容。如果间隔报告太频繁,则又太占usb带宽,如果间隔报告间隔太久,导致协议回应太慢,从而影响通讯速率。如果下载大文

2016-04-15 10:00:26 1880 1

原创 centos5.6升级gcc4.8.2

1、下载gcc-4.8.2.tar.bz22、tar -jxvf gcc-4.8.2.tar.bz23、cd gcc-4.8.24、运行:./contrib/download_prerequisites。5、mkdir gcc-build-4.8.26、cd gcc-build-4.8.2../configure --enable-checking=release -e

2015-05-13 15:58:40 521

原创 ./sysdeps/x86_64/cacheinfo.c:325: undefined reference to `__cpuid'

找到相应目录的这个文件,并在文件前面添加如下代码://add by eric#if defined(__i386__) && defined(__PIC__)/* %ebx may be the PIC register. */#if __GNUC__ >= 3#define __cpuid(level, a, b, c, d) \ __asm__ ("xchg

2015-05-12 10:43:58 913 1

转载 IOCP模型与EPOLL模型的比较

一:IOCP和Epoll之间的异同。异:1:IOCP是WINDOWS系统下使用。Epoll是Linux系统下使用。2:IOCP是IO操作完毕之后,通过Get函数获得一个完成的事件通知。Epoll是当你希望进行一个IO操作时,向Epoll查询是否可读或者可写,若处于可读或可写状态后,Epoll会通过epoll_wait进行通知。3:IOCP封装了异步的消息事件的通知机制,同时封装

2015-05-03 21:03:32 315

原创 Linux下 svn + apache 实现

之前搭svn走的都是走svn协议的。在linux下实现还是比较容易和好用的。现在有一个新的需求。要实现https协议访问主要步骤,网上都有吧,大概是安装openssl httpd 和subversion了。这里不重点讲了。在此主要讲讲配置文件,留下记录,以方便以后查阅使用。其实这个过程还是三个重要的配置文件  /etc/httpd/conf.d/subversion.c

2015-05-01 13:29:55 619

转载 QT TcpServer模型搭建及实现

#ifndef TCPSERVER_H#define TCPSERVER_H//connection类#include #include #include #include #include class Connection:public QObject{ Q_OBJECTpublic: int m_nSocketID;//-1 indicate th

2015-04-15 16:24:33 531

原创 redmine wiki h1样式修改

h1{border-bottom: 1px solid #bbb;}. Redmine使用手册{{>toc}}redmine 是一个灵活的项目管理与缺陷跟踪工具. 它是基于 Ruby on Rails 框架建立的Web的应用程序, 页面符合Web 2.0特性, 同时又简单易用, 给项目管理和进度度量带来极大的好处.h2{border-bottom: 1px so

2014-06-06 19:25:10 958

原创 centos安装oracle笔记

1、创建安装用户、组和目录1.1创建安装用户和组#groupadd oinstall //创建oinstall组#groupadd dba //创建dba组#useradd -g oinstall -G dba oracle //新建用户oracle,设定其主组为oinstall,副组为dba#id oracle //检查结果#p

2014-06-05 11:22:38 552

原创 uip 作为tcp sever 流程测试

之前用过uip作为udp使用,但将它作为server还没有涉及到,最近有个小项目中需要使用。以下针对它作为tcp_server流程测试和探索。struct timer periodic_timer, arp_timer;  //struct uip_udp_conn myUdp_Con;//struct uip_udp_conn *pMyUpd_Con;//

2014-05-20 16:23:50 1704

原创 uip1.0 ping不通解决方案

最近移植uip1.0到stm32上,能udp收发数据,但是ping不通。感觉到很奇怪。以前移植的0.9都能ping通。由于通过抓包分析。发现icmp echo reply返回的校验值为incorrect。如下图:ping request  ping reply:较uip 1.0和uip 0.9移植比较。在uip-conf.h里

2014-05-20 08:33:23 2596

转载 linux 下 oracle 开机启动

以root身份建立开机启动oracle服务的脚本:vi /etc/init.d/oracle,添加如下脚本:复制代码#!/bin/sh#chkconfig: 2345 20 80#description: Oracle dbstart / dbshut#以上两行为chkconfig所需ORA_HOME=/opt/oracle/11gORA_OWNER=oracl

2014-05-07 08:22:22 474

原创 AVR_BootLoader设计及实现

AVR_BootLoader实现笔记---作者:温业中                               2008-8-19  在应用程序中执行下列语句,即可执行boot_loader代

2014-05-06 08:54:26 1112

原创 mysql操作笔记

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY 'root_pwd' WITH GRANT OPTION;FLUSH PRIVILEGES; 执行完后,可以在mysql数据库user表里看到新增了一条记录,并且远程可以访问了 revoke ALL PRIVILEGES ON *.* F

2014-05-06 08:20:47 390

原创 ftp服务器搭建

vi /etc/passwd找到ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin  其中的 /var/ftp改成自己想要的目录,本人在/opt下建立了一个ftp目录,所以改成:ftp:x:14:50:FTP User:/opt/ftp:/sbin/nologin匿名登陆后,就要这个目录下了添加用户user

2014-05-06 08:19:46 668

原创 Redmine安装指南

1、前置条件你的机器上已经安装了 ruby , rake, rails 和 mysql数据库。卸载mysql1、查找以前是否装有mysql命令:rpm -qa|grep -i mysql可以看到mysql的两个包:mysql-4.1.12-3.RHEL4.1mysqlclient10-3.23.58-4.RHEL4.12、删除mysql删除命令:rpm

2014-05-06 08:18:35 821

原创 redmine邮件配置

vi ./config/configuration.ymldefault:  # Outgoing emails configuration (see examples above)  email_delivery:    delivery_method: :smtp    smtp_settings:      address: mail.smart-card.c

2014-05-06 08:16:58 610

原创 安装虚拟机,BIOS中设置提高性能

Virtualization:虚拟化。  Intel(R) Virtualization Technology:虚拟化技术。提供开启(Enable)和关闭(Disable)两个选项。  注:Intel Virtualization Technology(VT)虚拟化技术就是以前众所周知的“Vanderpool”技术,这种技术让可以让一个CPU工作起来就像多个CPU并行运行,从而

2014-05-06 08:14:57 2719

原创 centos 安装postfix dovecot saslauth

由于turbomail安装后,只能限制25个人员使用,并且每次发送时会在内容后加一段限制内容,并且占cpu率高了些。针对以上问题,感觉还是在centos上安装postfix dovecot来构建企业免费邮箱。以下是安装操作笔记。第一步卸载sandmailyum remove sandmail第二步:安装postfix ,dovecot,cyrus-sasl,直接yum安

2014-04-21 13:50:57 660

绿色播放器 没有广告,没有不良弹窗信息 ffmpeg qt

适合于教学播放器 干净 无弹出广告。

2024-03-22

ePlayerinstall.rar

适合于教学播放器 干净 无弹出广告。

2021-09-04

Bootstrap-v1.14代码分析摘要

Bootstrap-v1.14代码分析摘要 对Bootstrap-v1.14启动代码进行分析

2018-12-07

min-toolchain.exe

windows平台下交叉编译环境 安装完成后设置环境变量binutils

2018-12-06

arm-2007q1-21-arm-none-linux-gnueabi.exe

windows 平台安装版 交叉编译工具 安装 完成后需要设置环境变量 bin

2018-12-06

ov7740 pdf

图像采集ov7740芯片数据手册,它支持RAW,RGB,YUV

2014-05-27

android socket编程

此apk安装之后,按home键,即可以设置服务器ip,端口。然后可以用tcp/ip调试工具测试了. 主要体验一下手机远程控制,于是花了三、四天的业余时间弄出了这个apk。 由于第一次接触java及eclipse,如果有什么问题,希望帮忙测试及提出宝贵的意见。

2014-05-14

avr_bootloader.rar

avr bootloader 开发设计 借此发到网上来, 以供像我当初对 boot 认识不深的朋友们阅读,希望能给大家带来帮助。

2014-05-06

oled ssd1305驱动

oled ssd1305驱动代码 刚毕业时做的,没有资源分了,赚点分数

2013-12-16

tea6430驱动

矩阵音频 信号交换 tea6430驱动代码 刚毕业时做的

2013-12-16

tea5767驱动

收音机芯片 tea5767驱动代码 i2c接口,也有三线制接口的代码,需要的私信,现只上传i2c接口的,刚毕业时做的,没有资源分了,赚点分数

2013-12-16

OpenCV 车牌识别

OpenCV 车牌识别 图像处理,自己了解一下图像处理知识,opencv库用的是2.4.6版本

2013-12-11

at91sam9263学习笔记 深入学习Bootstrap uboot 到linux MMU

at91sam9263 Bootstrap uboot 到linux MMU 深入分析

2013-12-06

位图解析显示 libjpeg移植应用

libjpeg移植生成的库在此类应用 此库只包含解压部分。 位图解析 理论验证

2013-11-23

at91sam9263学习笔记

at91sam9263 学习笔记 启动代码分析对初学sam9263的人应该有帮助

2013-11-23

mfc Cserial应用

为了调试硬件,会在mfc做一些调试串口应用,本类主要是移植CSerial类,构建军串口mfc模板 收发接口已经做好了

2013-11-23

libjpeg移植

将 jpegsr9移植到vc环境下,其中把解压部分提练出来了。压缩部分虽然没有去验证,但也分拣出来了,相信和解压部分移植差不多。 解压部分,编成了lib文件夹。供我analyzeBmp工程调用,后续也会上传。验证通过。

2013-11-22

driverTM1638更新版

之前那一版,有人说意义不大,不知道是不能用,还是怎么的,这个是产品中用得很稳定的。希望对别人有帮助

2013-11-22

mx25l1606e 驱动

MX25l1606 SPI Flash驱动代码

2012-10-24

tm1638驱动

stm32驱动tm1638 键盘及led灯的显示

2012-10-24

空空如也

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

TA关注的人

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