第28章 什么是单片机
第二天的夜自修。
陈星问老黄要了间空闲的教室,因为邵静瑜已经把笔记本给了他。
笔记本开机很慢,可让陈星疑惑的是,这笔记本的硬盘又很干净,甚至连一份课件都没看到。
分明是一台用了很久的机子,所以开机才很慢。但硬盘又比自己的脸还干净。陈星想到了一种可能。
他当即把笔记本翻来覆去仔细看了遍,最后在笔记本底部的某个螺丝孔上找到了答案。
那个螺丝孔上贴着一个小小的才三分之一个指甲盖大小的贴纸--保修凭证,07年9月。
额。。。眼下就是2007年9月。陈星意识到:这是邵静瑜刚刚买的二手笔记本。难怪硬盘会这么干净,但开机又这么卡。
估计是这块贴纸太小了,邵静瑜没有留意到。这才被陈星发现了端倪。
对方为了帮自己特地买了台笔记本,而显然对方没什么钱,所以才买了台二手的,然后谎称是自己常年使用的。
陈星心中顿时不是滋味。
一是感激邵静瑜的好心,二是再次想起邵静瑜的不易,再联想到自己。
哎,算了。所有的愁绪都化作力量,投入到学习中吧。陈星并不打算说破,就当做不知道,默默记下对方这份好意吧。
陈星拉了个拖线板,给开发板通上电,再把附带光盘中的软件一一安装到笔记本上。
老旧笔记本的风扇呼呼地发出哀鸣,费了好一阵功夫,陈星才总算把开发环境等各类软件安装完毕。
随后陈星用代码调试器把笔记本和开发板连接起来,向开发板中烧录了第一个测试例程--hello,world。
hello,world是IT领域每一门编程语言的第一个例程。就如它的字面意思一般,犹如婴孩来到世间的第一声啼哭。“你好,世界。我来了。”
不多时,开发板的4.3寸触摸屏中央展示出了一行闪烁的小字--hello,world!
这短短一串字符,则预示着开发板基础功能运行正常,也是陈星想对这个世界说的话:世界,我来了。
接下去就是各个用来测试开发板硬件功能的例程。
跑马灯。这不是真的跑马,而是一排交替间隔闪烁的流水灯。跑马灯的称呼由来是因为在灯面上绘制古代武将骑马的图画,灯屏上即出现人马追逐、物换景移的影像。之后经过不知是哪位技术大佬的硬凹,把LED灯的交替节奏闪烁叫成了跑马灯。因而这称呼也就一直沿袭下来了。
跑马灯例程是用来测试IO的驱动输出,还有timer的定时功能。定时器的作用还是很广的,最直观的用途就是眼下控制LED灯的周期闪烁。
接着是按键驱动例程。
这也是极为常见的硬件功能。就如眼下的各类手机,总是必不可少输入用的按键键盘。智能小车也需要有按键来完成人机交互,比如:配置小车PID调速的各项参数。
在固件烧录完成之后,如果要改动参数,肯定得靠配置改动,不可能靠重新烧录固件。就好比电脑不会为了改个桌面壁纸,而逼着使用者非得重新装一回系统。
再之后是中断例程。
中断的触发条件非常多,定时触发、检测到信号触发。中断几乎是单片机最重要的功能。
中断,顾名思义,就是中断单片机当前的正在执行的任务,告诉单片机某个条件触发了,你要不要看情况做点啥。
这就好比,你一边打游戏一边下载某类电影。电影下载完成后,叮咚一个弹窗告诉你:电影下载完了哦。然后你是继续打游戏还是看电影,就由你自己决定。
任何电子系统不可能永远干一件事情,也不可能非得等到一件事情干完后才去干别的事情。所以,中断的作用就是告知某些预先埋设的条件被触发了,好让系统调整任务优先级。
陈星认真盯着笔记本屏幕,连身边有人坐下都未察觉。
“给你。”趁着课间休息的功夫,林悦从楼下的小超市冲了两杯奶茶,和陈星一人一杯。
飘飘香奶茶是眼下最常见的冲泡奶茶,撕开包装一杯热水下去就能喝。味道不错,香甜可口,唯一的问题是“贵”。
学校小超市里卖四块钱一杯,几乎就是一顿晚饭的钱。陈星历来是不会去买的。
林悦看出陈星的顾虑--不想白白接受自己的好意,又不好意思推辞。
“我们等价交换吧。”
“什么呀。”
“我请你喝奶茶,你给我科普呀。科普你现在忙的事情。”
陈星自然明白林悦是故意给自己找台阶下,当下也就不再纠结,捧起了奶茶。
“你当心烫。”林悦还好心提醒。
“你想了解些什么。”
林悦想了会儿,“常听你说什么CPU,还有单片机。。。CPU我倒还了解,那单片机是什么东西。”
陈星合上电脑,索性就把和林悦的聊天当成了休息放松。
“单片机其实就是CPU的一种。CPU全称是:Central Processing Unit,中央处理器的意思。”
“每一套电子系统上面至少都会有一个CPU,因为计算机的本质是运算,而CPU就是负责运算的。”
“但是呢,随着应用场景的不同,CPU的功能也就不同。”
“比如说这台笔记本。它又能拿来开发软硬件,又能拿来写课件,还能用来看电影。功能需求繁杂,那对性能的要求就高。所以呢,CPU还得搭配足够空间的内存和硬盘才能工作。”
“内存就是程序的运行空间,硬盘就是拿来存放文档和电影的。”
“但是呢,你再想想你的文曲星。它不需要支持看电影和写文档。”
林悦插话道,“我的文曲星能看电影的,只是坏了。”
贫穷限制了陈星的想象,原来眼下林悦的文曲星是可以看电影的。“算我孤陋寡闻。你的文曲星能看电影,但是不能拿来写文档做开发吧。”
林悦认真点头。
“所以呀,每种电子设备都有它自身的应用场景。”
“再看竞赛涉及的智能小车。它的功能就更加单一了。只要控制行驶就可以,其实很多应用场景,比如电子手表之类,功能需求都很单一的。那这时候人们就想了,‘我干嘛弄一块功能齐全的CPU呢,那么多功能冗余放在那岂不是浪费。’于是单片机就诞生了。”
“单片机对内存和硬盘的需求,相比电脑来说,要小的多的多。电脑的内存动不动一个G,而这块单片机,”陈星指着开发板上的那块ST芯片,“它的内存才不到100K,也就是不到0.1M。而一个G相当于1024个M。”
“这可是万倍的差距,感受到这里头的成本差异了嘛。”
林悦频频点头,“你这么一解释我就全明白了,就是没必要白花钱去弄笔记本上的芯片。”
“没错。不过这只是其一,还有第二点。电脑卡一点没事,甚至死机蓝屏重启也没事。但是你想想电梯上的控制器,那玩意儿要是故障了会怎么办。”
“啊?”林悦惊讶道,“电梯上有单片机?”
“对啊,事实上汽车上也有一堆的单片机,哪怕电瓶车上也有。几乎所有的家电都离不开单片机。”
林悦算是被陈星打开了新世界大门。
“所以你发现没有,单片机不需要那么复杂的功能,但是它需要一些特定场景对应的功能。比如电梯控制器,就要求单片机的实时性非常高,稳定性要求也非常高。”
“电脑复制文件快点慢点都行,但是电梯运行显然不能快慢太过随意,而且电梯停止的位置不能偏差太大。否则你出电梯看到和楼面不平,你心里慌不慌。”
“最重要是,电梯不能像电脑那样容易死机。”
“所以,这就是单片机。准确来说,它是适用于特定场合的一类专用CPU。”
林悦好奇道,“你上哪知道这些的。”
“暑假恶补了很多功课。”这确实是AR指引之下,陈星一个暑假努力的结果。
“好厉害的样子。”瞬时上课铃声响起。
“怎么这么快就上课了。”林悦噘着嘴埋怨时间过得好快。
陈星取笑道,“快回教室吧。这里只有冰冷又枯燥的电子知识,还有无趣的我。”
“你可不无趣。”林悦脸上带着笑,飞快赶往教室。