自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

EmbeddedOsprey

嵌入式软件开发

  • 博客(193)
  • 资源 (13)
  • 收藏
  • 关注

原创 开源云盘工具,你值得拥有 - 自建云盘

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey filebrowser一位道友给鱼鹰分享了一款开源云盘工具,使用体验非常好,比鱼鹰 nginx 搭建的网页资源分享方式好多了。arm 工具下载地址如下(其它平台可以在 github 主页找)https://github.com/filebrowser/filebrowser/releases/download/v2....

2024-04-15 08:40:37 122

原创 2023年代码输出总结

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey大家好,我是鱼鹰。从过年到现在,基本没什么输出,小说、微信、头条视频刷一刷,时间就悄咪咪地过去了。还好最近在准备第二期的培训课程,有外部因素推动着自己,终于可以逼着自己强行进入工作状态了。本人自制力还是比较差的,也是比较懒的那种,但是又有比较多想法,因此开了这个课,除了赚点辛苦钱,更重要的是能把自己想法实现出来。鱼鹰不想...

2024-03-16 17:30:29 841

原创 单车变摩托-自建服务器!!

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey导读前段时间家里搞了一台自用服务器家里宽带搞个服务器,YYDS(一)使用树莓派 3B+,16 G(TF卡) + 1G 配置,增加各种功能后,明显感觉不够用了。于是准备使用 树莓派5 升级一下服务器。配置如下:2.4GHz 四核 64 位 Arm Cortex-A76 CPUVideoCore VII GPU,支持 Op...

2024-03-04 08:50:44 874

原创 绝了,还能这么转化十六进制字符串-C语言骚操作

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey前段时间移植了 tinyUSB 开源库,使 STM32F013C8T6 成功模拟了 7 个串口 独立的 CDC 设备(参考了知乎上一篇文章,不过那个实现还有一些问题,并且不能单独设置每个串口的波特率)。后面又移植了 lwip ,成功实现了虚拟网络适配器:于是准备看看源码实现,突然发现一条看不懂的代码:_desc_str...

2024-01-09 08:50:10 442

原创 gitlab 8.13.0 关闭注册功能

关闭注册

2024-01-04 20:24:09 689

原创 又是编译器的锅?全局变量怎么就从栈里取数据了?!

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey一个学员项目上需要完成app升级功能,但是跳转后直接 hardfault,项目紧急,只能找上鱼鹰加急处理(课程福利)。这种问题我都是比较自信的,M0+ 内核,感觉问题不大,只是没想到学员公司保密性比较强,不能远程控制电脑,只能微信视频进行指导调试,折腾许久,才最终定位跳转地址出现问题。static uint32_t j...

2023-12-26 08:55:16 400 2

原创 鱼鹰:理想很丰满,现实很骨感

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey从八月中旬到现在,四个月的时间,嵌入式进阶课程也快接近尾声,有些学员收获比较大,上课也很积极,但大部分学员因为各种事情,没怎么上课,感觉并没有多少提高。几乎每周都会安排答疑,但学员真正能花在学习上的时间少的可怜(鱼鹰花在这个课程的时间可能比学员还更多,写了很多代码,以帮助大家更好的学习),提问的人也比较少,就像学生时代一...

2023-12-18 09:00:31 796

原创 如何绑架C语言标准库函数?

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOspreyC语言动态内存可以使用 malloc 标准库函数,而 C++ 会使用 new 关键字申请,裸机情况下一般没有问题,但是在 RTOS 情况下,就需要考虑资源保护的情况,比如多个任务同时调用 malloc 函数申请内存,如果说不用关中断或互斥量之类的手段进行保护的,有可能同一个内存块被两个任务申请,动态内存内部维护的一些全局...

2023-11-01 08:25:49 80

原创 坑!const 声明的变量一定只能读吗?

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey鱼鹰一直以为 const 声明的变量一定是只读的,并且也一定会存放在 FLASH 中,直到在 103 的 map 文件中看到了这个变量:声明如下(函数体外):__I 声明如下:可以看到,虽然使用 const 修饰变量为只读,但是 MDK 编译器仍将这两个数组放在了 RAM 区(全局变量),这意味着这个变量仍可写(通过指针...

2023-10-07 08:58:40 105

原创 谈谈看门狗优先级

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey 前言一个学员在学习 uCOS 系统过程中,对看门狗任务的优先级产生了疑惑,到底该把喂狗任务优先级设置成最高还是最低好?这里谈谈鱼鹰个人看法,首先给出结论,最低,甚至是在空闲任务运行(使用钩子函数)。理由首先我们要知道看门狗的工作是什么?为什么要设置看门狗。很多产品出厂时,都会开启看门狗,这是产品运行的最后保障,可以...

2023-09-13 09:01:23 227

原创 linux can 接收过滤器设置

设置只接收固定的标准帧和扩展帧(目标位完全匹配,其他 id 位可随意)

2023-08-02 22:03:28 598

原创 关于 GD32 虚拟串口的两个 BUG

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey最近鱼鹰在搞调试器,折腾了好多天终于理解了 MDK 、下载算法、调试器、MCU 之间的关系。简单来说,就是,调试器作为 USB 转 SWD 协议的转换工具,MDK 通过 USB 驱动这个工具,下载算法包含了一些 MCU 内部 FLASH 擦除、编程代码,和普通代码不同的是,该代码可以下载在任意位置运行。如果需要校验,还会...

2023-07-18 17:35:12 645

原创 本跳转程序靠bug运行,请不要优化

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey图片来源于网络绝大多数产品开发,软件一般都会设计成 boot + app 的形式,这是方便后续软件更新,否则更新会变成一个很麻烦的事情。网上随处可见的跳转程序大概如下:#define APP_START_ADDR 0x08040000 voidjump2app(){typedefvoi...

2023-07-11 11:30:30 609 1

原创 动态域名服务 DDNS,YYDS(四)

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey前面的笔记《如何像访问百度一样访问家里的服务器?(三)》已经通过公网 IP +桥接,完成了基本功能,已经可以通过公网 IP在全国各地访问家里的服务器了。但是有个麻烦的地方是,虽然运营商给我的是公网 IP,但却是动态的,两三天就更换一次,因此我们需要一种服务,实时告诉我们家里宽带的当前 IP 是多少才能访问。我们可以让...

2023-06-13 11:31:00 470

原创 如何像访问百度一样访问家里的服务器?(三)

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey在前面的两篇笔记《家里宽带搞个服务器,YYDS(一)》《家里宽带申请公网 IP(二)》,介绍了如何获取公网 IP,算是打好了基础。也有很多道友说,很难获取公网 IPv4,可能每个地方政策不同,运营商不同,政策也不同,因此如果确实有需要的话,可以更换运营商,或者使用 IPv6(这个一般运营商都会给,如果没有,可以打客服问问...

2023-05-24 11:30:46 452

原创 家里宽带申请公网 IP(二)

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey在之前的《家里宽带搞个服务器,YYDS(一)》笔记中大概介绍了,因为现有的 IPv4 的地址资源枯竭,导致大部分网络都是局域网,这种联网方式可大大保护局域网中的设备,但是对于想暴露服务器到互联网中的用户来说,就很不方便了。因此,很多用户,因为有服务器的需求,不得不每年付费购买 云服务器。对于家里有宽带的用户来说,完全可以...

2023-05-17 11:31:44 1316

原创 家里宽带搞个服务器,YYDS(一)

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey拥有一个家庭宽带18 年家里弄了一根光纤,算是和全世界连通了。不过一直以来也只是家里手机上个网,看个监控,并没有很好的利用上。最近研究一款无线调试器,需要一个服务器。购买云服务器也是一个不错的选择,不过鱼鹰不想每年花那冤枉钱,毕竟鱼鹰所需的服务器性能不需要多好,够用就行。刚好最近公司项目上也在研究网络相关的问题,对网络的...

2023-05-08 11:30:30 316

原创 MDK 须知的几个特殊符号

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey有的时候,我们需要通过脚本的方式在 bin 文件前加一些头(比如版本号、校验),因此今天鱼鹰分享一点小知识。hex 转 bin 的方法太多了,就不多介绍:《功能强大的 HEX 开源转换工具,你值得拥有》《Keil 生成 Bin 文件最正确的姿势》《bin 和 axf 文件的生成》可以看到用了一个奇怪的符号 !L。另外《B...

2023-04-23 11:30:03 136

原创 数组越界是一颗隐形炸弹

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey数组越界问题大家在软件开发过程中应该都司空见惯了。如果你没见过,大概率是一个新手,工作经验不足,倒不是说你自己会生产这种 BUG,但有些同事却可能是 BUG 搬运工。在鱼鹰五年的工作开发过程中,除了在北京刚毕业那会没遇到这种隐藏问题(碰到的都是自己生产的 BUG,不过自产自销,也还行),在深圳的这几家公司都遇到了数组越界...

2023-04-17 08:30:19 118

原创 独立看门狗的一点经验

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOspreystm32基本都内置两种看门狗(另外还有外置的看门狗芯片),窗口看门狗和独立看门狗,两种看门狗的使用方法和应用场景各不相同,今天主要讲讲最常用的独立看门狗(工作这么多年,没见谁用过窗口看门狗,这种估计在时序严格的场合会用上)。所谓独立(Independent watchdog),就是该看门狗有独立的时钟源供看门狗使用,V...

2023-03-27 08:30:47 97

原创 周末两天入门 PCB 设计

最近突然想自己画点简单的板子,自己DIY一下,于是花了两天时间(2 倍速)看完了杜洋工作室的入门视频(以前付费视频,目前B站可免费观看),收获很大,觉得算是入了个门。照着视频画了一个简单的pcb,同时熟悉了一下操作,挺有成就感的事情。简单说说自己的入门心得。我觉得学习一项新技术,有老师手把手教是最好的。以前在大学创新实验室的时候,也简单的接触了AD 画图软件,基本安装软件和使用方法懂一些,所有入门...

2022-10-17 09:47:13 371

原创 FreeRTOS 中如何定位 HardFault?

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey大家好,我是鱼鹰,因为一些事情,这次更新来的有点迟。但还是争取大家每次都能从鱼鹰公众号中学到一些实实在在的技术,提高自己的核心竞争力。感谢大家一直以来对鱼鹰的支持。今天继续聊聊开发中常见的 HardFault,这个问题应该从学习 STM32 开发以来就一直伴随着我们,很多人遇到这种问题也是不知道该如何定位。如果只是独立开...

2022-09-19 08:40:45 1382

原创 Git 常用设置|别名、邮箱、免密

git 安装后必备操作

2022-09-17 10:04:28 304

原创 KEIL 两个高效的编辑技巧

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey大家好,我是鱼鹰。今天为大家分享两个鱼鹰偶然发现的编辑技巧,可以加快大家的编辑速度。关于编辑技巧,鱼鹰在之前的笔记中有介绍《KEIL 那些编辑技巧与方法》,这里继续分享。在这里说明一下,虽然 KEIL 的编辑功能一直为人诟病,很多人转而选择 VSCode 之类的平台,总在说 KEIL/MDK 的...

2022-07-18 08:36:39 364 1

原创 强!!如何测试自制调试器的功能?

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey自制了一个调试器,该如何确定这个调试器是否正常工作呢?官方给了一个调试工程,专门用于测试调试器是否正常(所有 MDK 支持的调试器都可以使用该工程测试)。为了测试 103 的芯片,我们需要稍微修改一下工程(原来的工程不适合)。工程路径如下(这里的 5.5.1 根据实际安装版本找):C:\Keil...

2022-06-27 08:40:22 204

原创 联合体原来是这么用的!

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey不管是线程间、还是设备间通信,都需制定一个通信协议,规定数据的格式、内容等。线程间通信因为在芯片内部传输,基本可以排除数据干扰导致的异常,所以通常会设计的比较简单,但是设备间的通信(不管是无线还是有线)就会复杂一些,一般都包含帧头、校验位之类的,因此鱼鹰在一篇文章中介绍了一个基本的串口协议框架《...

2022-06-06 08:45:22 143

原创 关于自制调试器的那些事儿(一)

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey大家好,我是鱼鹰。最近鱼鹰想自制一个 CMSIS-DAP 的调试器,并且准备采用蓝牙的方式无线调试,所以把官网的关于 CMSIS-DAP 的资料大体都过了一遍。除了 SWD 通信那个 DAP_Transfer 命令之外,基本上理解都差不多了。官网 DAP 命令解释如下链接:https://www...

2022-05-23 08:45:48 421

原创 都是串口工具惹的祸

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey五一假期这几天,鱼鹰准备写一个方便使用、移植的串口框架(适用于 STM32、GD32),花了几天时间,终于把 DMA 发送、接收的框架写好了,进入了最终的测试阶段。于是鱼鹰使用 XCOM 这个串口工具准备测试一波。毕竟之前用的时候,感觉也还行,没啥大问题,比较稳定,一般串口稳定性测试的时候都用它...

2022-05-06 08:45:00 165

原创 代码调着调着就失联了???

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey不知道你是否有这样的体验:代码单步调试,调着调着,出现了下面的提示框:很多时候,莫名其妙,一般情况,只能退出调试,再重新进入。一般没啥影响,但有的时候,我们是为了抓 BUG 现场才进入的调试模式《BUG 终结者,现场抓获!|颠覆认知》,一旦因为失联导致不能继续调试,估计得骂娘了(BUG 容易复现...

2022-04-21 08:40:00 132

原创 什么,这个 C 语言大坑你没见过?

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey开发过程中,你是否会发出“基础不牢,地动山摇”的感慨,我相信,只要有经验的工程师,应该都有过。鱼鹰曾经因为一个很基础的知识,差点毁了整个项目,这不是危言耸听。因为这个代码用于整个系统自检,一旦运行出错,整个系统就废了。为了不让别人篡改鱼鹰的代码,鱼鹰设计了多套机制,其中一个就是定时检查关键代码是...

2022-04-12 08:45:00 149

原创 如何排查串口通信问题?

传输来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey工作过程中,总是会遇到各种各样的通信问题,除了掌握软件知识,必要的硬件技能也必不可少,比如万用表、示波器、逻辑分析仪等,如此才能做到精准定位,早点打卡下班~~鱼鹰根据个人多年的嵌入式开发经验,在此斗胆总结一番,希望可以给一些新人提供排查方向。在此,以串口通信为例,介绍排查步骤或方向:红色代表...

2022-04-06 11:50:00 7389 1

原创 顺序时间戳检查脚本

#!/bin/bashfilename=$1start_line=$2if [ -z “$filename” ]; thenecho "filename is null "exit 1fiif [ -z “$start_line” ]; thenstart_line=“10000” # 默认查看行数echo “start line is ${start_line}”fiecho ${filename}time_value_last=“0”for line in cat ${fil

2022-04-05 11:09:37 164

原创 小坑怡情,大坑伤身之新版 MDK 自动复位

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOspreyMDK 5.x 大大小小升级了不少版本,但鱼鹰很少去主动更新,一般用认为比较稳定的,但是老版本虽然稳定,但有很...

2022-03-20 21:00:00 273

原创 如何优雅的使用MDK解除芯片读保护?

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey经历过产品量产的同学应该都知道,芯片一般会在出厂时开启读保护:要么在代码中加入,要么在烧录程序后人工通过软件开...

2022-02-28 08:30:00 1584 4

原创 见鬼,过年回来后板子就 hardfault 了?

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey快一个月没有更新了,回家之前给自己安排了很多任务,然后回到家之后电脑就没有打开过,啥也没干,不知道有多少人回家...

2022-02-21 08:45:00 958

原创 一个半小时,远程解决一个 APP跳转 BUG

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey昨天有一位读者刚关注鱼鹰,并且很快加了鱼鹰微信,描述了以下问题:当时也没有细看问题,只是大概看了一下,然后简单...

2022-01-26 21:19:02 554

原创 断言不是错误!

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey断言机制估计很多道友都用过,在 ST 的标准库中,经常可以看到它的身影:它的实现方式也是非常简单的,就是通过 ...

2022-01-18 08:50:00 169

原创 7 年了,没见过代码中出现过两个感叹号

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey有半个多月没更新笔记了,广告少,动力也明显不足了,挺安逸的,毕竟最近鱼鹰也有其它事情要忙,主业要紧。在此感谢大...

2022-01-06 08:55:00 161

原创 卧槽,自定义打印函数还能这么完?

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey刚开始学习串口的时候,为了更好的格式化输出数据,一般会选择重定向 printf 函数,即使用 printf 打...

2021-12-20 21:43:53 338

原创 不用工具,合并 bootloader 和 APP 文件就是这么简单!

来源:公众号【鱼鹰谈单片机】作者:鱼鹰OspreyID :emOsprey只要你经历过稍微复杂一点的项目,一般都会要求 BOOT 和 APP 两个程序,即是为了方便客户功能升级,也是为...

2021-12-14 08:00:00 2107 4

makefsdata2.2.1.exe

lwip 2.2.1通过 vs2020 生成的可执行程序

2024-01-07

C8T6 核心板 CMSIS-DAP 固件源码

C8T6 的固件,直接下载 HEX 文件秒变调试器,使用 PB8(CLK) PB9 引脚。也可以修改成野火调试器的引脚,测试过没有问题。

2022-06-05

jlink V9固件,205RG.rar

未测试过

2021-08-10

linux-2.6.39.tar

O0 编译,使用eclipse 调试,源代码分析书籍 《ARM Linux内核源码剖析.pdf》分析启动代码 2.6.30

2021-07-29

jz2440_tesk_INT.rar

jz2440 V3 MDK 按键中断实验,关闭中断需要特权模式

2021-07-02

jz2440_teskmmu.rar

https://blog.csdn.net/weixin_42876465/article/details/118397453

2021-07-01

跟我一起写Makefile.rar

带书签

2021-06-02

qemu A9 模拟内核与文件系统(busybox)

qemu 模拟 A9 内核,里面包含源码与已经制作好的根文件系统、内核

2020-12-28

jz2440 linux2.6

卫东山 jz2440 V3,有源码,有补丁,还有打好补丁的源码 解压源码后,进入目录下打补丁: patch -p1 < ../system/linux-2.6.22.6_jz2440_v2v3.patch cp config_ok ./config make uImage 生成内核镜像

2020-12-24

jlink ubuntu 驱动

JLink_Linux_V692_x86_64.deb

2020-12-23

s3c2440.zip

JZ2440 复位跳转 SDRAM,实现自动跳转功能,不用每次需要重新运行代码时下载代码 JZ2440 复位跳转 SDRAM,实现自动跳转功能,不用每次需要重新运行代码时下载代码

2019-11-10

openocd-0.10.0-Osprey.zip

安装软件资源,适用于韦东山的开发板openjtag,openocd 0.10.0

2019-11-01

AN2668_通过过采样来提高STM32的ADC精度 - 应用笔记.pdf_英中.pdf

STM32官方应用笔记翻译版。 基于 STMicroelectronics STM32F1 系列、STM32F3 系列和 STM32Lx 系列 Cortex -M3 的微控制器 嵌入了一个 12 位增强型模数转换器,采样速率最高可达 Msamples/s。对于大多数应用,这种分辨率已 经足够,但在某些需要更高精度的情况下,可以采用过采样和抽取输入信号的概念,以节省外部模数转 换器解决方案的使用并降低应用功耗

2019-05-09

NRF24L01+ 源码

1、完整的 NRF24L01+ 驱动源码,轻松切换发射端和接收端 2、较为规范的代码书写方式 3、详尽的中文注释,快速熟悉代码 4、中文部分翻译请看本人博客,需要全部翻译+测试则移步微信公众号

2018-12-18

空空如也

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

TA关注的人

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