ARM嵌入式
文章平均质量分 58
CedarDiao
80后技术狂,拖延症晚期,强迫症重度患者!
展开
-
解决Arduino DUE的程序必需Reset才能启动的问题
问题现象Arduino DUE,下载程序后,哪怕是几个简单的串口输出测试程序,也会在断电后第一次开机时无法启动。必需手动按Reset,或者重新插拔一下USB来重新上电一下才能启动。问题原因具体原因未明,单据往上查到的记录,可能时SAM3X这颗CPU在开机时收到脏数据导致其一直在下载模式里退不出来。解决办法在主CPU(ATSAM3X)的RESET脚(Reset按键的一个引脚)和GND之间,加一个10uF的电容即可。踩过的坑一开始怀疑ATMEGA16U2的固...原创 2021-04-02 19:31:09 · 1777 阅读 · 0 评论 -
使用Arduino UNO烧录ATMETA16U2
0. 前言因某种原因需要更新我的Arduino DUE上面的USB转串口的芯片ATMEGA16U2里的固件,找了很多资料,下面是操作步骤,记录一下,方便后续查找:1. 用Arduino UNO制作一个烧录器准备一块Arduino UNO的正常主板,用ArduinoIDE烧录一个示例程序:ArduinoISP这块Arduino UNO主板就变成了一个AVR烧录器(ArduinoISP)了。2. 准备命令行烧录工具在ArduinoIDE的安装目录下找到avrdude程..原创 2021-03-29 16:07:23 · 3363 阅读 · 0 评论 -
STM32从零开始 - 第三章:从串口输出HelloWorld
目录前言串口初始化重定向C库的printf函数到串口在main中添加测试代码完整的main.c代码编译下载程序效果扩展实验1:格式化字符串输出扩展实验2:串口输入前言本章我们将使用STM32官方BSP中的串口驱动,在串口上输出HelloWorld。从串口输出HelloWorld的方法1. 简单的将HelloWorld这个字符串从串口里输出。2. 可以将C库的printf输出重定向到串口上本章我们使用第2种方法,因为第一种方法有太多的参考..原创 2020-11-29 23:50:40 · 2227 阅读 · 3 评论 -
STM32从零开始 - 第二章:LED闪烁程序
概述这一章中,我们基于之前用STM32CubeMX产生的项目,使用STM32CubeIDE环境来开发一个LED闪灯的简单程序。打开默认项目先打开STM32CubeIDE,选择File -> Open Projects from File System:点击Dirctory选择之前用STM32CubeMX产生的工程目录。然后点击Finish按钮即可。找到main函数在左侧的项目浏览窗口中,找到刚刚打开的项目,在src/main.c中能找到main函数入原创 2020-11-17 00:44:06 · 6211 阅读 · 0 评论 -
STM32从零开始 - 第一章:开发环境STM32Cube套件
概述STM32的开发环境并不唯一。如果你习惯KEIL开发环境,可以用KEIL环境来开发,虽然代码编辑不太方便,但调试跟踪非常方便。如果你更熟悉gcc/makefile,则可以自己写makefile来搭建自己的脚本编译环境。代码编辑器个人还是推荐SourceInsight或者VSCode效率更高。STM32Cube套装我们要使用的不是上面两个,而是用ST官方维护和推荐的开发工具包:STM32Cube这套工具包含了:STM32CubeMX 这个工具用来根据项目配置产生初始B.原创 2020-11-16 23:47:37 · 1987 阅读 · 1 评论 -
STM32从零开始 - 前言:硬件准备
下面列出此课程中涉及的硬件主板及参考的购买链接。可以自行选择店铺购买,只要参数一致即可。1. STM32F103C8T6 开发板https://item.taobao.com/item.htm?spm=a1z09.2.0.0.14e02e8daDrLMv&id=591061494821&_u=61bg9vk3c54这是STM32平台的一个典型开发板,后续的课程都是使用这个开发板来进行学习和实验。2. 1.44寸SPI接口TFT显示屏...原创 2020-11-11 00:42:08 · 662 阅读 · 2 评论 -
LittleFS移植实践
LittleFS移植实践前言相关资料链接先吐为快移植的要点块设备接口对struct lfs_config的说明read 接口解读prog接口解读erase接口解读关于动态内存前言LittleFS是ARM mbedOS的官方推荐文件系统,具有轻量级、掉电安全的特性。相关资料链接开源项目:https://github.com/ARMmbed/littlefs文档:开源项目中的README....原创 2019-02-19 22:00:43 · 12125 阅读 · 3 评论 -
CMAKE用法示例
CMAKE用法示例命令行相关示例使用cmake创建目录在命令行中传入CMAKE变量让cmake使用指定的编译工具链让cmake产生Unix Makefile以4线程编译目标CMAKE脚本相关示例指定最小的cmake版本号输出日志定义工程名及工程使用的语言类型定义语言标准定义一个变量判断一个变量没有被定义判断一个变量内容与特定的字符串相等设置可执行程序后缀名设置静态库的默认前缀(没有lib)添加编译...原创 2019-02-19 15:46:12 · 2022 阅读 · 0 评论 -
HEX2BIN在WIN7下不能用之后
之前的开发环境一直在WINXP下,有一个工具HEX2BIN.exe,最初也不知道哪里来的,反正是没有源码的了。开发环境换成了WIN7后,其他工具都没大问题,唯独这个HEX2BIN怎么都不能在WIN7环境下运行,各种找,终于找到一个简单直接的办法:在Cygwin及Linux环境下,使用objcopy工具即可:HEX2BIN:objcopy -I ihex -O binary xx原创 2017-03-08 17:20:42 · 4007 阅读 · 0 评论 -
RVCT远程登录时报错的解决办法
<br />由于公司需要,在一台Windows2003上部署了RVCT2.2的环境,要求可以多个用户远程登录使用RVCT编译工具实现代码编译。<br />在网上下载了RVDS2.2的安装包和破解包,在Win2003 Server上安装上了,也破解完成了,本地登录编译代码没问题。<br /> <br />问题在远程登录时出现了,远程登录时使用armcc,tcc等工具时报错如下:<br />Terminal Server remote client not allowed.<br />FLEXlm error:原创 2010-07-14 11:15:00 · 4892 阅读 · 2 评论 -
触摸屏的校准与坐标变换
最近做了一点触摸屏的驱动工作,总结了一下,触摸屏的校准的核心其实就是坐标的变换问题。下面将触屏校准的思路简单记录一下:第一步,记录LCD的4个角上的Touch坐标值(不是LCD坐标值,而是Touch传出来的坐标值)(x1,y1) ----- (x2,y2) | | | | | |(x4原创 2010-04-25 14:20:00 · 6472 阅读 · 1 评论 -
U-BOOT编译环境的搭建及编译步骤
首先个人认为还是得有一台安装了Ubuntu的PC,我用的是Ubuntu9.04,目前用起来“Ubuntu,挺好”。。。 1. 下载U-BOOT最新代码,在下面的ftp路径下能找到源代码 ftp://ftp.denx.de/pub/u-boot/ 目前为止,最新的版本为u-boot-2010.03.tar.bz2 2. 下载ELDK交叉编译环境,在下面的FTP中能原创 2010-04-11 17:06:00 · 3622 阅读 · 0 评论 -
东芝X01T USB HOST数据线制作方法
需要材料:1. MiniUSB接口一个2. USB母口一个3. 5 PIN排线0.5米4. 热熔胶一支以上材料均可在电子市场购买到。 将MiniUSB口对着自己,看到这样的结构:可以看到,MiniUSB口是一个类梯形的结构,在底边上会有5个金属脚,我已经将它们编号,定义如下:1号:VBUS2号:DM3号:DP4号:ID5号:GND 将原创 2009-12-01 11:37:00 · 1965 阅读 · 0 评论 -
VC常用的Windows数据类型与ARM嵌入式C语言的数据类型
由于在ARM嵌入式的工作习惯,在使用VC的时候总是习惯性的要求自己清楚每个变量的数据类型长度。我想这并没什么坏处,但问题就出在WindowsAPI上。在使用WindowsAPI的时候查看MSDN会发现很多Windows自己定义的数据类型,比如HANDLE这样的,咋一接触,让人莫名奇妙,接触久了之后发现,什么HANDLE啊,不就是个指针嘛,搞得这么神神秘秘的,虽然MSDN中有,但我觉得还是有必要原创 2009-08-12 16:26:00 · 1649 阅读 · 0 评论