博客迁移记录
前言之前我的博客是部署到 Cloudflare 上的,网页加载速度很慢,在线 ping 响应时间普遍在 200 - 300ms 之间,尤其是每到晚间经常加载不出页面,因此决定将博客从 Cloudflare 迁移至 Vercel。迁移后每次部署仅需几秒明显快于CF,最重要的是访问速度有明显提升, 在线 ping 响应时间普遍在 70ms 左右,vercel 后台显示绝大部分访问请求都被分配到了新加坡的CDN节点。要说 Vercel 有哪些不如 CF 地方,主要就是免费版每个月有 100 G 的流量限制,而 CF 没有流量限制,不过 100G/月 对于个人博客足够了。 出现问题我的博客使用的 Butterfly 主题,在迁移过程中,遇到了一个问题,就是访问图库的子页面(准确的说是所有使用 gallery-group 标签外挂的子页面)时会跳转到 404 页面,但是访问本地 local:4000 就没有问题。最后发现在访问的 url 后面加上 .html 后缀就能正常访问了。 解决方法在 hexo 根目录 source 文件中 新建一个 vercel.json 文件,内...
泰凌微B85m系列 Conn State Slave role 时序保护方法
本教程适⽤于泰凌微 B85m 系列芯片。 ConnSlaveRole,每个 interval 需要⼀个收发包事件,也就是 Brx Event。B85m SDK 中,Brx Event 完全是由中断触发的,所以 MCU 系统总中断需要⼀直被打开。如果 user 在 Conn state 的⼀些任务时间较⻓且必须把系统总中断关闭(⽐如擦除 Flash),就会造成 Brx Event 被停掉,BLE 的时序很快就乱掉,最终连接断开。 对于这种情况 SDK 中提供了⼀套保护机制,让 user 去停掉 Brx Event 却不破坏 BLE 的时序,user 需要严格根据这个机制来操作。相关 API 如下: 123int bls_ll_requestConnBrxEventDisable(void);void bls_ll_disableConnBrxEvent(void);void bls_ll_restoreConnBrxEvent(void); 调⽤ bls_ll_requestConnBrxEventDisable 来申请关掉 Brx Event。 该 API 返回值...
超线程技术简介
什么是超线程技术? 超线程技术是 Intel 在奔腾4C处理器上开始投入的一种技术,目前主要应用在 Intel、AMD 的x86多核处理器上。在超线程技术中,一个物理CPU核心被伪装成两个或两个以上的逻辑CPU核心,看起来就像多个CPU在同时执行任务。如图所示,打开Windows任务管理器,该CPU的内核是6个,也就是有6个物理CPU核心,但是它的逻辑处理器有12个,这就是使用了超线程技术。 超线程技术是如何实现的? 超线程技术是通过在一个物理核心中创建多个线程实现的,每个线程都有自己的PC寄存器、指令寄存器和条件码寄存器。当线程A的指令停顿的时候,物理CPU核心的译码器和算术逻辑单元(ALU)就会空出来,这时线程B就可以运行自己的指令。这样就可以提高CPU的利用效率。就像下面这条路,很笔直,但是总是空荡荡的,我们给它引入两个入口,把更大范围的车辆引入进来,提到了道路的使用效率。需要注意的是,如果译码器和ALU也是双份的,那么这就是真正的多个CPU核心了,不能称为超线程技术。 超线程技术的优缺点? 超线程技术非常适合运行内存IO密集而非计算密集的应用程序,因为IO操作...
泰凌微B85m系列SRAM和Firmware空间分配
本教程适⽤于泰凌微 B85m 系列芯片 B85m SDK V3.4.2.4及之后版本的 SRAM 空间分配与之前版本的分配原理上是一样的,只是为了节省空间,将原来的固定16K/32K retention size 修改为实际使用的 retention size 下面以 SRAM size 64K的IC:8258为例详细介绍 SRAM 区域各个部分。如果 SRAM size 是其他值,用户类推即可。 如上图所示: Flash 中 Firmware 包括 vector、ramcode、retention_data、text、rodata 和 data initial value。 SRAM 中包括 vector、ramcode、retention_data、Cache、data、bss、data no initial value、sdk_version、stack 和 unused SRAM area。 SRAM 中的 vector/ramcode/ retention_data 是 Flash 中 vector/ramcode...
解决使用Cloudflare后Waline评论无法显示真实IP的问题
当 Hexo 博客使用 Cloudflare 进行CDN加速时,Waline 评论区的用户IP会显示CF加速的地址而不显示真实的IP地址 本教程适用于使用 Vercel 部署 Waline 的情况 从你自己的 github 仓库中将 Waline 的源码仓库clone下来 在clone下来的仓库中的 index.cjs 文件的最后添加 1think.app.proxyIpHeader = 'CF-Connecting-IP'; 添加后文件内容如下: 12345678910const Application = require('@waline/vercel');module.exports = Application({ plugins: [], async postSave(comment) { // do what ever you want after comment saved },});think.app.proxyIpHeader = 'CF-C...
hexo博客+butterfly主题之增加动态背景效果
推荐效果 樱花飘落: 1https://npm.elemecdn.com/tzy-blog/lib/js/other/sakura.js 上升气泡: 1https://cdn.jsdelivr.net/combine/npm/jquery@latest/dist/jquery.min.js,gh/weilining/jsdelivr/jquery/circlemagic/circlemagic.min.js,gh/weilining/jsdelivr@latest/jquery/circlemagic/butterflycirclemagic.js 全部页面显示动态背景效果 仅需修改主题配置文件 _config.yml,将 xxx 替换为推荐效果链接或者你喜欢的效果链接 12345678# Inject# Insert the code to head (before '</head>' tag) and the bottom (before '</body>' tag)inject: head: ...
hexo博客+butterfly主题之页脚美化
效果预览 配置动态版权图标和运行时间 在主题文件夹的 \source\js 目录下添加 xxx.js 文件,内容如下: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465//版权图标动态显示document.addEventListener('DOMContentLoaded', function() { const currentYear = new Date().getFullYear(); const copyrightElement = document.querySelector('.copyright'); if (copyrightElement) { copyrightElement.innerHTML = `©网站起始时间 - ${currentYear} &...
win11删除/恢复桌面快捷方式小箭头
新建文本文档,复制以下代码,改名为.bat后以管理员身份运行。 12345678910111213141516171819202122232425262728293031323334:: # 声明代码页编码格式为 UTF-8chcp 65001@echo offmode con lines=5 cols=50color acls goto choose :addreg add HKLM\SOFTWARE\Classes\lnkfile /t REG_SZ /v IsShortcut /f >nulreg add HKLM\SOFTWARE\Classes\piffile /t REG_SZ /v IsShortcut /f >nulgoto refresh :delreg delete HKLM\SOFTWARE\Classes\lnkfile /v IsShortcut /f >nulreg delete HKLM\SOFTWARE\Classes\piffile /v IsShortcut /f >nulgoto refresh :refres...
世界上最孤独的树
在世界的一个偏远角落,新西兰南岛的Wanaka湖如一颗孤独的宝石镶嵌在大地上。而湖中那棵孤独的树,静静伫立在浅水间,仿佛是地球尽头的守望者。四周广袤无垠,无林相依,无藤缠绕,它以一种近乎倔强的姿态,迎风而立。 枝干瘦削,却如挣脱束缚的手臂,向广袤的天空伸展。它的孤独与悲凉在这偏远之地更显深邃,仿佛这世界的尽头只剩它与时间对峙。没有喧嚣的回应,也无同行的影子,它孤独却不卑微,悲凉却无敌。
iOS设备BLE连接参数规范
iOS对于BLE更新的连接参数有一组规范,必须满足以下条件才会接受 Interval Max * (Slave Latency + 1) ≤ 2s Interval Min ≥ 20ms Interval Min + 20ms ≤ Interval Max Slave Latency ≤ 4 connSupervisionTimeout ≤ 6s Interval Max * (Slave Latency + 1) * 3 < connSupervisionTimeout