大家好,心心念念的三年之气已到,但是我似乎对于博客专家的身份没有那么渴望了哈哈。虽然最近比较忙,但是看到三周年纪念日的通知,还是想写一点什么,并不是因为三周年有多么值得纪念,而是这段时间确实有一些想说的话跟大家分享,借此机会发表一下。
一、最近一年收获了什么
要说收获,最大的收获肯定就是遇到了志同道合的朋友和一直支持的大家,至于其他收获,且听我娓娓道来
大家可以注意到,从24年6月份往后我的更新频率直线下降,甚至可以说是断更了,本来这里还想说一下为什么,但是想想还是算了,就把这些留到想说的话里面说吧。
1.1 上位机开发
大概24年10份开始真正接触上位机开发,最开始我只知道用QT去做上位机,也做过一个简单的串口助手,其他了解的还有Matlab,后来我了解到除了这些还有C#、Labview等等,Labview算是之前就已经知道的,但是一直没研究,看了一下图形化的编程实在是有些适应不了。QT总觉得有些用不明白,最后选择了C#,虽然C#基本上只能用在windows里面,但是用windows的场景其实也不少。选择C#倒不是因为他有多简单,其实最开始也是不了解的,先是安装了VSCode,简单学习了一下C#的一些基本语法,后来发现想要做页面还要学Winform,后来又安装了VS,学习winform,编写了一些窗体应用,再后来发现了WPF,相比winform能够做出更好看的页面。
其实整体来说如果大家想学习上位机开发的话,或者说想快速写一个上位机的话,很推荐大家学习C#用Winform去写,个人感觉还是比较容易上手的,WPF相比起来就稍微复杂一些了,当然这些都是因人而异,如果你写过微信小程序或者网页,其实WPF对你来讲可能更熟悉一些。
1.2 数据库
其实我对数据库也不算多么了解,只是说简单地用过,安装了Mysql和数据库管理软件,编写了上位机能够实现数据的增删改查等等,做到的基本也就这些东西,但也算有个了解吧哈哈。
1.3 CAN通信
之前虽然也知道CAN通信,了解过一些东西,但是实际并不深刻,尤其是针对其中的一些协议,真正做起来发现,原来会有那么多协议和一些细节,比如如果你要用CAN报文发送一个超过8字节的数据你要怎么发送
比如要发送的帧数据是:2E F1 5A 24 11 29 46 5A 42 00 00 00 00,共12字节,发送时会被分成两个8字节数据的帧
第一帧:10 0C 2E F1 5A 24 11 29
其中10表示是第一帧(首帧);0C表示后续有效数据是12字节
第二帧:21 46 5A 42 00 00 00 00
其中21表示是后续帧;
再往后的帧依次是22……
当然这只是其中的一小部分,整体来说,过去一年对于CAN相关的内容有了更深的理解和更清晰的认知。
1.4 bootloader
对于bootloader也有了更深刻的认识,之前知道bootloader是下载引导程序,也就是大家口中所说的底层,当需要更新应用层程序时底层会将通信线传输来的程序写入到对应的地址,但是bootloader设计起来有哪些细节或者说要你设计一个bootloader要怎么设计,这些在之前我都是没有太多理解的。但是现在对于bootloader,我可能知道他可以设计一些安全访问的校验,比如自己设计一套密钥的计算方法,当需要更新应用层程序时可以通过通信线向要更新的设备请求种子,这里的种子其实可以设计成一个数据,得到种子之后按照事先约定好的计算方法计算出密钥,之后将密钥发给设备进行验证,如果正确可以进行下一步的操作,甚至于你可以把这个种子设置成限时的,如果在规定时间内没有得到正确的密钥就需要重新请求种子,甚至你可以设计一套自己的更新流程再写一个配套的上位机。
二、一些想说的话
其实总结之前的一年,我并没有什么很多的进步,甚至于我都没有时间继续去做嵌入式相关的内容,但是除了上面的一些收获外我认为这段时间的经历也是我收获的一部分,放在这里和大家一起聊一些我想说的话,下面的内容属于是一些主观性的东西,仁者见仁,智者见智如果你有异议或者觉得不适,还请见谅。
2.1 打开思路,敢于追求
很多时候我们会被各种各样的东西限制住,这些限制好像是来自于观念、工作、生活、自己的想法等等各个方面,这些东西告诉我们要有一个稳定的工作,告诉我们你坚持下去可能能做到更好,告诉我们你现在要怎么怎么样等等,但其实如果我们打开思路,我们似乎并不是只有限制以内的这些选择,尤其是当这些限制跟我们所热爱的东西冲突的时候,我们要去敢于追求,比如你在做你喜欢的工作,可是有人告诉你或者你自己某一天突然觉得你需要有一份稳定的工作,不然以后万一被裁员了怎么办,所以你选择考公考编或者其他稳定的出路,但是我们想想,即使某一天我们不幸被裁员或者因为某些原因失业了,我们依旧有很多选择,新的选择可能会导致我们没有那么体面,至少我们不会饿死。有些时候我们不要自己给自己一些限制,要学会打开思路。
2.2 坚持自己热爱的东西
去年我做了一份自己不认可不喜欢的工作。为什么不喜欢,一方面确实是跨行了,能胜任嘛,好像也可以胜任,但是发现自己做的东西即使在做五年十年也不会有什么实质的提升,另一方面整体氛围确实也是不太好,在刚开始准备做这份工作前我其实是犹豫的,但是因为某些原因我还是去做了,那段时间给我的最大感悟就是,要坚持自己真正热爱的东西,不要勉强自己甚至认为自己能够放弃。
2.3 要沉住气
有些时候我们可能会着急,或者说有些急于求成,又或者说对自己要求太高,导致我们有些乱了阵脚,做事情的时候我们要沉住气。做任何事都不是一口吃成胖子的,这个道理很简单,但是有时候乱了阵脚的我们反而很容易忽视这一点。刚开始做一件事情的时候不要对自己要求太高,我之前列了一些想要做的东西,设计文档整理的特别全面,各种功能想的非常齐全,但是真正做起来发现想要一开始就充着最完美的方向去做,似乎不是一个明智的选择,后面我就开始调整路线,先做到每一个功能能用,再考虑做整体,再把整体做到完美。
有时候看到很多大佬在谈论各种自己没有掌握甚至说没有接触过的东西,会觉得自己是不是进步太慢了,是不是换一个环境能够有更大更快的进步,是不是人只有年轻那几年才能做出成绩等等各种问题,导致自己焦虑沉不住气。首先不得不承认,年轻那几年很珍贵,是干事的年纪,可是我们要意识到并不是所有人都能在二十多岁三十岁干出成绩的,有些人干到四十五十才有一定成就,环境不同起点不同,不要因为这个自乱阵脚,只要我们当下是在步步向好其实就够了。我认为四十之前甚至到五十岁,我都还是可以做出成绩的年纪,可能成绩不大,甚至有些人都不屑一顾,但是人活一辈子,不就是要活的自己开心自己满意吗,不必太在意别人的看法。
其实含有很多话想说一说,但是时间原因,以后有机会再讲,祝大家看完能有所收获。
三、后面打算做什么
后面的话主要还是补短板,把自己薄弱的地方做起来,真正地做成一个系统,尤其是针对硬件设计和外壳设计,争取掌握上位机开发、单片机开发、硬件设计、外壳设计一套体系。
当然后面也会不断地记录自己的学习过程来和大家分享讨论,互相学习,也欢迎大家一起学习交流!
先预告一下最近要出的东西,首先是一个锂电池充放电和升降压电路的设计,从芯片的数据手册和大家一起学习电路设计方法,有不当的地方到时候还请各位大佬不吝赐教了,另外就是准备做一个wifi小电视套件,至于是什么样子的,做来干什么,这里就先不透露太多信息了,总之大家到时候是可以看到的哈哈哈!
最后祝大家工作顺利、身体健康、家庭和睦!还是再附上两周年时候的一句话,“只要方向没有大的错误,即使再慢,只要一步一步走下去,总会成功的”。