十月风城:
我想你是在误导一批人
1.指针都不会的人,怎么与其它人进行配合写code(C语言深度解剖中会有指针重要型的说明。)
2.连运行时间都不关心的人怎么可能设计出好的程序,因为没有设计值
3.can通讯是一个趋势
对自己的要求有多高,你以后就有多高!
吴坚鸿:
我觉得你误会了我想表达的意思。我想很多人不会这样解答我第一节的内容。
(1)汇编语言就没有指针的概念,但是汇编语言每一步都是指针,凡是跟地址有关操作的都是指针。因此,初学者刚开始的时候如果不会指针,并不会影响他开发项目,因为其它那几个常用的C语言指令足以实现指针的所有功能,只是书写和阅读上没有指针那么简洁,但是功能是一样的。我并不是想否定指针的价值。我只是想让初学者在学单片机的时候,不用一下子学那么多C语言的高级功能,我想让初学者能快速进入到项目实验的状态,只有在动手做实验项目的时候,学习C语言才是最快的,等他们用几个常用的C语言指令就把项目做好了,他们再学C语言其他的高级功能就轻而易举。
(2)我这里的运行时间并不是说程序运行的效率,而是指时间的精度。扪心自问,大部分的单片机项目,时间精度真的不是很重要,实时时钟有专用的时钟芯片,驱动输出频率的可以用修改比例系数来矫正精度,如果遇到精度要求更高的项目,就直接用CPLD或FPGA了。大部分单片机的项目,就是做人机界面,并且把各种输入输出的感应器关联起来,这就是单片机项目的本质,没有那么复杂。
(3)说实话,这些年来,我做的所有单片机项目都是我一个人完成的,包括电路设计,以及一些简单的PC上位机通讯软件。也许这个也是我的局限,欢迎你跟大家讲讲指针在配合其他人写code方面的应用,让我也学学这方面的知识,谢谢。
十月风城:
以下纯属个人理解:
1、 C语言说白了,是对输入数据的处理与加工,并给出输出。在进行数据处理过程中,会有:输入的数据,处理的数据和输出的数据。当数据数量比较少的时候,我们还可以给他们一一起个名字,但是当需要处理更多的数据时怎么办,这时就需要指针了。现在产品越来越复杂,团队合作开发一个产品是一个趋势。当队友需要帮助时,你只能因为不懂指针,爱莫能助啊!换句话说,现在单片机厂商为了提高竞争力,会自动产生底层驱动,来减少软件的开发时程,他们的代码里面也会有指针。所以说不要让指针成为自己的短板。
2、我现在是做通讯类的产品,也用的是单片机,当接收和发送数据时,对时间都有很高的要求;还有一个硬线信号的输入,需要防反跳的一个时间;单片机上电,多长时间开始工作,需要根据电源部分什么时候电源稳定(电容的充放电)来决定时间,等等;那么这是功能对时间的要求。另一方面,有的客户很关心产品的反应时间,那就需要工程师根据软件的运行,来对反应时间做一个评估。那这都是前期设计需要产出的东西。
大白话:
说实话,我也没有多少工作经验,只是发泄一下:老板,你要求真。。严格。不多说了,都是痛!
十月风城:
delay函数不建议这样写