时间:2018.7.1-2019.7.1

1、第一件事是帮导师注册一个自己的公司,方便所做项目的推广和介绍,另外和外面合作项目可以少交点税。

在湖南,现在注册公司很简单,公司有一个办公地点(可以租房子也可以是自己的家),然后在网上申请,在领营业执照之前都不需要去工商局的。
湖南这边注册公司的网站是:湖南省工商网上应用平台(一开始不熟练,来来回回改了三次,用了两周时间,人家那边服务态度挺好,就是周末不上班)

2、第二件事是学Altim Designer,画原理图,进而画PCB图,然后板子发出去(当时用的深圳嘉立创公司,单层双面板没问题,焊盘不会轻易掉,拼板也很方便),大概两三天板子回来,然后焊接,焊接完通过JTAG下载程序进去软硬件联调。

其中我们用的MCU是STM32F103VET6,内部资源我们的项目够用。

一年时间就是重复这个过程,做了几个项目,分别是负离子检测仪、直流励磁控制板、无功补偿控制板,飞机操纵杆中用到的双极性正弦波发生器等。前面是师兄做的,如图:

举个例子:


原理就是从左边进入要检测的信号,经过高精度AD转换,进入处理器,在MCU运算过后,控制右上角继电器闭合,投切电容器进线路,对无功功率进行补偿。

下面如图,这本900页的书,看了其中700页,看完就可以进行简单的STM32的编程。学会利用它里面的资源就行了,比如普通的输入输出(GPIO)控制开关量,宏定义,中断,UART串口,DMA,ADC,定时器TIM1-TIM8,这些就够了。另外:学习时候用的是野火霸道的开发板,正点原子的也可以。

3、第三件事是,其中一个项目,想做一个手机APP,接收来自PCB控制板的数据。

板子通过 串口转WiFi模块,使用WiFi传输,TCP/IP协议。
用单片机接wifi模块(TXD和RXD两条线),配置WiFi模块工作在AP模式,手机连上wifi,手机中的app发送或者接受单片机的数据。

我自学了一个月Java,用Android Studio做了一个界面出来,这种可视化编程很简单,拖动控件过来就好了,然后在控件背后注册监听,即可实现功能。(后来还在里面加了一个音乐播放的功能)。但是因为TCP通信没搞通,加了手机联网声明以后手机还是没反应,所以后面也没做。


4、第四件事是,受到同学的影响,想去学python,买了500元的书,如图:

左边基础,右边进阶。

学了一个多月,因为前面有过学习Java的基础,都是面向对象编程,所以学python语言本身比较快,和C语言的面向过程编程区别就是类、多态、继承这些。然后就是机器学习(包含深度学习),神经网络的这些理论,比如学习神经网络中的CNN卷积神经网络,RNN循环神经网络等。但是学到后面发现其实这只是一个工具,不太能就业。

举例说明:用python做网页做运维,并不是AI,python的可视化编程做的不好,还没发现好用的IDE软件。可是,那些深度学习模型需要结合opencv做视觉或者结合LSTM做语音识别,才好找工作,或者你纯做算法,做算法工程师。(AI行业工资不低,硕士毕业大佬们高的有3-6万一个月,如下图)

因为了解到python的深度学习只是一个工具,想就业必须和opencv视觉识别结合,或者和语音识别的东西结合,或者和机器人运动结合,所以就需要去学另外的东西,长路漫漫,我就暂时搁置了。主要没人带,学理论还是很勤奋的。但我认为,没有白学,这些东西能打开你的全局观,与你的其他知识合成体系。

另外,这个方向确实是未来的趋势,但是门槛确实不低。(意思就是说,如果做AI,你先学python语言本身,然后,学习机器学习深度学习里面的算法,经典的算法要会推导,然后用python将这些算法实现,然后将其应用,应用的话就需要结合opencv视觉或者其他等等,万物皆可AI)(其实tensorflow、pytorch这类库为你实现了很多算法,直接调用就好,但是你灵活运用要很久)

提醒一下,如果学python搞AI,就业一般要求硕士及以上,因为你学过那些理论你就知道,它要求你数学好,要求你静得下心。本科阶段,其实你并没有那么多时间,也不一定有那个兴趣天天搞数学推导(高数、线性代数、概率论、统计学),天天搞模型,调参数,梯度优化。

智能机器人、计算机视觉、智能金融、自然语言处理的公司是现在较为成熟的、数量较多的,计算机专业、数学专业毕业的可以考虑向这个方法发展,毕竟第一届人工智能专业的学生还没毕业哈哈哈哈,我们学校才刚成立人工智能学院。(温馨提醒:学AI方向,就业要去沿海大城市,内地不好找工作,没有这个岗位,有也很少)

AI本不是易事,在计算机行业已属TOP领域,需潜心钻研方可入行。

分享一些数据竞赛平台:可以在这里参加一些比赛,检验自己的学习成果

Kaggle:https://www.kaggle.com
天池:https://tianchi.aliyun.com/home
DataCastle:http://www.pkbigdata.com
Datafountain:https://www.datafountain.cn
Biendata:https://www.biendata.com
AI Challenger:https://challenger.ai
Kesci:https://www.kesci.com
FlyAI:https://www.flyai.com


5、第五件事

给导师的公司建立一个公司网站,我花了10天搞定了(上学主要就是锻炼你的学习能力,公司需要你面对新东西的时候快速上手)开发软件用的是Adobe Dreamweaver CS6,上手很快,这个IDE做的很好。我并没有系统去学HTML和CSS语言,用了一个网页模板,
看懂框架,在里面把东西改成自己公司的内容就好了。然后在huashengke买一个有内网chuantou功能的域名,在自己电脑上,打开windows的IIS服务,把网站发布,关键点是在huashengke上把gongwang的域名
和自己电脑内网的IP地址与端口号映射一下,就连接到一起了,gongwang顺利访问!(这点导师教的)



6、第六件事是,学了一年的硬件,暂且算初级硬件工程师。

外面做硬件的同学说硬件工资低,软件工资高。这没办法,做硬件你研发阶段要浪费公司多少钱,一版一版的改进,浪费很多电子元器件。软件的话,给你一台电脑你就一直编一直改就行。不过反正最后都是搬砖喽(重复劳动)。

搞硬件的属于重资产行业,钱都花到设备,物料,生产,测试,加工上面去了,注定工资低,搞软件的属于轻资产行业,人力成本是最主要的,所以工资会高,也部分解释了,为什么搞应用软件工资高。

分析了自己的处境,另外考虑到沉没成本,发现还是需要编程才能真的提高自己。但是只学单片机里面的编程,比如只编写STM32的程序,做一个单片机工程师,做出来的东西有限。比如用keil写程序,点击编译,你不知道点击这个按钮以后系统做了什么事,另外,下载到板子上的程序,其实不是从main函数开始执行的,是从bootloader开始执行的。要做嵌入式才能真正把握整个系统,所以打算用半年时间学习linux。嵌入式的知识体系比单片机的知识体系大很多,个人感觉嵌入式包含了单片机

举例说明:如果一个机器人在你面前,他的某个关节可能是单片机做的,单片机控制电机运动。但是他的大脑肯定是运行有操作系统的,才能完成如此大量复杂的处理,跑大模型,也就是嵌入式。所以单片机和嵌入式大概是这样一个关系。

所以现在的路径是这样: 本科电路、模电、数电基础 →→ 纯硬件 →→ 单片机(STM32F1系列) → →linux入门(Ubuntu环境) → →linux裸板→ →linux驱动 → →linux内核,当然linux应用(安卓)也可以接触一下,如果按照这个路径,自己以前学的东西是不会白学,而且嵌入式的工资也比纯硬件的工资要高,与此同时,知识框架也是越来越大的,个人认为学嵌入式属于单片机的进阶。但在工作中两个都要懂,毕竟产品里面单片机便宜,各有各的优势。

做好规划后,学之前,我先复习了一遍C语言,linux看了本《鸟哥的linux私房菜》,然后开始学板子。

买个嵌入式开发板,学裸板,类似于学STM32的板子那样学会控制内部资源。再写uboot,shell脚本,交叉编译,然后开始学习linux系统编程,学一下文件IO,进程间通信(IPC),多进程线程,再看一下网络编程。然后学驱动。也就是韦东山老师的那套流程吧,如图:

第一期如下图:(一共4期,所以学习周期比较长,半年差不多):

第一期与第二期衔接:

第二期视频:

学完一二期以后再更新此博客。

我买的板子:

7、第七件事当然是写论文,没有论文不能硕士毕业呀,满打满算两年半时间,要花一年时间写论文,所以搞实践的时间也就只有一年半,加油。(补充:2020.04.15发了自己的第一篇小论文)

8、第八小事,很多我做的东西,遇到解决不了的问题,都在百度或者CSDN网站找解决方法,CSDN(Chinese Software Developer Network)真的给好评,感谢无私的程序猿们,写技术博客很累的。
但如果系统的做某件事,当然是有规划的看书,书才是框架,事无巨细。

我一般不在技术交流群里问,因为:


还有这种:


哈哈最后开个玩笑,群里还是有热心水友的,关键你进的什么群。
另外感觉很多付费群的群文件还是有很多好资源的,而且都是按目录整理好的,包括学习路径规划、软件安装包、视频链接、电子书等等。加油!

9、推荐几个程序员常逛的论坛:CSDN和博客园我以前常用。

刷题网站总结:

10、后记:

在计算机方面当了一年门外汉以后,意识到一个比较严重的问题:就是非计算机专业科班的,想转计算机行业,不能被表象蒙蔽了。

具体讲,不要认为计算机专业就是程序员,就是coder,计算机专业更应该是计算机科学与技术,一开始是数学的一个分支。

不能被那些培训班眼花缭乱的广告骗了,比如三个月成为python精英,三个月Java速成,都是假的,想要在计算机行业长足发展,必须要注重基础,例如:《数据结构》《计算机组成原理》《计算机操作系统》《计算机网络》这四大计算机核心课程等等。

《数据结构》是讲数据的基本组成方式,如:队列、栈、二叉树、链表、图等,以及基本的算法。
《计算机操作系统》是站在软件的角度看计算机的运行原理,《计算机组成原理》则是站在硬件的角度来看计算机的运行原理。因此这两门课对于学习计算机的学生来说非常重要。
《计算机网络》第六版,谢希仁,445页,全书讲的就是OSI(TCP/IP)通信协议栈各层协议的原理和具体实现方式。如图

因为我们应该知道程序本质上是数学模型的表达,数学算法的表达,所以数学基础非常重要,进而就是算法。表象的技术一直在变,但底层一直没有变,不懂本质,永远只是技术的熟手而已。简单讲,就是我们不能只是语法的编程,而是数学的编程,语法是基础,不可以只会了语法就以为自己是计算机大神了。用了个好的IDE就以为自己是大神,这是完全错误的思想。

证明截图:


就是如下的计算机四大专业基础(也是计算机考研必考):

作者微信号,欢迎同行交流:

第六篇 研究生第一年相关推荐

  1. 研究生第一篇科研论文常犯问题总结

    ↑ 点击蓝字 关注视学算法 作者丨喻海良,中南大学教授,博士生导师 来源|http://blog.sciencenet.cn/blog-117889-1018759.html 极市导读 本文作者为中南 ...

  2. 研究生第一篇SCI成功发表

    研究生第一篇SCI成功发表✌️✌️ 一.期刊的选择 Medical & Biological Engineering & Computing(MBEC) 医学与生物工程和计算期刊 官网 ...

  3. 一年六篇顶会的清华大神提出Fastformer:史上最快、效果最好的Transformer

    来源:新智元 [导读]Transformer模型好是好,可惜太慢了!最近一位清华大神在arxiv上传了一篇论文,提出新模型Fastformer,线性时间复杂度,训练和推理效率史上最快,还顺手在排行榜刷 ...

  4. 2019第十六届研究生数学建模竞赛--跨越五年从本科省二到研赛国一

    本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可. 2019第十六届研究生数学建模竞赛--跨越五年从本科省二到研赛国一 感谢 序言 本科建模竞赛的失败经历 研究生建模竞赛的成功经历 ...

  5. NeurIPS 2021六篇杰出论文公布,谷歌工程师11年前论文获时间检验奖

    来源:量子位 NeurIPS 2021将于下周正式召开. 近日,大会委员会公布了NeurIPS 2021的杰出论文奖,时间测试奖,以及今年新设的数据集和测试基准最佳论文奖. 杰出论文奖 今年有六篇论文 ...

  6. 计算机网络教室课程安排表,关于计算机教学计划汇总六篇

    关于计算机教学计划汇总六篇 时光飞逝,时间在慢慢推演,我们又将奔赴下一阶段的教学,我们要好好计划今后的教育教学方法.是不是无从下笔.没有头绪?以下是小编收集整理的计算机教学计划9篇,欢迎阅读与收藏. ...

  7. SQL Server索引进阶第六篇:书签

    SQL Server索引进阶第六篇:书签 索引设计是数据库设计中比较重要的一个环节,对数据库的性能其中至关重要的作用,但是索引的设计却又不是那么容易的事情,性能也不是那么轻易就获取到的,很多的技术人员 ...

  8. 秒杀多线程第十六篇 多线程十大经典案例之一 双线程读写队列数据

    本文配套程序下载地址为:http://download.csdn.net/detail/morewindows/5136035 转载请标明出处,原文地址:http://blog.csdn.net/mo ...

  9. objective-c 编程总结(第六篇)运行时操作 - 方法交换

    objective-c 编程总结(第六篇)运行时操作 - 方法交换 后面主要介绍oc类的运行时行为.这里面包括运行时方法的更换,消息的转发,以及动态属性.这些对于面向方面编程AOP的热爱者还是很有用的 ...

最新文章

  1. Go 使用 append 向切片增加元素
  2. 手机端网站排名优化需注意哪些细节?
  3. Python画散点图(Knn中数据)
  4. 算法与数据结构(Java解八皇后问题)
  5. imx6 板卡移植官方yocto版本(1_安装环境)
  6. php比较float大小,PHP中两个float(浮点数)比较实例分析
  7. IOS 4.0 以上版本 home键退出 后台执行代码
  8. 设计制作简单计算机,自己设计制作CPU与单片机
  9. 《Python编程从入门到实践》记录之第6章 字典操作知识总结——字典遍历、字典嵌套等(思维导图)
  10. TensorFlow 教程 --教程--2.8循环神经网络
  11. Opera Unite如何架设自己的网站
  12. JavaWeb——响应编码与请求编码
  13. OMNeT学习之TicToc2-7详解
  14. 百度云OCR文字识别
  15. 光线跳线转接太多,断网了
  16. 熊出没机器人光头强_《熊出没》里的温馨时刻,原来光头强和熊大熊二的关系也能这么好...
  17. 性能衡量指标-吞吐量与响应时间
  18. 怎样将wmv格式的视频转换成mp4格式
  19. IP 地址详解(IPv4、IPv6)
  20. 学习USART自闭实录(stm32F411RE)Stm32cubemx

热门文章

  1. 丐中丐双卡个人微型工作站,二手Tesla M40 12G水冷显卡改造上机心得
  2. Java Robot 编写脚本机器人(四)利用Java帮你打英雄联盟
  3. dmb mysql_MySQL DMB监控备份系统更新至v2.2
  4. Java编程——Date,根据生日算天数
  5. java swt 下拉列表_用SWT实现MSN风格的下拉框
  6. 智能穿戴设备洗牌正当时,彩屏荣耀手环4机会来了?
  7. 安信可-A7模块——C语言编程实现GPS功能
  8. 基于SpringCloud微服务车辆管理系统
  9. C#windows车库信息管理系统
  10. PMP认证需具备哪些条件啊?费用多少啊?