2020年11月

原文: assert宏实现中的注意点
实现:

#ifdef _DEBUG_
    #define ASSERT(x) \  
        do { if (!(x)) { printf("ASSERT!file: %s, line: %s\r\n",  __FILE__, __LINE__); } } while(0)  
    #define PRINT(x, y) printf(x, y)
#else  
    #define ASSERT(x) \  
        do { (void)sizeof(x); } while(0)  
    #define PRINT(x, y) (void)sizeof(x)
#endif 

#ifdef POW2_ASSERTS_ENABLED  
    #define POW2_ASSERT(x) \  
        do { if (!(x)) { pow2::Assert::Fail(#x, __FILE__, __LINE__); } } while(0)  
#else  
    #define POW2_ASSERT(x) \  
        do { (void)sizeof(x); } while(0)  
#endif   

这篇文章很详细, 不过我觉得比较好的方式是其中提到的altium2kicad这个Github项目.
需要安装perl, 不过如果装了git的话, git下似乎默认会装一个perl,使用where perl命令看一下就知道了. 如果没有装, 建议装strawberry perl, 另一个版本ActivatePerl我在Win10上安装不上, 进度条到最后总是不能完成. 装完使用perl -v可以查看是否装好.
altium2kicad里面主要用convertpcb.pl转换当前目录下的所有.pcbdoc, 转换后后缀名为.kicad_pcb, 这是我有史以来看到的最长的后缀名和第一个带下划线的后缀名了... unpack.pl解压缩.pcbdoc.schdoc文件, convertschema.pl转换原理图. 在转pcb或sch以前必须要先unpack. 我就把这两步做成bat文件了. 如a2kpcb.bat:

perl  D:\rsoft\altium2kicadmaster\unpack.pl
perl  D:\rsoft\altium2kicadmaster\convertpcb.pl

有时候运行会提示缺少组件: you may need to install the Math::Geometry::Planar module. perl上安装模块组件的方式是通过cpan,不过在此之前最好先给cpan改一下镜像源, 找到CPAN/MyConfig.pm文件, 修改其中的urllist为163镜像:

  'urllist' => [q[http://mirrors.163.com/cpan/]],

然后进行安装:

perl cpan Math::Geometry::Planar

 一、先安装Foxmail7.2,创建帐户;

 二、在Foxmail7.2安装的根目录下找到文件:  FMStorage.list;

 三、用Notepad打开 FMStorage.list,可看到内容为:\Storage\zhangsan@A-iot.com\  ,直接修改为: D:\My_Foxmail\zhangsan@A-iot.com\;

 四、保存文件,退出,启动Foxmail,恭喜,你的Foxmail邮件存储目录和安装目录已经分开了。

原文链接

WPS中显示图片使用了一个私有函数DISPIMG, 其使用形式类似于:

=DISPIMG("ID_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",1)

这个函数似乎是个在线函数,其ID是在线库中的图片地址.
转为Excel可显示的方式是选中DISPIMG所在的单元格(可选择多个), 点击右键,选择图片转为浮动, 保存即可.
这个操作不会增加Excel文件的大小, 所有图片仍然在线显示.
没有完美的转为离线嵌入图片的方式,一个能唬人的方式是: 在Excel中打开文件, 等图片从网上加载完毕后, 选择这些单元格, 复制, 然后粘贴为图片即可. 为什么说是"唬人", 因为粘贴为图片功能事实上是这些单元格的截图.

【术语扫盲】SKD 半散装件

所谓“散件组装”,按照国际通行说法,简称KD(Knocked Down)。 一般而言,KD有三种形式: CKD 、 SKD 、 DKD 。 CKD (Complete Knocked Down)为全散件组装, SKD(Semi-Knocked Down) 则是半散件组装,一部分总成是现成的。 而更有甚者 DKD(Direct Knocked Down) 直接组装或者成品组装。

Nicelabel和BarTender是商业软件,都有免费版本,但免费版本都不能连接Excel。其中BarTender是得力标签打印机的出厂附带软件(同样不能连接Excel)。
另外尝试了DYMO达美提供的设计软件,然而只支持他们自家的打印机。
尝试了Avery Design & Print,并不好用。
QZ Trayjsprintmanager是两个打印驱动, 后者在VSCODE中有支持.
DL888T似乎支持的打印协议是TSPL.
在这个TSC打印机厂家网站能下载针对某一款打印机的TSPL的协议, 但不知道是不是通用的.
通过wikipedia对Page_description_language的解释, 发现TSPL是PDL的一种, wiki说是台积电Tsmc创造的,但似乎是一个谬误, 应该是前面的TSC创造的.

正常通过阿里云购买或申请的证书,在下载证书的时候,会提示不同的HTTP服务器安装SSL证书的方式, 包括nginx/IIS等.
这儿有Nginx上SSL证书安装的视频指导
基本上来说, 就是复制nginx配置, 修改一下证书的名字就可以了.
配置好后重启Nginx.
然后用chrome打开网站, F12打开开发者选项, 选择"Security",查看证书"View Certificate"就可以看到证书是否安装成功.

从chrome端查看证书类型

打开证书,查看"详细信息"中的使用者,如果有"O=xxxxx公司"之类的是OV证书, 没有的就不是,或者是免费证书.
有的浏览器EV证书的地址栏会变成绿色.以前说Chrome可以,但现在似乎也不行了

原文: Can Light Therapy Improve Your Sleep?.
下面大部分是百度翻译的, 稍作润色.

这似乎有悖常理,但光线可能是改善睡眠的关键。
对于某些睡眠障碍,特别是那些与昼夜节律紊乱有关的疾病,光疗法是一种有益的治疗方法。
让我们来探讨一下睡眠的光疗法,它是如何工作的,以及它可能带来的好处。

光疗法到底是什么?

光疗法是暴露在比普通室内光线更亮的光源下,但不如直射阳光那么明亮。
它包括每天在同一时间段内使用一个灯箱。你可以在舒适的家里做这件事。
光疗法用于多种不同类型的疾病,包括各种睡眠障碍、时差、抑郁和季节性情感障碍(SAD)。
光疗法也(Phototherapy)被称为光疗法(Light Therapy),它可以通过影响与睡眠和情绪相关的大脑化学物质来帮助改善睡眠质量。

光疗法能改善你的睡眠吗? 

如果你有失眠症,可能是由于你的昼夜节律紊乱,这与你的睡眠-觉醒周期有关。
你的昼夜节律是你身体内部时钟的一部分,它使你白天感到警觉和清醒,晚上感到困倦。
当你的昼夜节律被打乱,你可能会经历从白天困倦到抑郁的症状。
如果正确使用,光疗法可以促进昼夜节律的重新设定,反过来,这可能有助于改善你的睡眠和其他症状。
研究表明光疗法对睡眠障碍和抑郁症患者有好处。
2016年的一项综合分析发现,光疗法对一般的睡眠问题是有效的,尤其是那些涉及昼夜节律和失眠的问题。

它能用来治疗什么样的睡眠障碍?

光疗法可用于昼夜节律性睡眠障碍,如睡眠发作性失眠。当你在正常时间无法入睡,但保持睡眠没有问题。这可能是由于昼夜节律提前或延迟所致。
你如果患有严重睡眠期紊乱,在下午晚些时候或傍晚时会感到困倦。你的就寝时间通常在下午6点到9点之间。因为就寝时间早,你通常在凌晨2点到5点之间起床。
在这种情况下,在傍晚时分进行光疗法可以帮助“早起鸟”的内部时钟复位。
有了延迟睡眠期障碍,你往往会一直保持清醒到深夜,通常超过半夜12点。因此,你也倾向于早上晚起。
在这种情况下,你在早上起来后做光疗,可能有助于改善你的生物钟,让你在晚上早些时候感到困倦。
光疗法也用于:

  • 时差反应
  • 适应夜间工作时间表
  • 季节性情感障碍
  • 抑郁
  • 痴呆

一般不推荐用于与昼夜节律异常无关的睡眠障碍。

选择灯箱的注意事项

在买灯箱之前,先和你的医生谈谈你的睡眠问题。你睡不好觉有很多原因。
你的医生可以帮助你确定你的睡眠问题是由于昼夜节律紊乱还是其他一些潜在的原因。可能需要其他的治疗方法,不一定会有光疗。
如果您有以下问题,请和医生探讨下灯箱的安全问题:

  • 有眼睛问题,可能会被灯箱加重
  • 有一种情况,如狼疮,使你的皮肤对光敏感
  • 患有双相情感障碍,因为光疗法可能会引发躁狂
  • 服用某些药物,如抗生素或消炎药,会增加光敏感度
  • 服用圣约翰草补充剂,它可以增加感光度

灯箱最重要的特征是光线。确保它能过滤有害的紫外线。
不要使用适合皮肤状况的灯箱、晒黑床或日光灯等这些类型的光发射设备。它们不仅是睡眠和情绪紊乱的错误光源,而且还会损害你的皮肤,增加患皮肤癌的风险。
根据医生的建议,你需要2000到10000勒克斯的光强度。
在你买一个灯箱之前,考虑一下你想如何使用它。一些灯箱可以放在桌子或桌子上。你也可以买一个放在地板上的高灯箱。
如果灯箱太笨重,你可以考虑使用LED眼镜。光治疗眼镜更便携,提供更多的行动自由。最近的一项小规模研究发现,光疗法眼镜的效果可以与灯箱相提并论。
向你的医生寻求建议,选择最适合你生活方式的选择。

如何使用光疗法治疗睡眠

根据你的昼夜节律紊乱的类型,光疗法要么是在早上起床后不久,要么是在你开始感到昏昏欲睡之前在傍晚进行。
你的灯箱应该离你的脸16到24英寸。光线必须到达你的眼睛,尽管你不应该直视盒子。在你的治疗过程中,吃东西、看书或使用电子设备都没问题。
最重要的是让你自己在一段时间内暴露在光照下——不能多,不能少。疗程的长度可以是30分钟到2小时,这取决于光照强度和医生的建议。
另一个关键因素是一致性,所以要坚持下去。在几天到几周内,你可能不会注意到任何改善。
请务必阅读所提供的安全注意事项和说明。

有什么副作用吗? 

光疗法通常是安全的,尽管有些人有轻微的副作用,例如:

  • 眼睛疲劳
  • 头痛
  • 恶心
  • 易怒
    副作用通常不会持续很长时间或超过最初几个疗程。如果你的副作用很严重,停止光疗并联系你的医生。

    还有什么可以帮助治疗昼夜节律性睡眠障碍?

    以下是一些改善睡眠的建议:

  • 消除你睡眠环境中的蓝光。取下所有电子设备或将它们放在不会打扰你的地方。
  • 坚持有规律的睡眠计划。每天晚上尽量在同一时间睡觉,每天早上在同一时间起床。
  • 抵制打盹的冲动,尤其是在一天的晚些时候。
  • 经常锻炼身体,但不能在就寝前一小时内锻炼。
  • 让你的卧室保持凉爽、黑暗和安静。
  • 把咖啡因限制在早晨。
  • 睡觉后几个小时内避免饮酒和尼古丁。

关于其他帮助,可以和医生谈谈:

  • 药物,如褪黑激素或短期助眠药
  • 时间疗法,一种逐步提高或延迟睡眠时间以重置昼夜节律的疗法

最后

光疗法是一种对某些睡眠障碍的无创、非药物治疗。如果坚持使用,光疗法可能有助于调整你的昼夜节律,改善你的睡眠。
失眠可能是潜在健康状况的征兆。买灯箱前先和你的医生谈谈。这样,你就可以解决任何健康问题,而且你还可以深入了解光强度、疗程持续时间以及其他成功光疗法的关键。