stm8l timer 设置问题

系统时钟配置为16M,程序使用TIMER4做为系统定时器,使用如下配置
TIM4_TimeBaseInit(TIM4_Prescaler_16, 99); //100us
程序可以正常运行。

我想把定时器的周期改为10us,使delay()的精度达到10us,
TIM4_TimeBaseInit(TIM4_Prescaler_16, 9); //10us
这样修改之后,发现系统不能正常运行了,程序启动的打印信息都没有。我一度怀疑是程序跑飞了!

经过排查发现是TIMER的中断响应太快,占用了系统的全部资源,主程序的运行完全被TIMER中断打断了。我测试在TIMER中断里面点灯操作是功能正常的。

NAS存储空间损坏

蜗牛星际里面已经有2块硬盘出现存储空间损坏。一块4T是2月14日出现的,另一块1T是4月14日出现。

这两块盘从2020年工作到现在,只有两年多的时间。并且平时的读写量也很少,不知道为什么会接连出现这个问题。我在一月份更换过电源,不知道是不是更换电源引起的。

第一块硬盘报错的时候,我就考虑过要不要替换掉黑群晖系统,因为黑群晖的硬盘不能单独休眠,我想更换一个可以设置硬盘独立休眠的系统。经过对比之后,发现Window系统比较合适。只是迟迟没有行动,没想到第二块硬盘又出现问题了。

6月14日补充:今天又损坏一块4T硬盘。按这个趋势,8月14日是我最后一块硬盘损坏的时间。

7月14日补充:应该可以确定就是电源导致的硬盘故障。我把机箱内的主板换了之后,插2个3.5寸硬盘,一切都正常。插上4个3.5寸硬盘,问题就出现了,有一个盘掉盘,变成RAW格式。还好使用万兴数据恢复,恢复了丢失的数据。

10月31日补充:前两天把电源换成蜗牛星际的原装电源,没有出现“存储池已损毁”的问题。那天更换电源的时候发现之前的电源有接一个大4PIN延长线。我把这个延长线拿到公司测试——传输2A电流电压会降低1V。我怀疑是这个延长线导致硬盘出现“存储池已损毁”的问题。我已经购入了新的大4PIN延长线,有空再来验证一下。

11月1日补充:果然是大4PIN延长线的问题。电脑换上新买的延长线,在群晖系统里面同时对四个盘进行数据读写,一切正常,没有出现问题。

我在公司测试了新买的延长线,传输2A电流电压下降0.3V,传输3A电流电压下降0.45V,之前的那根延长线传输3A电流电压会降低1.5V。拆开那根有问题线,里面的线径很细,根本不是丝印上面的18AWG规格。
从年初更换电源到现在,黑群晖“存储池已损毁”这个问题一直困扰着我。我以为是主板的问题,更换了主板。我以为是硬盘背板的问题,更换了硬盘背板。我以为是电源的问题,期间又买了一个台达的电源。但是替换电源的时候没有去掉那根延长线,结果还是出现“存储池已损毁”这个问题。

一个电源出现问题,换一个电源还是有问题,难道问题不是出在电源上?我上网搜索“存储池已损毁”相关的问题,有人说是电源的问题,也有人说是群晖对硬盘读写的延时阈值比较高出现的误判。我搞不懂我出现这个问题的原因。

之前在使用过程中我发现接四个硬盘很容易出现问题,于是我只接两个硬盘使用,可是只要有数据读写还是会出现问题。由于掉盘,我甚至怀疑是黑群晖系统不稳定,于是买了DS218Play。还好,虽然出现“存储池已损毁”的提示,但我的数据没有丢失。在ESXI中关闭群晖系统,替换引导文件,再重新打开群晖,盘还在、数据也都在。

哎!!!就是这么简简单单的一根延长线,却给我搞出这么多麻烦的事,真让我无语!好在问题终于解决了,这近一年的困扰终于得以解除。

(呵!呵!呵!

其实这根有问题的线是我自己用一个大4PIN母头和公头做的延长线,因为当时更换的电源大4PIN供电线太短,所以自己DIY做了这根线。我当时做线的时候根本没有注意到线径太细,只测量了一下导通就完事了。

真是too young too simple,自己挖的坑最终自己掉进去了!)

米家智能插座和向日葵智能插座功能对比

先说结论:
1.电脑远程开机,使用向日葵智能插座;
2.生活中使用,推荐米家智能插座。

功能差异:
1.向日葵智能插座支持断电记忆的功能。即停电之前插座是打开状态,来电的时候插座保持打开状态;停电之前是关闭状态,来电的时候保持关闭状态。
2.向日葵智能插座关闭断电记忆功能,插电默认是关闭状态
3.米家智能插座没有断电记忆的功能,插电默认是打开状态
3.更新了固件后,米家智能插座支持断电记忆功能了
4.米家智能插座支持循环任务功能,可以设置开启时长和关闭时长。启动循环任务,插座会按设置的时间循环开启和关闭
5.向日葵智能插座不支持循环任务的功能

相同点:
1.都支持远程开关的功能
2.都支持定时任务的功能。向日葵智能插座最多支持20个定时任务;米家智能插座任务数APP里面没有限制,但是设置的定时任务过多,定时任务功能和循环任务功能都会失效。我设置了96个定时任务,设置过程中有出现定时任务设置失败要重启插座后才能继续设置,设置好之后就出现了功能失效的问题。因此米家智能插座任务数的上限数不清楚是多少

使用场景
1.电脑的远程开关机,我使用向日葵智能插座。因为在停电后再来电,电脑不会自动开启
2.控制小鱼的氧气泵,我使用米家智能插座。我设置循环任务10分钟开启,20分钟关闭。这样即保证了水里的供氧量,也能延长氧气泵的使用寿命。

向日葵的插座如果能增加循环任务功能,或者米家的插座支持断电记忆的功能,那就更好了。

功耗补充:
1.向日葵智能插座C1-2开机的功耗为0.5W;关闭的功耗为0W
2.米家智能插座2蓝牙网关版开机的功耗为1.1W;关闭的功耗为0.5W

蜗牛星际相关

1.蜗牛星际的机箱只适合安装不带风扇的CPU或者低功耗CPU。我把i7-6700安装到蜗牛的机箱里面,CPU散热器的声音非常大,让人不能接受。散热器噪声的问题有可能是因为我用的便宜散热器。可是经过此次尝试之后,我彻底放弃升级蜗牛星际主板和CPU的想法。

2.蜗牛星际双网口的主板和康舒FSB009的电源有兼容性问题。我这块双网口的主板没有CPU供电,接上FSB009电源后开机,主板会一直重启;更换其它的电源就可以正常开机。康舒的这个电源用在其它主板上是正常的。我猜测有可能是这个电源在启动的时候会监测CPU供电,当开机时检测到12V电源没有电流时,会自动重启。

电脑被入侵

昨天在家里,我看到我的台式电脑电源灯是亮的,可那个时候我并没有开机。我只当是电脑出现自动启动更新软件,没有深究这个事情,因为之前这个电脑也出现过很多次自动启动的情况。

今天想起这个事情,我便登入家里的电脑查看了一下日志。日志上面显示昨天的电脑开机有登入系统的操作,这让我一下子感到有点担心,我还清楚的记得之前公司的服务器2次中勒索病毒的事情。万幸的是,登入我电脑的人没有使用勒索病毒。我又查看群晖的日志,群晖没有登陆的操作,但是有通过smb访问共享文件夹的记录。

我想找出别人是通过什么途径进入我的电脑,首先想到是zerotier组网。我有加入几台别人的电脑进入zerotier网络,于是立刻进入zerotier官网,把那几台电脑禁用掉。然后我查看日志,看到登录记录显示是群晖虚拟机里面的windows ip登入的系统。我把虚拟机的windows系统关机,我修改了windows系统hotmail账号的登录密码,修改了163邮箱的密码,目前我能想到可以做的事情只有这些。

在今年年初的时候,我的N1软路由就被别人修改过设置影响了正常上网功能。那个时候N1我是做主路由的,拨号和网关都在软路由里面操作。经过那次事件后,我把N1重新刷机,把拨号的功能放到硬路由里面操作,N1只做网关的功能,并且把N1的密码也修改成了随机密码。

我在电信里面申请了公网IP,不知道是不是公网IP的缘故导致家里的网络容易受到攻击,我也不知道我现在的电脑里面有没有被安装后门程序。最好的方法是把电脑重装一遍系统,但是如果不知道别人入侵的根本原因,还是会有再次被入侵的可能性。

软路由使用记

在2020年初观看油管视频,了解到软路由这个东西。后面心里一直种草,最终入手了一台D525小主机做软路由。这个小主机的优点是便宜,缺点是功耗大,整机功耗有20瓦。在使用了一段时间,对软路由基本功能都熟悉之后,鉴于小主机的功耗太大,对比其它动则几瓦功耗的软路由,这个功耗实在有点太高,后面便入手了一台NUC小主机做软路由。这个小主机的待机功耗不到10瓦,可以满足我的需求。后面刷视频看到N1盒子,待机功耗不到3瓦,心里又开始种草。于是又入手了N1盒子做软路由。这个N1盒子一直使用到现在。

直到上周,更换主路由后,N1盒子连续2天掉线,让我重新审视软路由这个设备。最后,我把软路由安装在黑群晖VMM虚拟机里面,主路由开启DHCP功能,软路由开启强制DHCP功能。这样就算软路由出现异常,不影响家里的正常上网功能。至此,软路由从一个物理设备变为了一个虚拟机系统。精简硬件之后,光猫上面的那一堆网线终于变得清爽了。现在只保留了光猫和无线路由器这2个设备在那里。

兜兜转转这一圈,家里的路由设备又恢复到了最初的状态。但是这个从没有到有再到没有这个过程,却是我对软路由设备的一个整体认知和使用的提升。

软路由的作用

软路由我目前只使用到4个功能。第1个是科学上网,第2个是DDNS,第3个是zerotier组网,第4个是网络唤醒。

前面两天,软路由连续2天出现异常,导致zerotier不能正常组网,让我开始重新审视软路由的作用。科学上网功能我可以在各个设备上安装v2ray客户端,zerotier也可以在各个设备上安装客户端,DDNS应该可以在黑群上面的windows上安装一个DDNS客户端进行上报,网络唤醒也可以在windows上面进行操作。那么我是不是可以把软路由这个设备取消掉呢?这个想法貌似是可行的。只是在各个设备上安装v2ray和zerotier会有点繁琐。

或者我是不是可以在黑裙上安装一个openwrt的虚拟机。考虑到上次黑裙设备出问题,且all in one的话,一台设备出现问题会导致很多服务不可用,这也是我不想使用all in one服务的原因。但是我可以把DHCP的服务在主路由打开,openwrt仅仅只是做DDNS、zerotier组网和网络唤醒功能。openwrt的打开和关闭,不会影响家里设备正常上网的功能。这样的话,我就可以把N1的物理软路由关闭掉。

尝试了一下,群晖虚拟机安装openwrt方案可行。以后就把openwrt跑在虚拟机里面运行了。

Synology drive无法同步问题

使用Synology drive同步.git文件夹时,可能会出现“无法同步,正在使用或没有访问权限。(故障排除)”的问题。出现此问题,是由于被同步的文件是只读文件。查找文件发现是.git目录里面的objects目录下的文件。修改objects目录,去掉只读属性即可。

如果.git文件夹太多,逐个去掉目录的只读属性太麻烦。直接对需要同步的总文件夹修改,去掉只读属性,并且“将更改应用于此文件夹、子文件夹和文件”,即可。

其实此问题的根源是Synology drive的问题。在对包含.git目录的文件夹进行同步的时候,里面objects目录内容根本没有改变,是不需要对里面的文件进行修改的。但是Synology drive要修改里面的只读文件,导致出现问题。