三十六

三十六岁的生日,是在居家隔离中度过。

由于前几天和新冠确诊者在医院有过时空交集,昨晚社区工作人员通知我要我居家隔离四天。看通知上面的日期,昨天已经是第一天隔离了,不过因为通知太晚,白天去公司上了班。今天上午,工作人员过来贴封条、发告知书、上门做核酸。今天白天一天没有出门。而这两天周末,深圳六个区全部闭环管理,公交地铁停运,只有光明区维持正常上班。聪明的网友马上发出了“六大派围攻光明顶”的图片。

八月底,从工作了十多年的公司离职了,刚到新公司上班了两天。离职这个事情有多个因素综合在一起,这里不想过多提及,不过最主要原因还是想趁着现在这个还能有够有机会换工作的年纪,更换一下工作环境,尝试一下看自己还能不能够有进一步的发展。因为不换工作的话,还是待在之前的那个环境,对自己的未来感觉已经一望到头了——看得到个人发展的终点,看不到个人发展的希望。

四月份,老家的隔壁两户邻居要建新房。我和父母商议之后,也同意趁着这个机会把那间和邻居相连的房子,一起重建。五月份开始动工,到现在,一楼的墙面已经砌好,这几天正要浇筑二楼的地板。

人生中几个重要的事情都赶在了这一年发生,还是让我有点感慨,有些事情的发生真是有点奇妙!

消失的热情

我手上有一台DC6的搬瓦工,现在是把它套在CDN上使用,我还有一台普通的KVM搬瓦工,也是套在CDN上使用。套上CDN之后,两台VPS的理论速度应该是一样的,但是对于DC6来说,实在有点浪费它的速度。

至于为什么套CDN,是由于搭梯子IP被封了几次,每次被封的时候要重新进去把直连改为CDN,太麻烦了。现在的话,虽然速度慢一点,但好在比较稳定,随时都可以正常使用,而不用操心什么时候连不上,又要登上去修改一下设置。

关于IP被封,起初我一直以为是防火墙监测到IP流量异常而进行的封锁,后面上网才了解到是由于v2ray的一个漏洞导致tls+ws的流量可以被精准识别。我是19年建的服务端,那个时候的版本是存在这个漏洞的。要解决这个问题,就是更新版本,客户端的版本也要更新。可我的这个梯子有共享给几个人使用,要大家都更新客户端太麻烦了。况且安卓端的客户端我用的最方便的是BifrostV,这个软件也已经停更在19年,所以更新版本这个方案我放弃了。那没有办法,只能继续套用CDN使用了。

前几个月,我详细了解了一下V2Ray、Trojan、XRay这三个方案,尤其对Trojan go比较感兴趣,打算把DC6的服务器,改为Trojan go的直连。可是,这个想法一直停留在想这个阶段,虽然实施起来应该不复杂,可能最多花个一天的时间就可以搞好,可能还不要一天,说不定一个上午就可以搞好。但是我就是一直没有做的动力。

我觉得现在这样将就着用着也还好,又不是不能用,说不定Trojan go直连后,还是会被封,还是要改为CDN,与其那样还不如继续保持现在这样就好,省得折腾。

随着时间的推移,我发觉我那股子折腾的热情已经越来越淡了。

杂感

人的一生,重要的是过程,而不是一味的最求财富。

关于奋斗,一个人为了工作,把所有的时间都扑在工作上面,而忽略了家庭,这样可取吗?小孩的成长过程不可逆,错过某一阶段的陪伴,后面是再也不可能找补回来。

从生命维度来看,每个人都是平等的,不管是什么人,生命都只有几十载岁月。我们最求财富,追求地位,到生命的尽头,这些都与我无关。伟大如领袖,功过是非也都有出现在他身上,即使他的生平是多么显赫,但是对于我们后人来说,都是于己无关的事情。

我们要关注的是自身。如果你喜欢财富,可以尽情最求,如果你喜欢权力,也可以尽情最求。财富和权力是无止境的,这个度如何拿捏才最重要。

挣扎在生活边缘的人,满足生活所需是第一要务。如果生活的更好一点了,过好当下才是最重要的。

一味的和别人攀比,会让人过的很累。有时候是不是只要自己和自己纵向对比,现在比过去更好一点,是不是应该得到满足。

我们想要住更大的房子,到底多大的房子才算大。我们一定要让自己奔跑在奔波不息的奋斗之路上吗?

git文件夹权限及自动换行配置

[core]
    repositoryformatversion = 0
    filemode = false
    bare = false
    logallrefupdates = true
    autocrlf = false
    safecrlf = false
[remote “origin”]
    url = git@gitlab.synaptics.com:cordless/CMBS_Lite.git
    fetch = +refs/heads/*:refs/remotes/origin/*
[branch “master”]
    remote = origin
    merge = refs/heads/master
    [branch “_CL_2.01”]
    remote = origin
    merge = refs/heads/B_CL_2.01

忽略文件夹权限
filemode = false

不进行自动换行处理
autocrlf = false
safecrlf = false

命令行操作
查看filemode选项
    git config –get core.filemode

    git config core.filemode
设置filemode选项
    git config core.filemode true

继续阅读

STM32 SAI问题

STM32F446 SAI blockA和blockB配置为从模式,如果MCU先启动SAI,再打开音频芯片SAI时钟信号,此时MCU不能进入DMA中断,采集不到数据。用Jlink复位一下MCU,SAI接口的数据采集和发送才正常。不知道这个问题是什么原因。

解决方法有2种:1.MCU启动先不使能SAI,把音频芯片SAI时钟打开后再启动MCU SAI;2.把MCU的SAI配置为主模式。

但是对于这个问题还是感到很奇怪。

关于数组清零

不要使用赋值方法清零。对于16位数组,或者32位数组,赋值清零并没有把所有位都置零。

int32_t mix_data_new[SAI_SLOTS_SIZE][2] = {0};
#if 0
for (j = 0; j < 2; j++)
{
for (k = 0; k < SAI_SLOTS_SIZE; k++)
{
mix_data_new[j][k] = 0;
}
}
#endif

使用memset清零,可以确保每个数组中的每一位都被清零。
memset(mix_data_new, 0, sizeof(mix_data_new));

奇怪的问题

第1段:
int16_t data;
const char pcm_data2[] = {…};

data = pcm_data2[i];
data += pcm_data2[i+1]<<8;

第2段:
data = ((int16_t)pcm_data2[i+1] << 8 + pcm_data2[i]);

很奇怪,上面2段代码,在STM32F401上用MDK编译出来执行的结果不一样。第1段执行出来的结果是正确的,第2段执行出来的结果是错误的,并且不知道是怎么算出来的。

 

 

NUC安装LibreELEC唤醒问题

NUC5CPYB安装LibreELEC后,用2.4G遥控器按开关机键后机器进入待机状态,再按遥控器开关机键,电源指示灯恢复启动状态,但是系统不能正常恢复。
此问题是由于BIOS里面启动系统设置的是Windows,把BIOS里的启动系统设置为Linux后,遥控器开关机操控功能正常。

NUC关机后(非待机),按2.4G遥控器的开关机键也可以开机。需要修改BIOS电源选项,把USB S5唤醒功能打开即可。

红外关机唤醒,也需要打开CIR S4、S5唤醒功能。

继续阅读