作者: hadongzhu

55 篇文章

常见随机变量分布
一维离散型随机变量分布 名称 表示 定义 均值 方差 意义 0-1分布 X ∼ B ( 1 , p ) P { X = 1 } = p P { X = 0 } = 1 − p p p ( 1 − p ) 一重伯努利实验成功次数 二项分布 X ∼ B ( n , p ) P { X = k } = C n k p k ( 1 − p ) n − k n p n p ( 1 − p ) 𝑛重伯努利实验成功次数 泊松分布 X ∼ P ( λ ) P { X = k } = λ k k ! e − λ …
I²C(Inter-Integrated Circuit)要点
引子 集成电路总线(Inter-Integrated Circuit,IIC)是一种常用于单片机的同步串行通信接口规范,常见使用 I²C 的外设有EEPROM、传感器(如MPU9250中的磁力计)、时钟芯片(如DS3231)、低速ADC/ADC。相较于SPI,IIC通常速率更慢且电路更复杂,但所需接线更少。 I²C I²C一般有两条信号线:SDA(serial data line)和SCL(serial clock line)分别用于传输数据和时钟信号。一般两条数据线都需要外接上拉电阻,同时引脚…
在开启DoH后QQNT登录困难的问题
引子 升级到QQNT后自动登录老是不成功,显示连接到网络后又跳回登录,再点一次才能正常登录,经查证,这个跟系统开了DoH有关系,关闭DoH后正常,但是我也想开DoH啊。 临时解决方案 经检查,主要问题应该是出在msfwifi.3g.qq.com这个域名上,在hosts文件中加入msfwifi.3g.qq.com的ipv4地址即可。 看了一眼日志,QQ相关的网址基本都有ipv6了,唯独这个msfwifi.3g.qq.com没有ipv6地址,这个问题很有可能与msfwifi.3g.qq.com不存在…
SPI(Serial Peripheral Interface Bus)要点
引子 串行外设接口(Serial Peripheral Interface Bus,SPI)是一种常用于单片机的同步串行通信接口规范,常见使用SPI的外设有Flash(如W25Qxx)、传感器(如MPU9250)、LCD。相较于IIC,SPI通信速率通常更快(IIC常见的快速模式即400kbit/s,而SPI的通信速率取决于器件),并且推挽输出能够使得SPI拥有更高的传输速率(IIC为开漏输出,线路更复杂),但线路通常更多(IIC通常仅需SCL、SDA,双工下三线SPI需要SCK、MOSI、MI…
基于HPDL1414x5显示模块的自动网络校时时钟
引子 前段时间用5个HPDL-1414做了一个20字符的显示模块HPDL1414x5,理论上可以作为许多应用的外设,于是决定使用基于ESP8266的NODEMCU平台驱动HPDL1414x5做一个自动网络校时的时钟。 NODEMCU NODEMCU是一个很久远的项目了,最开始是适配ESP8266的,但是ESP8266似乎都要退市了。项目主要就是一个最小开发板和lua的固件,硬件开源在这里,固件开源在这里,和它类似的还有microPython的固件,使用的是类似于python的语法。 NODEMC…
WaveDrom教程
WaveDrom可以根据特定指令生成时序/波形图(SVG/PNG),并且也可以在浏览器中运行。同时也提供了在线编辑器和教程、教程2。 信号(signal) 名称(name)和波形(wave) 绘制信号时,需要向WaveDrom传递键为signal,值为WaveLanes的数组,WaveLane一般至少需要包含两个属性:名称(name)和波形(wave),例如(在官方在线编辑器中打开): { "signal" : [{ "name": "clk", "wave": "P..........…
使用VS Code浏览MDK工程
引子 众所周知,MDK的定义跳转和自动补全真的是一言难尽,没有编译的内容直接罢工跳转不了,自动补全也常年跳不出来,总想着要是能用VS Code看代码就好了。 如果直接用VS Code打开工程的话,又会报错满天飞,这个找不到路径,那个没有定义,为了解决这个问题,需要手动配置一下VS Code。 配置VS Code VS Code打开文件夹后,会读取.vscode/c_cpp_properties.json的C/C++配置文件,在这个文件里可以指定包含路径、定义等,c_cpp_properties.…
在WordPress中引入WaveDrom
引子 WaveDrom可以根据特定指令生成时序/波形图(SVG/PNG),并且也可以在浏览器中运行。同时也提供了在线编辑器、教程、教程2。 绘制波形 (不建议这样使用,存在很多问题)WordPress中有一个简码(shortcode)功能,能调用特定的函数,因此我们使用简码来包装WaveDrom,为了方便使用,我们使用插件来创建WaveDrom简码。首先创建文件夹wp-content/plugins/wavedrom,并在该文件夹下创建一个wavedrom-shortcode.php文件: &l…
thumbnail
20字符(HPDL-1414*5)显示模块(串行协议、兼容SPI)
引子 HPDL-1414是一种支持部分ASCII(大写字母、数字、一部分特殊符号,具体来说是0x20~0x5F的字符)的四位数码管显示模块。HPDL-1414相较于普通数码管来说体积极小,作为显示模块颇有复古韵味。单个HPDL-1414的四个字符很难满足我们对显示字符的需求,并且HPDL-1414使用并行协议,会占用大量的端口,因此设计了仅需三根数据线就可驱动20字符的显示模块,并且兼容SPI协议。 模块使用 模块所需供电端口3个:+3.3V(为逻辑模块供电)、+5V(为HPDL供电)、GND,…
哈冬猪科学计算器系列教程——创建自定义模板(高级)
以下截图为 0.10.1 版本运行结果 本文为创建一个复杂模板的高级教程,为了更好地理解模板参数如何影响结果的,首先将介绍模板的运行机制。 模板运行机制(高级) 对于高级模板而言,模板的运行可以更细致地分为四个阶段:输入(为输入变量赋值)->约束(检查是否满足某些条件)-> 算式(实际的计算过程,为输出变量赋值)-> 输出(指定输出显示的变量),对于其中的每一步,都提供了更多的选项。一下以『解三角形(已知两边及其夹角)』为例进行演示。 模板基础信息 模板的基础信息包括名称、标签…