给西电吧小朋友们的单片机学习指南(一):学习之前的准备

今天西电吧某位旧友给我发私信,要我推荐一款开发板给他,以供他学习~推荐完之后,才忽然想起寒假前给吧友们承诺要出一个单片机的学习教程,如今寒假已经过去一个月,却未见动静,为此对吧友们表示万分的抱歉。

 

出这个教程,也觉得万分惶恐,一来近来要做的比赛繁多,时间不够,再者水平有限,万一有错漏之处,恐怕会贻害不少人。所以如有疏漏,还请有经验的人指正。

对了对了,我还有一个严♂肃的声明呢:

本文及以后文章中,凡是没有特殊声明的,单片机一概指宏晶的STC89C52RC单片机,引脚为双列直插封装。
本文及以后文章不进行汇编语言的讲解,但是会提到相应的指令集。
对文章内容有问题请在贴吧相关帖子进行讨论,谢谢。(我才不会说我是为了经验呢!)


 

好了,言归正传,在开始讲解单片机之前,我们要想明白一个问题:我们为什么要学习单片机?

 

  • 因为看起来很酷?
  • 因为想做竞赛?
  • 因为跟风?

之所以问这个问题,也是因为之前曾在科协带过一些学弟学姐(只要是妹纸我都叫学姐,人家毕竟还小)学过一段51单片机,然而收效却没有我想象的那么好,固然与我讲课水平太差有关系,然而应该还有别的原因在。总之还是希望选择了还是坚持一下的好,毕竟花钱买了开发板~有坚持总会有收货的~

 

OK 现在真的进入正题了:

学习单片机之前,我希望大家有以下准备:

  •  一定的C语言基础
  • 一块开发板(关于开发板,会在文章最后有推荐)
  • 一台电脑

关于一定的C语言基础:

其实在大家都推荐的郭天祥视频教程中,C语言是和单片机一起讲授的,但是毕竟C51和ANSI C(即C99)还是有很大的差别,所以为了不让大家对C语言有错误的认知,还是建议大家先对C语言有一个相对系统的学习。而且我也希望出现在文章中的代码,不需要我对通用语法部分有太多的赘述,以让我们能把视线集中在单片机本身。

 

还有需要准备的学习材料:

  • 郭天祥十天征服单片机系列视频(一般买开发板都会送)
  • 一本(几本也行)关于单片机原理的书

需要准备的软件清单:

  • KEIL4uversion (一般开发板会送)
  • stc-isp (烧录单片机程序的软件,一般开发板也会送)
  • sscom(或者超级终端,用于串口通信,一般开发板资料会送)

其他就没了,如果有同学实在缺上面的软件,可以在贴吧跟我说,我可能会分享(可是校园网流量伤不起啊!!!)

现在我来说一下,什么是单片机:

单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。

 

↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑以上内容来自百度百科↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑

看得懂吗?看不懂吧?反正我第一眼看,是没看懂。。

OK,那么我用我的理解说一下什么是单片机(尽管我觉得我这种火星人说出来你们更不懂。。)

单片机,就是一个微型的计算机,与传统计算机不同的是,我们可以用自己设定的逻辑或者说方法,来改变其工作状态,完成对系统的控制(比如说人机交互)。玩过乐高嘛?yse you‘re right 就和那玩意一样,自主控制,随心所欲。

还是不懂?OK,下面是上图时间,让我来告诉你单片机可以做什么。

 

 

 

蓝牙门锁?太丑了太丑了,看下面这个:

 

太简单不智能?弱爆了,看这个:

 

 

果然小车太屌丝了。。来个富帅的!

另外,我们现在的智能手机,很多的版本CPU也是ARM的内核,ARM也是如今流行的一种单片机架构。

可以说单片机可以完成我们想做的任何智能设备。

嗯,还是满高端的。

今天思路有点乱,很多想说的,但是现在说不大合适,等我整理好了吧。

最后推荐两款开发板:

慧净开发板:

http://item.taobao.com/item.htm?spm=a1z10.5.w4002-1930577668.12.2g6dVM&id=35534686697

郭天祥原版开发板:

http://item.taobao.com/item.htm?spm=a230r.1.14.5.1wJM0m&id=178257290

其他的开发板也就那样吧,不是性价比太低就是资料乱。另外视频还是郭天祥的比较好,为什么好呢,因为郭天祥不说方言。嗯,就这样。

本期的照相机小讲堂就结束了~谢谢~

深度学习是机器学习的一个子领域,它基于人工神经网络的研究,特别是利用多层次的神经网络来进行学习和模式识别。深度学习模型能够学习数据的高层次特征,这些特征对于图像和语音识别、自然语言处理、医学图像分析等应用至关重要。以下是深度学习的一些关键概念和组成部分: 1. **神经网络(Neural Networks)**:深度学习的基础是人工神经网络,它是由多个层组成的网络结构,包括输入层、隐藏层和输出层。每个层由多个神经元组成,神经元之间通过权重连接。 2. **前馈神经网络(Feedforward Neural Networks)**:这是最常见的神经网络类型,信息从输入层流向隐藏层,最终到达输出层。 3. **卷积神经网络(Convolutional Neural Networks, CNNs)**:这种网络特别适合处理具有网格结构的数据,如图像。它们使用卷积层来提取图像的特征。 4. **循环神经网络(Recurrent Neural Networks, RNNs)**:这种网络能够处理序列数据,如时间序列或自然语言,因为它们具有记忆功能,能够捕捉数据中的时间依赖性。 5. **长短期记忆网络(Long Short-Term Memory, LSTM)**:LSTM 是一种特殊的 RNN,它能够学习长期依赖关系,非常适合复杂的序列预测任务。 6. **生成对抗网络(Generative Adversarial Networks, GANs)**:由两个网络组成,一个生成器和一个判别器,它们相互竞争,生成器生成数据,判别器评估数据的真实性。 7. **深度学习框架**:如 TensorFlow、Keras、PyTorch 等,这些框架提供了构建、训练和部署深度学习模型的工具和库。 8. **激活函数(Activation Functions)**:如 ReLU、Sigmoid、Tanh 等,它们在神经网络中用于添加非线性,使得网络能够学习复杂的函数。 9. **损失函数(Loss Functions)**:用于评估模型的预测与真实值之间的差异,常见的损失函数包括均方误差(MSE)、交叉熵(Cross-Entropy)等。 10. **优化算法(Optimization Algorithms)**:如梯度下降(Gradient Descent)、随机梯度下降(SGD)、Adam 等,用于更新网络权重,以最小化损失函数。 11. **正则化(Regularization)**:技术如 Dropout、L1/L2 正则化等,用于防止模型过拟合。 12. **迁移学习(Transfer Learning)**:利用在一个任务上训练好的模型来提高另一个相关任务的性能。 深度学习在许多领域都取得了显著的成就,但它也面临着一些挑战,如对大量数据的依赖、模型的解释性差、计算资源消耗大等。研究人员正在不断探索新的方法来解决这些问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值