- 博客(50)
- 收藏
- 关注

原创 学习嵌入式开发要掌握的几个重要手册
从原子哥那里下载的资料,使用的时候感觉手册齐全,换了一款单片机,却又不知道该如何搜索这些手册了。在交流群讨教了一番,知道了嵌入式开发比较常用的手册,如下:1、数据手册(datasheet):主要是单片机的一些电气特性,硬件工程师常用。2、参考手册(referencemanual):描述具体功能相关寄存器操作,软件工程师常用。3、库使用手册:描述对应版本固件库使用方法及参数说明(仅供参...
2019-04-07 22:53:36
564
转载 rtthread生成MDK工程
直接发链接 https://blog.youkuaiyun.com/Jerry_Han0/article/details/112652922。在用但是不想写,先转载一个,以后自己写,免得文章没了我还找不到。
2025-03-28 09:50:14
31
原创 UCOSIII,lwip使用udp通信,多端口高频通信下,长时间接收出现异常,但发送正常
多线程运行的情况下,需要格外注意对资源进行保护。这里问题出现的原因主要是lwip协议栈的移植不完善,导致了资源的保护不够。问题的解决是通过对源程序的宏开关进行配置,完善sys_arch.c文件,使得网络通信能够正常进行。说点题外的,许多软件包都会有类似于sys_arch.c文件用于接口移植以适应不同的平台,当出现问题时,可以优先考虑是不是该文件不够完善。
2024-11-06 11:21:04
837
原创 发现了DWIN屏的一个BUG,点击弹窗立马点击其他触控控件,只返回触控控件的数据
我点击弹窗,会接收到9个字节的数据,然后返回地址0x2030的数据,然后点击触控控件,会接收到9个字节的数据,然后返回地址0x2031的地址。整个过程一共接收到18个字节的数据。BUG来了:我点击弹窗后迅速点击触控控件,会收到9个字节的数据,然后返回0x2031的地址,同样的过程只是点击的间隔不同,整个过程一共收到9个字节的数据。假设我定义了弹窗的地址0x2030,定义了一个触控控件的地址0x2031。
2024-09-26 19:33:17
217
原创 关于嵌入式中32位时间戳和2038年问题的思考
时,就会带来时间翻转。但实际上rtthread使用的32位时间戳是无符号数,能表示的最大时间大概在2106年,我使用命令设置也证实了这一点。命令设置2105年成功,2107年失败。我们都知道32位时间戳,会带来2038问题。在使用rt-thread的RTC时,我就在思考这个问题,并进行验证。验证过程就不详述了。触类旁通,其他嵌入式系统关于时间戳的转换,大概率也是如此,所以短时间内不用担心2038问题,尽管放心使用就好。32位时间戳带来2038问题的前提是。
2024-04-11 15:19:03
913
2
原创 rtthread下调试stm32F407USB host,能读取到文件列表,但是没法写入和创建文件
调试stm32F407ZE,不能写入数据
2024-03-13 10:57:35
1330
1
原创 Windows 10安装,给你一个纯净的安装方案。同样适用于Windows 7
安装效果安装完成后,桌面只有回收站,就是这么简洁。安装步骤一、在MSDN找镜像点我进入下载地址操作系统->Windows 10选择Multiple Editions的版本(由多个版本集成,安装我们使用专业版,可以避免很多限制,最大程度的使用)复制ed2k那一串下载链接根据电脑选择对应架构,X64或者X86,一般都是X64架构二、使用迅雷下载镜像文件下载ed2k链接,可能由很多种方法,但我用迅雷。可能有朋友说了,哎呀我装个系统还要单独安装个迅雷,好麻烦啊,我直接去“系统之家”或者
2022-05-24 11:54:14
890
原创 嵌入式常用工具软件大全(持续更新~)
汇总单片机开发常用的软件工具,旨在为其他同行带来便利。本人阅历有限,如果有更好更常用的工具,欢迎推荐。
2022-01-07 18:21:00
12148
9
原创 fatfs读取大文件时返回 FR_INT_ERR
问题:读取大文件(超过spiflash簇大小,读取下一个簇的数据)时,返回FR_INT_ERR。调试:调试fatfs代码f_read函数,追踪到clst = get_fat(&fp->obj, fp->clust);返回的clst为0。FRESULT f_read ( FIL* fp, /* Pointer to the file object */ void* buff, /* Pointer to data buffer */ UINT btr, /* Number
2021-12-28 14:40:38
3611
5
原创 s32ds 使用jlink调试报错:Error in services launch sequence
S32DS 使用jlink调试报错:Error in services launch sequence一、解决方法操作如下图二、场景:新建example 工程,jlink连接swd。选择xxx_debug_flash_jlink选项进行调试。弹出出错界面如下图。三、解决过程使用jlink连接单片机。segger的swd连接单片机,红灯闪烁,界面提示连接成功。点击S32DS的调试按钮,jlink灯不闪烁。怀疑S32DS和segger关联性异常,于是寻找路径,并得到解决方法...
2021-11-18 17:24:07
7886
5
原创 单片机工程代码的基本模式
前言文章内容属于个人习惯,在开发中总结,目的是让代码更加清晰和统一。如果有更好的建议,希望不吝赐教。一、外设的初始化在中断上下文初始化所有要用到的外设。即关闭全局中断->初始化所有外设->开启全局中断。我相信这一定是个好习惯。因由:在一次初始化串口时,会进入一次中断,默认接收一个字节数据。在中断上下文中初始化时正常。二、线程的创建线程函数定义在main.c,不同线程调用对应处理的handler或poll函数。main.c#define SYSTEM_MANAGER_TASK_PR
2021-11-12 10:12:19
316
原创 通信组包方式
通信组包的几种方式仅限于我知道并使用的,这里作为抛砖引玉。真诚期望如果有更规范的组包方式,能够指点一二,供后生们引以为鉴。下面按照推荐级别从高到低举例一、使用函数分别组包还没来得及学习,有空找个例子记录一下优点: 1.通过函数名清晰知道在赋值哪个字段缺点: 1.工作量大二、使用enum作下标优点: 1.可以从enum定义的类型命名清楚知道是在赋值哪个字段缺点: 1.工作量大 2.对于复杂协议,比如包内有包,数据长度不定时而且后面有其他字段时,后方字段无法定义位置typede
2021-11-11 15:26:43
412
原创 VS Code 跳转函数时行数不准确
ctrl + 鼠标左键点击函数后,鼠标会跳转到该函数所在文件,但是不能定位到函数所在行数。放个坑在这 ,暂时不知道为什么会出现这样的情况,实在不能解决,就换SI吧
2021-10-20 09:18:57
1624
3
原创 安装s32ds,填写Activation code加载activation.xml的时候,提示“invalid offline response...
安装s32ds,填写Activation code加载activation.xml的时候,提示“invalid offline response…FARILURE”。我出现的原因:卸载后重新安装解决办法:删除文件夹“C:\Users\Administor\AppData\Local\D3DSCache”,再次尝试...
2021-09-27 17:02:05
2522
原创 ubuntu18 已安装pystache,编译仍然提示‘pystache‘ python module found
编译环境:ubuntu18linphone版本 linphone-desktop 4.2.0-beta报错信息: CMake Error at cmake/LinphoneSdkUtils.cmake:218 (message):‘pystache’ python module not found解决方法:更改pip3默认的python版本并重新安装pystache模块。命令which pip3。编辑上述文件sudo vi /usr/bin/pip3。将第一行改为python3.8使
2021-07-09 10:55:31
1471
原创 couldn‘t be accessed by user ‘_apt‘
执行sudo apt-get donwload xxx的时候提示:Can’t drop privileges for downloading as file “打码” couldn’t be accessed by user ‘_apt’. - pkgAcquire::Run (13: Permission denied)。原因:无法以_apt的用户写入,所以网上会有方法chown _apt,更改当前文件夹的所属用户为_apt。解决办法:给下载的目的目录所有用户权限设置为最高,比如sudo chmod
2021-05-31 10:22:21
6801
2
原创 IAR移植letter shell
简介体验过rtt的finsh组件后,总想在裸机工程中跑一个shell来调试程序,于是找到了一个功能强大的嵌入式shell组件,letter shell。点击查看源码这里使用基础版本的2.0。更多内容参考源码中README.md文件一、添加源码到工程二、添加section =“shellCommand”不添加提示报错 Error[Pa053]: section/block has not been declared using #pragma section/segmentshell.c中添加
2021-03-08 15:50:16
934
6
原创 使用VScode代替IAR进行开发-ERROR, Cannot build configuration: Configuration “Debug“ not found
前言使用插件的教程网上很多,就不过多赘述。某天,我在使用官方例程的代码时,在vscode中按ctrl+shift+b,提示ERROR, Cannot build configuration: Configuration “Debug” not found。解决方法一打开工程ewp文件,更改框中内容成Debug方法二打开iar.json,修改config字段为下图框中对应内容总结iar.json字段要与ewp文件中configration下name标签一致...
2020-12-11 10:55:08
1653
原创 安装VM-tools后ubuntu找不到共享目录
安装VM-tools后ubuntu找不到共享目录一、安装参考链接二、上述链接的补充一、安装参考链接https://www.cnblogs.com/zhangjiansheng/p/7507783.html二、上述链接的补充按博主说的,该装的都装了,还是不行,后面又检查了下安装过程,在执行sudo ./vaware-install.pl后在如下选项时,输入yes回车,把之前内容覆盖掉就ok了...
2020-09-21 17:20:45
295
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人