- 博客(151)
- 资源 (21)
- 收藏
- 关注
原创 全速USB和高速USB的识别过程分析
注:本文是根据网上的一些资料整理而成。1 前言我们知道USB2.0向下兼容USB1.x,即高速2.0的hub能支持所有的速度类型的设备,而USB1.x的hub不能支持高速设备(High Speed Device)。因此,如果高速设备挂到USB1.x的hub上,那该设备只能工作在全速模式下。不管是hub还是设备(device),对于速度的区分是非常重要的,否则,后续的通信根本无法进行。2 全速和低速U
2017-05-09 23:19:21
38524
7
原创 在进行USB CDC类开发时,无法发送64整数倍的数据(续)
1 前言此文延续之前相同文章的话题,是对上篇文章的补充,之所以会有此文,主要是之前发现问题是在STM32F4上,解决方案也是基于CubeF4,但是,当相同问题出现在STM32F0上时,使用之前的代码修改并不能适用,这也就是本文的目的所在。注:需要读懂此文的内容,请先了解上篇文章的内容:[这里写链接内容](http://blog.youkuaiyun.com/flydream0/article/detai
2017-05-04 21:17:51
6000
1
转载 对TTCAN的分析
TTCAN通过独占窗口的方式解决消息传送的确定性问题,提高总线利用率,试图满足应用发展的要求。但是在恶劣环境的高误码率下,传送的可靠性下降,容错的措施不成熟,成本较高。再考虑TTCAN的其他得失,认为它不是性价比高的CAN技术升级方案。
2017-01-23 19:29:46
7754
7
原创 如何使用CubeMx生成一个DFU工程
DFU用来做IAP是很方便的,可以直接通过USB来对APP进行升级,因此,掌握DFU的制作还是挺有好处,特别是使用CubeMx工具可以快速制作,本文将基于STM3240G-EVL评估板来一步一步实现一个DFU的IAP工程。
2017-01-11 21:09:19
9532
1
原创 STM32F412擦除内部FLASH时间过长
1 前言客户反馈在使用STM32F412的时候,擦除sector 8~11发现时间过长,从而导致意外触发IWDG复位。2 问题分析2.1 问题详情通过与客户邮件和电话沟通,了解到客户主要是想使用内部FLASH暂时保存IAP升级时的程序数据,在IAP升级的过程中,需要首先擦除内部FLASH中一块足够大的空间,然后再写入升级数据。客户的工程中有使用到IWDG,喂狗间隔大约1.5S,客户
2017-01-05 22:02:51
19690
13
原创 如何使用CubeMx制作一个基于SD卡的文件系统工程(2)
本文是原文http://blog.youkuaiyun.com/flydream0/article/details/52777923的补充。原文并没有考虑SD卡拔插问题,且SDIO没有使用DMA,本文作为补充,将示例如何改善这两方面的问题。1 SD卡拔插检测FATFS文件系统初始化得修改下:void MX_FATFS_Init(void) { /*## FatFS: Link the
2017-01-03 20:21:27
5963
1
原创 STM32F030低温下RTC不工作
客户反馈在批量生产阶段,发现部分产品的MCU的RTC在低温(0℃)下工作不正常,但是在常温下又是正常的,且其他正常的MCU的RTC在常温与低温下都是正常的。
2016-12-16 22:28:35
9245
7
转载 无法使用内置Bootloader的DFU方式进行固件升级
本文将针对客户无法使用内置Bootloader的DFU方式进行固件升级的问题进行分析。
2016-12-06 20:06:12
6418
转载 串口工作在DMA模式下有时接收异常
1 前言客户反馈在使用STM32F205的串口工作在DMA模式时,有时能够接收数据,有时完全没有数据,但如果换成中断模式来接收又能100%正常收到数据。2 复现现象2.1 问题背景与客户沟通,客户使用的是STM32F2标准库V1.1.0,串口波特率为1.408Mbps,不经过串口RS232,直接连接主CPU和从MCU(STM32F205)的串口发送和接收引脚,如下图所示: 图12.2 尝试重现
2016-11-25 16:56:05
9259
原创 在进行USB CDC类开发时,无法发送64整数倍的数据
前言本文将基于STM32F4DISCOVERY板,介绍如何使用USB的CDC类进行开发,以及在开发过程中碰到发送64整数倍数据时会失败的问题分析及解决方案。
2016-11-17 21:27:42
20033
17
原创 STM32F0xx在增加IAP后APP为什么在main函数中要重映射SRAM
本文很好的介绍了M0的启动过程,以及中断与中断向量表的关系,以及从IAP到APP的过程。并为读者解释了对于M0的MCU在增加了IAP后,为什么要将中断向量表拷贝到SRAM并且将系统重映射到SRAM。
2016-10-13 17:09:31
12581
7
原创 如何使用CubeMx制作一个基于SD卡的文件系统工程
前言本文将介绍使用CubeMx工具从零开始制作一个基于SD卡的文件系统,以便后续使用此功能者参考。
2016-10-10 15:26:51
8578
原创 STM32L152的低功耗测试
本文将验证STM32L32在stop模式下的低功耗电流。在ST官网的STM32L152RE芯片介绍上明确有说明此芯片在stop模式下可以达到560nA,纳安!并且还可以支持16个外部中断唤醒。真的这么强!下面来验证一下。采用NUCLEO-L152板子进行验证,使用CubeMx生成工程代码。在CubeMx中选择STM32L152RE这款芯片,pinout如下设置:如上图,只是简单地将PC13,PB9
2016-09-12 11:06:04
20773
10
原创 STM32L152的IAP移植笔记
本文将针对STML152的IAP移植过程作一个笔记。首先得下载AN3310的示例代码,地址为:http://www.st.com/content/st_com/en/products/embedded-software/mcus-embedded-software/stm32-embedded-software/stm32-standard-peripheral-libraries-expansi
2016-09-09 15:24:18
6974
原创 再谈STM32的CAN过滤器-bxCAN的过滤器的4种工作模式以及使用方法总结
1. 前言bxCAN是STM32系列最稳定的IP核之一,无论有哪个新型号出来,这个IP核基本未变,可见这个IP核的设计是相当成熟的。本文所讲述的内容属于这个IP核的一部分,掌握了本文所讲内容,就可以很方便地适用于所有STM32系列中包含bxCAN外设的型号。有关bxCAN的过滤器部分的内容在参考手册中往往看得“不甚明白“,本文就过滤器的4种工作模式进行详细讲解并使用具体的代码进行演示,这些代码都进
2016-08-25 21:02:36
61661
72
原创 USB库STM32F0x2移植到STM32F070笔记
1. 前言ST官方提供的USB库STM32F0x2_USB-FS-Device_LibV1.0.0 是基于标准库的,适用于STM32F0x2系列MCU,但是对于STM32F070来说,就需要稍作修改,本文就一直到STM32F070作一个笔记。2. 移植从STM中文官网上下载STM32F0x2 USB库,地址:http://www.stmcu.org/document/detail/index/id
2016-07-30 19:22:39
11720
1
原创 使用USART接口进行STM32F0的在线升级(AN4065)-基于标准库的STM32F070的IAP移植手记
1 前言STSW-STM32116是ST官网基于标准库的针对STM32F0的USART进口IAP示例程序,下载链接:http://www.stmcu.org/document/detail/index/id-213120工程原本是针对STM32F051,本文将介绍如何移植到STM32F070,并针对移植的过程中的问题逐个处理。2 KEIL下移植IAP程序一般分为两个,一个是IAP,一个是APP,I
2016-07-28 21:56:45
13002
原创 如何在Linux下格式化U盘以及修改卷标
1 格式化U盘第一步:在没有播放U盘时使用fdisk查看哪些设备如:# fdisk -lDisk /dev/sda: 128.8 GB, 128849018880 bytes255 heads, 63 sectors/track, 15665 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesSector size (log
2014-02-21 11:11:11
16826
原创 Linux下IPC机制之Socket通信总结
Linux下IPC机制有很多种,Socket算得上比较广泛的一种,在不使用像D-Bus之类的重量级消息总线之前采用socket作为两个进程之间的通话算得上比较不错的选择,因此它的用途比较广泛.这里稍微做下总结吧.1:常规用法//初始化MyLink进程int initMylinkMsgServer(){#ifdef LINUX_EVN pthread_mutex_init(&my_link_
2013-12-16 11:56:59
7707
原创 如何修改Linux的系统时间
为什么写此文章: 就为这一个问题硬折磨了一下午.如果你有这么一件事要做,那么没经历过的人一定会郁闷,这就是为什么写下的理由.假设我们已经知道要设置的时间为Year,Mon,Day,Hour,Min,Sec,因此需要写这么一个修改Linux系统时间的函数:这里的年是指没有千位和百位的,比如2013,这里输入为13其实这里也可以不设置的settimeofdayvoid SetSysTimeInfo(u
2013-12-10 09:23:10
2354
原创 RTT下spi flash+elm fat文件系统移植小记
背景:MCU:STM32F207SPI flash: Winbond W25Q16BVOS: RTT V1.1.1bsp: STM32F20x1 将spi_core.c,spi_dev.c及spi.h三个文件加入工程spi_core.c,spi_dev.c这两个文件位于RTT\components\drivers\spi目录下,而spi.h头文件位于RTT\\components\drivers\
2013-08-24 23:32:39
15621
原创 在windows下如何配置RTT开发环境?
之前一直使用MDK查看和编译RTT的源码,这几天无聊想起RTT官方提供使用scons工具编译RTT,因此想试试这种方法,做下此笔记,以供入门者参考.1 下载安装Python论坛中很多人说要只支持Python2.7因此下载此版本.打开网址:http://www.python.org/getit/
2013-08-19 17:46:45
9391
1
转载 autoconf和automake
来自:http://tigersoldier.is-programmer.com/show/1904.htmlautoconf和automake是啥?这要从类Unix系统的程序编译说起。一般一个真正的工程肯定不只一个文件,而多个文件的编译是件很麻烦的事情(最简单的就是用gcc或者g 后面接着多个文件),再加上要推出跨平台的(一般只是跨不同的类Unix平台),还有啥包依赖啊什么的,很麻烦嗯。于是就有
2013-07-24 14:47:49
2658
转载 关于开源授权协议 GPL 和 LGPL
本文转自:http://www.oschina.net/question/12_2663GPL 是 GNU General Public License (GNU 通用公共许可证)的缩写形式;LGPL 是 GNU Lesser General Public License (GNU 宽通用公共许可证)的缩写形式,旧称 GNU Library General Public License (GNU
2013-07-18 17:34:08
2902
原创 如何烧录tizen镜像文件?(图文教程)
上一篇文章我已讲过如何制作镜像文件,这一章我将继续讲解将生成的镜像文件烧录到设备中,并运行tizen操作系统.1 烧录方法的主要思想概述本文所讲述的烧录主要是基于从U盘启动,在U盘启动的系统如Ubuntu下进行命令行操作,将镜像文件复制到硬盘(通过dd或bmaptool工具)来实现的。2 烧录前准备工作在烧录前得准备两项工作:1> 准备一个启动盘(用U盘制作),里边带Ubuntu系统。2> 将镜像
2013-07-03 08:54:44
5197
1
原创 如何制作tizen镜像文件(图文教程)?
之前已讲解了如何下载及编译tizen源码(http://blog.youkuaiyun.com/flydream0/article/details/9004746),接下来我将讲解如下将制作镜像文件。1 安装mic工具tizen是使用MIC工具来制作其镜像文件的,因此我们首先得安装它。$ sudo apt-get install mic查看MIC工具的当前版本:$ mic --versionmic 0.19
2013-07-01 08:48:55
5163
翻译 MIC Image Creator使用说明
1 概述Mic工具是用来给tizen制作镜像文件的工具。通过此工具,我们可以制作各位类型的镜像文件,如live CD镜像,live USB镜像,针对KVM的raw镜像,针对IVI平台的loop镜像,及chroot的fs镜像。也可以通过MIC的增加指令chroot指令,chroot into到镜像文件中。除此之外,MIC工具还可以将上述各种镜像文件之间进行格式转换, 这是非常有用的工具。2 安装MI
2013-07-01 08:48:23
5487
原创 如何编译tizen源码(图文教程)?
前一篇文章已经介绍了如何下载tizen源码(http://blog.youkuaiyun.com/flydream0/article/details/8996654),下面我将继续讲述如何编译源码.1 下载安装gbs编译工具tizen源码是用gbs工具进行编译的,因此我们首先得将此工具下载下来,并且设置好。下面以Ubuntu12.04版本为例.1.1 添加gbs的源用vim打开source.list文件:$
2013-06-21 16:06:17
9195
翻译 gbs remotebuild使用说明
本文件从:https://source.tizen.org/documentation/articles/gbs-remotebuild翻译而来。1 远程构建使用remotebuild子指令将本地git源码推送到远程OBS服务器上进行构建。有关remotebuild子指令的相关帮助请使用:$ gbs remotebuild --help在使用gbs remotebuild之前,你必须准备好本地的g
2013-06-21 09:49:17
3311
翻译 gbs build使用说明
注:本文从:https://source.tizen.org/documentation/articles/gbs-build 翻译而来.1 前言通过使用gbs build指令,开发者可以在本地编译源码和生成rpm包。通过$ gbs build -h指令可以查看gbs build相关的使用说明。2 gbs build工作流程2.1 gbs build的输入gbs build包含以下几个部分:它包含
2013-06-21 09:24:05
4796
翻译 GBS文件配置概述
本文从:https://source.tizen.org/documentation/reference/git-build-system/configuration-file翻译而来。1 概述GBS为编译tizen源码的工具,GBS的配置文件包含GBS所有的配置信息.例如编译后的根目录;gbs build的远程repo url地址;gbs remotebuild的OBS服务器等。2 GBS如何如
2013-06-08 21:16:03
5589
原创 如何下载tizen源码(图文教程)?
当前tizen发布的最新源码版本是2.1,本文将以图文教程讲述如何下载tizen源码,关于如何编译后述文章将讲解。1 注册及设置gerrit1.1注册邮箱首先打开https://source.tizen.org/,在右上角点击注册一个你的用户,成功注册好后,再点击https://review.tizen.org/gerrit登陆gerrit,将出现如下界面:以之前注册好的用户名以密码登陆。注:ti
2013-06-05 21:14:43
15015
20
原创 如何解决Agent admitted failure to sign using the key.问题
首先确保ssh-keygen产生的id_rsa,id_rsa.pub都已正确放在~/.ssh目录下,然后输入:$ssh-add输入你的ssh密码,屏幕显示:Identity added: /home/user/.ssh/id_rsa (/home/user/.ssh/id_rsa)再次尝试连接就OK了。
2013-05-08 17:29:14
2747
原创 USBCAN-2E-U与USBCAN-II的使用区别
USBCAN-II已经停产,目前它的升级版本为USBCAN-2E-U,之前我有过一篇文章讨论USBCAN-II的使用方法,见:点http://blog.youkuaiyun.com/flydream0/article/details/8088248.本文的目的是讨论两者在使用上的区别,以便将原有的USBCAN-II的源码移植到USBCAN-2E-U上来.仔细看了下USBCAN-2E-U的开发手册,发现相对于U
2013-04-25 17:16:29
18923
2
原创 rt-thread组件之elmfat文件系统浅析
上一文主要是讲到RTT的文件系统顶层dfs框架及其实现,接下来这篇博文主要是讲述其中间层的一个具体文件系统--elmfat文件系统。rt-thread的elmfat文件系统是一个开源的小型嵌入式文件系统,它的官网是http://elm-chan.org/fsw/ff/00index_e.html,RTT当前版本V1.1.0版本下的elmfat文件系统是从它的R0.08b版本移植而来。本文不打算详情
2013-04-23 22:11:30
15415
原创 rt-thread组件之dfs文件架构浅析
RTT的文件系统主要分为三层,如下图: 图1RTT的用户手册中也有介绍到,最上层一套面向嵌入式系统,专门优化过的虚
2013-04-23 17:53:45
17214
1
STM32F407_SDIO_Test_AutoDetectSdCardIn_TwiceMountIssue_DMA
2017-01-03
STM32F070_USB-FS-Device_Lib V1.0.0
2016-07-30
STM32F20xFlashLoader
2013-04-16
VA_X_Setup1845
2011-11-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人