0%

Boot Loader,或「引导程序」,是微控制器中烧录的固件。对于 Arduino 而言,每次按下复位键,或者编译上传新的程序时,都会先加载 Boot Loader;随后 Boot Loader 再来执行程序,或者根据电脑的指令,将新程序的代码写入闪存中。
在正常情况下,Boot Loader 是预置好的,用户只需要写程序然后上传,而不用关心其它的问题。但在有些情况下,还是需要用户自己来烧录 Boot Loader。例如,根据 Arduino 开源的电路图制造和焊接的开发版,使用前需要烧录 Boot Loader 才能正常工作。而一些国产的寨版,可能出现各种奇怪的问题,这时也可以尝试通过刷 Boot Loader 来解决。
烧录 Boot Loader 的方式有很多种。在 Arduino IDE 的菜单中,选择「工具」 → 「编程器」,即可查看官方支持的方法:

本文将介绍其中的一种方法:使用另一块 Arduino 开发版,作为 ISP(即 in-system programmer),来进行烧录。为了避免歧义,我们将功能正常的版称为「ISP 板」,而需要烧录 Boot Loader 的版称为「坏板」。在具体的例子中,将一块「Arduino Leonardo」作为「ISP 板」,一块「Arduino Mega 2560」作为「坏板」。

上传程序

将「ISP 板」连接到电脑,并移除其它所有线缆。打开 Arduino IDE,在菜单中选择「文件」 → 「示例」 → 「11.ArduinoISP」 → 「ArduinoISP」。这是一个将 Arduino 变为 AVRISP 的程序,将其编译上传到「ISP 板」即可。

阅读全文 »

Charles 是一个功能强大的抓包软件,而 Proxifier 可以将流量通过 Socks5 或 http 代理进行转发。两者配合起来,即可完成对于手机应用或者命令行应用的流量代理和分析。本文将介绍它们的下载、安装和破解方法。

Charles

Charles 的官方下载页面是:https://www.charlesproxy.com/download/
完成下载后,将 Charles 拖进应用程序目录中。此时,一定要先启动一次,Charles 会提示你这是试用版本,需要进行注册。随后,再根据此网页进行破解即可,注意要选择正确的版本:https://www.zzzmode.com/mytools/charles/
破解程序的源代码在此:https://github.com/8enet/Charles-Crack

Proxifier

Proxifier 的官方下载页面是:https://www.proxifier.com/download/
安装方法类似,完成安装后打开 Proxifier 菜单栏中的 Help → Registration,Name 随便输入自己的即可,Key 输入 P427L-9Y552-5433E-8DSR3-58Z68。如果没有问题的话,注册成功,可以愉快地使用了。

QCAD 是一个免费开源的二维 CAD 软件。不过,官方提供的免费下载版本并不是完整的 —— 部分功能被锁定,需要购买 Professional 版本才能解锁。除此之外,还有一个非常麻烦的地方 —— 每隔 15 分钟,软件都会强制退出,必须重启才能继续使用。如果当前正在进行的项目没有保存,可能就酿成悲剧了。对于工程制图而言,这可能是一个比鸭嘴笔把这个水弄到里面更加痛苦的事情。那么,有没有办法解除使用时间限制呢?答案是肯定的。不需要自己重新编译,只需要删除官方提供版本的一些动态库即可。

Windows

安装完成后,进入安装目录的 plugins 目录。这里面有 7 个 dll 格式的动态库。仅保留 qcaddxf.dllqcadscripts.dll 这两个,删除其它 5 个即可。

macOS

找到 QCAD.app,右键点击,选择「显示包内容」。随后依次进入 Contents 和 PlugIns 目录。这里面有 7 个 dylib 格式的动态库。仅保留 libqcaddxf.dyliblibqcadscripts.dylib 这两个,删除其它 5 个即可。

Linux

Linux 下也是类似的,删除对应的动态库即可,此处不再赘述。

Minecraft 在不同的平台上发行了多个版本,如经典的 Java 版、曾经的 Minecraft PE 版和微软接手后重制的 Bedrock 版。在过去的数年中,Mojang 和 Microsoft 对 Minecraft 存档的结构进行了多次改动,这就导致不同版本的 Minecraft 存档可能完全不兼容。因此,如何在多个平台上同步游戏进度成为了一个令人头痛的问题。若是在各大论坛搜索相关内容,往往会找到一个名为 MCEdit 的程序。可惜这个由 Python 编写的程序已经长期没有更新了,它对新格式的存档无能为力。难道真的就没有办法了吗?莫非需要自己造出这个转换 Minecraft 存档格式的轮子?要知道,这需要极大的学习成本,例如 leveldb 的数据结构。
幸运的是,笔者偶然发现了这个工具:MCC Toolchest。它可以在 Java 版和 Bedrock 版之间转换存档。考虑到同一平台上的 Minecraft 是可以兼容旧存档的(以 Java 版为例,1.14 可以转换、读取 1.13 的存档),为了最大限度的减少兼容性问题,可以先将 Minecraft 升级到最新版,然后打开游戏,自动更新存档。随后,就可以通过 MCC Toolchest 来进行转换了。

选择存档

运行程序后,依次选择「File」「Open」,然后在文件浏览器中选择要打开的存档文件夹。

如果存档是完好的,其目录结构会在左侧被展示出来。

进行转换

随后,依次选择「Tools」「Convert」,根据需要转换到 Java 版或 Bedrock 版。

在新弹出的窗口中可以选择存档的具体参数。最上面需要选择存档文件夹,创建一个空目录即可。

最后,点击「Convert」按钮,耐心等待转换完成就行啦!

Four score and seven years ago our fathers brought forth on this continent, a new nation, conceived in Liberty, and dedicated to the proposition that all men are created equal.

Now we are engaged in a great civil war, testing whether that nation, or any nation so conceived and so dedicated, can long endure. We are met on a great battle-field of that war. We have come to dedicate a portion of that field, as a final resting place for those who here gave their lives that that nation might live. It is altogether fitting and proper that we should do this.

But, in a larger sense, we can not dedicate—we can not consecrate—we can not hallow—this ground. The brave men, living and dead, who struggled here, have consecrated it, far above our poor power to add or detract. The world will little note, nor long remember what we say here, but it can never forget what they did here. It is for us the living, rather, to be dedicated here to the unfinished work which they who fought here have thus far so nobly advanced. It is rather for us to be here dedicated to the great task remaining before us—that from these honored dead we take increased devotion to that cause for which they gave the last full measure of devotion—that we here highly resolve that these dead shall not have died in vain—that this nation, under God, shall have a new birth of freedom—and that government of the people, by the people, for the people, shall not perish from the earth.