自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zoomdy's blog

嵌入式系统

  • 博客(310)
  • 资源 (17)
  • 收藏
  • 关注

原创 Linux 命令行批处理图片,批量去除截图的无用部分

简单介绍图片批量编辑工具 mogrify。

2022-03-26 14:16:15 1292 2

原创 RISC-V 和 Cortex-M 的异同

RISC-V 和 Cortex-M 都属于精简指令计算机(RISC),但是二者之间还是有很大区别的。

2022-03-22 20:19:57 4003 2

原创 检查FE310-G002片内存储器的内容以及Red-V Thing Plus的Flash内容

GDB 连接 FE310-G002,并检查其内置存储器的内容。Red-V Thing Plus 外部的 SPI Flash 布局与 HiFive1 Rev B 一致。0x20000000 处存储 boot loader,用户程序从 0x20010000 开始存储。

2022-03-05 10:03:42 659

原创 使用 CMake 作为嵌入式开发构建工具执行交叉编译

默认情况下,cmake 使用本地编译器,如 gcc,而嵌入式开发往往使用的是交叉编译器,如 riscv-none-embed-gcc ,cmake 不知道要使用哪个交叉编译器,因此需要明确地告知 camke 。此外,嵌入式开发最终需要的可能是 binary 或 hex 格式的烧录文件,而不是 elf 格式的可执行文件,因此最终需要对生成 elf 文件执行 objcopy 得到所需的烧录文件。

2022-03-04 09:59:25 4354

原创 risc-v gcc 编译 atomic 指令时产生 illegal operands 错误的解决办法

凡是 Load、Store 类型的指令,汇编指令和 Reference Card 的格式是不一样的,存储地址的那个寄存器要加上圆括号,而且要放在指令的最后。

2022-03-02 20:51:54 2420 3

原创 riscv-rust-quickstart 依赖关系

riscv-rust-quickstart 依赖关系。

2022-03-01 17:04:59 198

原创 Eclipse集成PC-Lint静态检查工具

Linticator 插件将 PC-Lint 集成到 Eclipse,但不是免费的,不过有30天试用期。

2022-02-26 17:52:05 393

原创 消除 impure_data 数据

impure_data 数据来源于 libc 使用链接选项 `-nostartfiles` 消除。

2022-02-26 17:41:30 465

原创 开源模拟器 Renode 和 QEMU 的对比

Renode 针对物联网应用,QEMU 针对 PC 模拟器。

2022-02-26 17:39:41 1513

原创 Protothreads:临时变量的可用与不可用

能不能用临时变量的基本原则是:再次进入协程时,应当能恢复上次退出协程时的状态。

2022-02-26 17:36:59 215

原创 Protothreads:switch 语句的可用与不可用

只要 `switch` 语句块里面不出现 `PT_*` 系列宏,那么是可以使用的。

2022-02-26 17:35:07 225

原创 RISC-V 使用位域

RISC-V 的位域:低位在先

2022-02-26 17:25:46 302

原创 Protothreads:常见的错误

Protothreads:常见的错误

2022-02-26 17:22:20 204

原创 MATLAB常用绘图命令

MATLAB常用绘图命令

2022-02-26 17:18:42 2889

原创 Renode 的命令

在 Monitor 窗口连续按 TAB 键两次,会将当前可用的命令和实例罗列出来。

2022-02-26 17:16:49 315

原创 FE310三个版本的差异

FE310到目前为止(2022年2月24日)出了三个版本,分别为FE310-G000 、FE310-G002 、FE310-G003,总体上差不多,但是又有一些细节上的差异。

2022-02-26 17:15:18 441

原创 RISC-V 编程之 Frame Pointer和 backtrace

RISC-V Frame pointer

2022-02-25 20:22:49 2281 1

原创 PSpice 使用中的若干问题

PSpice 使用过程中碰到的若干问题及其相应的解决办法。

2021-11-22 20:37:25 2835

原创 C语言标准ISO9899的各个版本

C90、C99、C11、C18

2021-07-01 17:06:09 2001

原创 为什么C语言会有整型提升(Integral Promotion)?

短整型的运算不能直接被翻译成机器指令,只能首先提升成 int(32位)或 long(64位)类型才能被翻译成机器指令。

2021-06-10 15:45:57 495

原创 RVBoards D1 CPU 使用率指示器

https://gitee.com/zoomdy/rvboards_d1_cpu_usage_indicator 跑在 RVBoards D1 单板机上的 CPU 使用率指示器。

2021-05-30 16:29:29 198 1

原创 使用 xrdp 远程桌面连接 RVBoards D1 哪吒开发板的桌面系统 lxde

sudo apt-get install xrdp

2021-05-28 13:30:45 489

原创 不用中断实现嘀嗒计数器

用定时器的counter寄存器直接作为嘀嗒计数器。

2021-04-27 20:36:48 343

转载 嵌入式硬件抽象层HAL的设计实现

硬件抽象层对下必须检验查看目前硬件配置的能力与限制,以及将来可能的扩展性,对上得倾听系统软件得需求。简单得说,HAL就是我们系统的“硬件”,而“硬件”的功能就是它所提供的API,即所有上层的程序完全不需要知道硬件与驱动程序的细节,只能通过HAL来操控硬件。

2021-03-30 16:12:13 587

原创 NPN和PNP三极管搭建推挽电路实验

用NPN和PNP三极管效仿NMOS和PMOS管搭建推挽式反相器。

2021-03-13 10:42:28 3979 4

原创 keil、MDK、armcc 内存屏障语句

__schedule_barrier(); 等同于gcc 的 __asm__ __volatile__("": : :"memory")

2021-03-11 12:39:58 1334

原创 PSpice WARNING(ORPSIM-15220): Error in Open Alias File

网络名与SCHEMATIC1.ALS文件中的关键字重名。

2021-02-28 19:19:26 1212 1

转载 交流耦合仪表放大器(AC-Coupled Instrumentation Amplifier)

TI 参考设计,使用 INA128 仪表放大器、OPA188 运算放大器做交流耦合。INA128使用直流耦合,OPA188 做积分并连到 INA128 的 Ref 脚以消除直流分量。

2021-02-25 10:55:00 1402

原创 利用音频做FIR滤波实验

audioread 读取音频,fft 分析谱,fir1 生成滤波系数,filter 执行滤波,audioplayer+play 播放音频。

2021-02-16 21:26:23 1638 6

转载 傅里叶变换、拉普拉斯变换、Z 变换的联系是什么?为什么要进行这些变换?

傅立叶变换和拉普拉斯变换都是积分变换,傅立叶变换是拉普拉斯变换的特殊形式,Z变换是拉普拉斯变换的离散形式。

2021-02-14 10:22:48 4677 4

原创 使用 STM32CubeMX 自动生成虚拟串口 CDC 程序不能正常工作的解决办法

堆空间不够,扩大堆空间。

2021-02-10 19:14:53 1295

原创 利用 watchpoint 监测堆栈溢出

在堆栈底部设置 watchpoint,当堆栈越界访问到此处时,调试器 halt 处理器,或者产生 DebugMonitor 异常。

2021-02-10 18:56:27 388

原创 示波器数据导入MATLAB进行后续分析

示波器数据导出到计算机,在MATLAB(Octave)中导入波形数据后执行进一步的数据分析。

2021-01-05 10:56:04 3283 7

转载 Javascript 处理二进制数据:JavaScript typed arrays

JavaScript类型化数组是一种类似数组的对象,并提供了一种用于访问原始二进制数据的机制。

2020-12-24 20:53:41 531

原创 Web Bluetooth 读写蓝牙串口

通过 Web Bluetooth 读写蓝牙串口,WebApp 可以访问设备了!

2020-12-24 15:59:08 3091 3

原创 使用 splint 给嵌入式软件做静态分析

splint 是开源的 C 语言静态分析工具。

2020-12-18 21:32:26 410

原创 RISC-V 嵌入式 Rust 快速入门,基于 Renode 模拟器和 HiFive1 开发板

Rust 是一种新的系统编程语言,其继承了 C 语言的诸多优点,同时又克服了 C 语言的诸多缺陷,是嵌入式开发的一个新选项。

2020-12-14 11:13:35 4071

原创 eCos编译Synthethic Target程序时无法解析__sprintf_chk的解决办法

mingdu.zheng <at> gmail <dot> comhttp://blog.csdn.net/zoomdy/article/details/10615853官方已解决此问题:详见:http://hg-pub.ecoscentric.com/ecos/rev/a1df75458e13问题描述:在Xubuntu 12.04下编译eCos Sy...

2020-12-07 15:09:20 3887

原创 Javascript的补充:Typescript、Rust、C/C++

浏览器只支持Javascript和WebAssembly,所以作为Javascript的补充,要么能够转换成Javascript,要么能转换成WebAssembly。补充Javascript的出发点有三:一、重复利用已经有的代码;二、为了避开Javascript是动态类型的坑;三、为了保密。

2020-12-06 16:45:19 618

原创 Linux下多个node版本共存

让多个版本的node在linux下共存,并且可以随意使用其中一个版本的node。

2020-12-04 16:01:08 2481 1

ScratchJr Android app 1.2.5

ScratchJr是一种入门编程语言,小朋友(5-7岁)可以用它创作互动故事和游戏。

2021-02-02

exFAT file system specification.pdf

已添加书签,根据 https://docs.microsoft.com/en-us/windows/win32/fileio/exfat-specification 导出 PDF ,Extended File Allocation Table。

2019-10-28

《开放指令集与开源芯片发展报告》(已创建书签)

《开放指令集与开源芯片发展报告》(已创建书签)中国开放指令生态(RISC-V)联盟 2019 年 1 月发布,主要内容包括:1 前言;2 开放指令集与开源芯片的兴起;3 RISC-V 开放指令集生态现状;4 MIPS 开放生态现状;5 开源芯片发展现状;6 业界动态;7 各国战略计划与项目部署;8 挑战、机遇与未来发展方向;9 总结。

2019-01-17

eSIM卡/贴片式SIM卡规格/规范/数据手册

eSIM卡/贴片式SIM卡规格/规范/数据手册,封装和引脚定义。ETSI TS 102 671 V9.0.0

2017-05-19

物联网白皮书(带书签2016版)

物联网白皮书(带书签2016版)

2017-04-22

工业互联网体系架构报告(带书签1.0版)

工业互联网体系架构报告(带书签1.0版)

2017-04-22

《信息物理系统白皮书(2017)》(带书签电子版)

《信息物理系统白皮书(2017)》(带书签电子版)

2017-04-22

Linux设备驱动程序(第3版)(英文版)(已添加书签)

Linux设备驱动程序(第3版)(英文版)(已添加书签)Linux Device Drivers, Third Edition

2016-03-21

UNIX系统V第4版程序员指南:XWIN图形窗口系统Xlib-C语言界面

UNIX系统V第4版程序员指南:XWIN图形窗口系统Xlib-C语言界面,已添加书签

2014-12-05

Linux系统版,eCos配置工具,支持多仓库

eCos配置工具,支持多仓库。 同一配置文件可以同时使用多个组件仓库内的组件。

2014-10-11

eCos配置工具,支持多仓库,支持中文字符显示,支持第三方编译器

eCos配置工具,支持多仓库,支持中文字符显示,支持第三方编译器。 由官方eCos配置工具修改而来,eCos官方网址:http://ecos.sourceware.org/,修改后的源代码可以从这里获得:http://configtool.zoomdy.org/,eCos中文技术网:http://www.52ecos.net,eCos中文技术网QQ群:144940146。

2014-10-11

Eclipse RCP深入浅出(原书第2版)配套源代码

《Eclipse RCP深入浅出》配套源代码。 《Eclipse RCP深入浅出》内容简介:Eclipse不只是一个单纯的流行IDE,其Rich Client Platform(RCP)插件几乎是所有桌面应用程序的坚实基础,从聊天应用程序到前端的企业级应用程序,不一而足。《Eclipse RCP深入浅出》清楚展示了Eclipse RCP的细枝末节,全程实录了如何借助于Eclipse RCP设计、编码和打包优秀的Java应用程序。

2014-01-07

eCos组件——中断堆栈信息获取支持

该eCos组件提供中断堆栈信息的获取,包括堆栈基址、分配空间大小、已使用大小,主要用于中断堆栈溢出的风险评估,依据堆栈的使用情况对堆栈空间分配进行调整。 组件安装和使用请阅读http://blog.csdn.net/zoomdy/article/details/16970395。 eCos是开源免版税的抢占式实时操作系统。其最大亮点是可配置,与其配套的图形化配置工具提供组件管理、选项配置、自动化单元测试等。eCos官网 http://ecos.sourceware.org,eCos技术网 http://www.52ecos.net,eCos技术网QQ群144940146。

2013-11-26

eCos案例之HelloWorld

包括2个epk组件包,一个是公共包,处理生成应用程序的公共选项,一个是Hello包,为经典的Hello World工程,包括一个名为hello的模板。为博文 http://blog.csdn.net/zoomdy/article/details/12908559 的配套附件。

2013-10-21

《学习 MISRA C》系列连载讲座

第一讲:“‘安全第一’的 C语言编程规范”,简述 MISRAC的概况。 第二讲:“跨越数据类型的重重陷阱”,介绍规范的数据定义和操作方式,重点在隐式数据类型转换中的问题。 第三讲:“指针、结构体、联合体的安全规范”,解析如何安全而高效地应用指针、结构体和联合体。 第四讲:“防范表达式的失控”,剖析MISRAC中关于表达式、函数声明和定义等的不良使用习惯,最大限度地减小各类潜在错误。 第五讲:“准确的程序流控制”,表述 C语言中控制表达式和程序流控制的规范做法。 第六讲:“构建安全的编译环境”,讲解与编译器相关的规范编写方式,避免来自编译器的隐患

2010-06-25

空空如也

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

TA关注的人

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