13 半斗米

尚未进行身份认证

我要认证

朝着系统架构师前进的嵌入式系统设计师。

等级
TA的排名 3k+

Tex数学公式及字符

Tex数学公式,可以直接在 CSDN 中使用,太棒了!

2020-09-10 21:48:38

离散傅里叶变换的核心公式

连续傅里叶变换公式、离散傅里叶变换公式、欧拉公式。

2020-09-10 21:35:08

使用 gnuplot 绘制离散序列以及 DFT 结果

gnuplot 是个强大的绘图工具,用它绘制各种曲线再好不过了,包括绘制数字信号处理中的离散序列,以及各种变换的结果序列。

2020-09-09 17:36:51

开源的嵌入式系统开发工具

得益于开源软件的发展,完全可以基于全开源软件做嵌入式系统开发。

2020-09-09 10:17:05

可以跑Linux的RISC-V微型电脑:PicoRio,对标树莓派

开源、低功耗、低成本。4 x RV64GC + 1 x RV32IMC。

2020-09-08 16:53:15

RISC-V 整数寄存器(x0~x31)与浮点寄存器(f0~f31)数据交换

RV32F、RV64F、RV64D 都有 fmv 指令可以做数据交换,RV32D 没有 fmv 指令可用,需要特殊处理。

2020-09-08 15:07:33

数字滤波器:FIR和IIR

传统的线性数字滤波器一般有两种类型,有限冲激响应(FIR)滤波器和无限冲激响应(IIR)滤波器。

2020-09-02 10:18:11

国产MCU,Cortex-M和RISC-V核心

国产MCU,Cortex-M和RISC-V核心

2020-08-07 16:07:07

PCB设计中的SDRAM辐射干扰对策

某些使用外置SDRAM的STM32应用客户反映其产品在EMC测试中,存在由于SDRAM信号导致辐射干扰超标的问题。在终端产品中如果不能用机壳屏蔽辐射干扰,那么这类问题往往需要通过修改SDRAM信号的PCB设计来解决。

2020-07-27 10:40:43

用函数指针来实现状态机

状态机的基本实现手段是`switch case`语句,不过也可以用函数指针来实现

2020-07-10 21:06:46

使用SPI操作JTAG的两种方案

MCU没有可以直接操作JTAG的外设,一般情况下,可以使用IO模拟来操作JTAG,但是IO模拟速度比较慢。SPI是与JTAG最接近的外设,可以使用SPI来加速JTAG的操作。然而SPI的4根信号(CS、SCK、MISO、MOSI)与JTAG的4根信号(TCK、TMS、TDI、TDO)并不对应,所以不能直接使用,还要一些特殊的处理。

2020-06-20 10:21:33

Rust的枚举还实现了C语言的联合(union)的特性

Rust的枚举特性还实现了C语言的联合的特性,这在一些情况下,可以简化代码。下面这段Rust定义枚举的代码:enum Message { Quit, Move { x: i32, y: i32 }, Write(String), ChangeColor(i32, i32, i32),}参考:Enum Values在C语言中相当于以下代码:typedef enum{ Quit, Move, Write, ChangeColor}MessageType;

2020-06-05 13:35:25

Rust中的常量、变量、mut变量

Rust的常量Rust的常量和C语言中的常量基本一样,常量只能赋值编译时就能计算出来的表达式,不可以是函数返回值、变量的计算值等。Rust的常量必须指定类型。Rust的常量要求使用大写字母,如果使用小写字母,会产生编译警告。C语言中一般会使用大写字母定义宏,Rust的常量和C语言中的常量宏差不多。参考Differences Between Variables and ConstantsRust的变量Rust的变量只能赋值一次,但与常量不同,变量可以赋值运行时才能计算的表达式,可以是函数返回

2020-05-22 11:44:01

Rust的宏与C语言的宏

宏可以说是C语言的双刃剑,C语言中的宏提供诸多便利,但同时也带来了很多陷阱。Rust保留了宏的概念,但是比C语言的宏有了不少改进。宏与函数的区别无论在Rust中,还是C中,宏都可以实现函数的作用。但是在C语言中,函数式的宏和真正的函数是难以区分的,即调用函数式的宏和调用真正的函数的形式是一样的。而在Rust中,调用函数式的宏和调用真正的函数的形式是相区分的,如果将宏作为函数来调用,那么宏名的后面要加感叹号,例如最经常出现的 println!,比C语言多出来的感叹号明确了这是一个宏而不是函数。代码

2020-05-22 11:43:41

外设的驱动模式:中断、轮询

驱动程序的基本形式是中断模式。关闭中断可以形成轮询模式。轮询模式可以是忙等待轮询和择机轮询。忙等待持续轮询状态,直到完成,这期间主循环不能处理其它事务。择机轮询检测到未完成时将退出,转而处理其它事务,当有空闲时再次轮询,需要借助状态机实现保存和恢复上下文。中断配合操作系统形成挂起等待模式。协程是对择机轮询的简化。事件驱动模型是中断模式的泛化。...

2020-05-19 13:10:13

使用国内镜像解决 Rustup 和 Cargo 连接超时问题

sh.rustup.rs 连接超时解决办法wget https://cdn.jsdelivr.net/gh/rust-lang-nursery/rustup.rs/rustup-init.shsh rustup-init.shRustup 连接超时解决办法RUST安装慢怎么办,使用镜像方式安装Rustup 镜像使用帮助Cargo 连接超时解决办法Rust Crates 镜像使用帮助...

2020-05-09 10:29:24

对并发的思考

并发分成伪并发和真并发伪并发系统只有一个处理器,但执行多个任务,在某个瞬间,处理器只能执行一个任务,为了“同时”执行多个任务,将多个任务快速的来回切换,只要速度足够快,就会感觉这几个任务是同时执行的。从宏观上讲,伪并发是并发的,从微观上讲,伪并发是串行的。真并发有多个处理器,在某个瞬间是有多个任务同时在执行的。复杂系统往往是真并发和伪并发共存,系统中包含多个处理器,其中的每个处理器同时又...

2020-03-13 09:42:18

协程的本质

协程是简化状态机设计的一种工具。协程编程表面上看起来与多线程编程很相似。协程与多线程有着本质的区别:协程不会抢占,任务之间是协作式的,多线程的任务之间往往是抢占式的。协程没有上下文切换,协程只有函数的进入和退出,没有多线程的上下文切换。协程没有调度器,任务间的协调完全由应用来决定。协程也是实现多任务的一种形式。...

2020-03-13 09:26:27

SOT-23、SOT-223封装的三极管、MOS管

SOT-23、SOT-223封装的三极管、MOS管SOT-23三极管无论是PNP还是NPN,1脚为基极,2脚为发射极,3脚为集电极。MOS 管无论是P沟道还是N沟道,1脚为栅极,2脚为源极,3脚为漏极。SOT-223三极管无论是PNP还是NPN,1脚为基极,3脚为发射极,2、4脚为集电极。有些封装2脚伸出可焊接,有些封装2脚悬空。MOS 管无论是P沟道还是N沟道,1脚为栅...

2020-01-07 13:29:30

天线的种类

天线的种类弹簧天线棒状天线PCB天线板载天线陶瓷天线玻璃钢天线弹簧天线低成本。直接焊在PCB上。棒状天线比较常见。一般SMA接头。也有引线加IPEX接头。PCB天线一般IPEX接头。板载天线PCB天线的一种,讲天线与电路的其它部分制作在同一块PCB上,蓝牙通常使用这种天线。陶瓷天线贴片安装。陶瓷介电常数较PCB板高,所以使用陶瓷天线能有效缩小天线尺寸;在介电损耗方面,...

2019-12-25 10:14:35

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv3
    勤写标兵Lv3
    授予每个自然周发布7篇到8篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。