您的位置:控制工程论坛网论坛 » CE休憩园 » 硬件知识-学习纲要(初学感悟)

junhong07

junhong07   |   当前状态:在线

总积分:7915  2024年可用积分:1

注册时间: 2008-01-15

最后登录时间: 2019-06-23

空间 发短消息加为好友

硬件知识-学习纲要(初学感悟)

junhong07  发表于 2009/10/18 20:58:14      959 查看 0 回复  [上一主题]  [下一主题]

手机阅读

一:理论

  1.电子
  主要知道导体中电子流动和绝缘体中电子分布及流动,在《大学物理》上对这些介绍的已经算是比较详细了。足够让你了解静电相关知识了


  2.欧姆定理(基尔霍夫定理)
  以欧姆定理为核心,包括基尔霍夫两个公式,以及戴维南定理及推理,这是学习电路基础的基础

  3.电路基本知识
  最先的静态部分,运用欧姆定理等分析静态电路,然后是电容和电感等动态电路,动态电路最简单的是RC冲放电电路,复杂的是波形处理,波形处理牵涉到阻抗,阻抗概念和算法。其中还有向量分析方法,配合大学教科书《信号与信息处理》,那本书上主要是傅里叶变换和拉普拉斯变换公式,不一定要会,但是懂得频域的合成和分解的感念即可,主要是高通,低通,带通的概念

  4.晶体管
  晶体管包括二极管和三极管,再高时晶闸管。主要利用了半导体在不同的环境下不同导通情况。晶体管根据环境有三种状态,截止状态,半导通状态,饱和状态。只利用截止状态和饱和状态的是三极管的开关作用,控制三极管在半导通环境下操作是放大作用,另外,三极管结构简单,属于最原始的电子介质单元,而介质容易受温度,电流影响,三极管同样受这些环境干扰。

  5.数字电路
  数字电路又三极管或MOS管组成,脱离和最原始的电子介质关系,有更强的可靠性,一般直接将其功能组合成逻辑运算。另外,数字电路主要是知道常用芯片设计和常用数字电路结构,掌握存储器,移位存储器,加法器,比较器,积分器,运放等的使用。

  6.电磁场
  电磁场的基本规律是:电场的变化产生磁场,磁场的变化产生电场。我们身边无时无刻不充满着电场,电场一变化,就有了磁场,电场不停变化,就有了不停的磁场。有了电子就有电场,有了电子的流动就有电场的变化。这是从电子的角度来分析,从电路的角度上同样的事物会被解释为,任何物理之间都存在电容,电容上电子量变化,导致电压变化,电压变化导致场强发生变化。Q=CU。

  7.高频电路
  (了解过少,不敢妄自菲薄)

  二:技能

  1.元器件
  电阻:阻值偏差,最大功率(主要和材质及表面积大小有关),封装电容:有瓷片电容,电解液电容,坦电容。容值要用LRC表测量
  电感:(了解过少,不敢妄自菲薄)

  2.做电路要求
  [1].稳定性(损坏率,长久性)
  [2].参数正确性
  [3].功率尽量的小
  [4].成本最小化


  3.画PCB
  [1].PCB加工方式(绑定,贴片,插件,焊线)
  [2].PCB辐射(走线规则,信号线要尽量短)
  [3].PCB热量(根据电流设定走线宽度,对热量大元件散射)
  [4].PCB使用效率
  [5].protellPCB流程(画sch图->设置封装->生成网络表->生成PCB->布线)

  软件学习纲要

  一.硬件平台

  1.内核
  内核主要完成单片机内部各种运算和数据传送命令,从总线上分,主要分为冯。诺依曼和哈佛两种结构,从软件上分可分为RISC和CISC两种结构。目前主流8位单片机为8051和AVR两种。8051价格便宜,对于量产的产品一般为最优先选择的产品,AVR采用RISC(精简指令集),具有操作简单,容易理解,模块多,下载方式齐全的优点。但是价格相对较高,一般用在小量生产和生产控制中。

  2.模块

  模块指可单独运行某种功能并且独立于内核嵌入到单片机内部的结构体,模块开放一些寄存器作为控制命令供内核设置。常用模块为:定时器,PWM控制模块,A/D模块,D/A模块,模拟比较器模块。USAT通信模块,SPI通信模块,IIC通信模块。具体模块用法在具体单片机内部用法有区别。

  二.软件平台

  1.系统
  系统指掌握负责整合单片机所有资源并分配的结构。单片机内部一般不设系统。最多可加入UCOS系统。其实系统是一种思想,一种将架构思路,和模块组合思路,有了系统的概念后不一定要写成系统的方式,它会让你的代码更加有条理性和逻辑清晰性和移植性,一般写单片机软件的人容易轻视系统。每次都绞尽脑汁于流水账般的代码中。重复于繁忙中。这对单片机软件工程师是避讳的。

  2.驱动
  驱动是相对于系统而言的。模块开放寄存器供程序调用。为了增加模块的可操作性。写出对模块的通用代码。然后其他程序通过调用此段代码来使用模块。而不是直接操作寄存器。

  3.应用
  应用是现对于系统最高层程序。将驱动看做各种工具,应用程序就是这些工具的使用着。通过连接各种驱动和操作各种驱动来完成特定的功能的程序。

  三.编程语言

  1.汇编语言
  一条汇编语言对应于一个机器代码,不同结构下单片机的汇编是不同的。汇编语言好处是可操纵每一个细节,直接面对机器,最大的缺点是面对若此多的内存地址和堆栈地址,即使是加入了甚多的单词记忆,仍然不易操作,还有一个缺点是,也有可能你上个星期写的代码,你现在都不一定能记住具体的写法

  2.C语言
  C语言严格上是汇编语言的精简版,C语言中各种数据结构有效的解决了汇编中大量地址分配和函数调用上的繁琐性。并以容易记住。另外不脱离面对机器代码的易操作性。它和汇编语言一样都是面向对象的程序语言

  3.C++语言
  C语言在单片机上发挥了极大的作用,但是当面对更加复杂的程序后,C语言也开始变得繁琐。然后就是C++的诞生,C++完全兼容C和C的数据结构,两外,比C多了一个类结构。由此改变了C语言数据的组织方式,C++是一种面向对象的语言,他将程序分成很多类,每个类代表一个数组和操作这些数据的函数的组合,另外支持函数重载和模板,这些都是为了配合系统编程采用的。所以C++更加适合系统编程。单片机编程中极少采用C++。C++会比C占用更多的资源。

  4.JAVA语言
  单片上是不采用JAVA语言的,也不能直接采用JAVA语言的,JAVA语言必须在JAVA虚拟机上运行。之所以列出,主要是指出JAVA作为计算机语言的另外一种运行方式。汇编和C,包括C++最终都要转化为汇编语言,再转化为机器语言,直接操作机器运行。这样编辑出的代码在不同的平台上有可能就不能运行。JAVA语言独立于平台。它的不同之处在于它并不生成机器代码,而是生成位称为字节的中间代码。这些代码送入JAVA虚拟机,JAVA虚拟机逐条翻译运行。这样,JAVA运行最大的好处就是与平台不管,移植性超好,在电脑上可以运行,在手机上也可以运行。但是有可前提是这个平台上必须安装一个类似命令翻译器一样的JAVA虚拟机

  5.最后,计算机语言是一个讲究逻辑性,但是又重在思想上的一种事物组织形式,要想学的好,进步多,在于要不停的推敲,学习,读别人代码,组成自己代码。不停的练习和运行是学习计算机语言的唯一途径。

                                                       通信

  一:接口

  1.并口
  随着单片机速度的加快,并口传送数据的方式正在慢慢减少,到目前,甚至连LED驱动都在慢慢变为串口驱动了。以此来减少外围资源的浪费,来腾出更多的I/O供其他周围元件使用

  2.串口
  串口主要注意的是串口的速率一般以位为单位,在串口转并口时要注意速度匹配。

  二:速度

  1.主机
  一般主机控制速度

  2.从机
  从机一般侦听数据,注意要注意数据相应。

  三:协议
  由于通信一般以字节为单位传输,字节传输以先后为顺序,但是缺乏地址标记,所以主要在出错处理和防出错上下功夫。由于双方或多方通信,所以根据不同通讯方式制定了不同的协议,好让数据可以正确无误的传送到另外一个地址上。其中比较复杂的是路由技术。

  四:用处

  1.工业
  工业上一般采用RS232,RS485,CAN进行通信,主要特点是抗干扰性较强,抗干扰常用两种办法是:一,增大电压减少负载来提高驱动能力,二,采用差分驱动

  2.长距离
  常距离上一般采用同轴屏蔽双绞线。一要避开干扰,二,增大驱动

  3.短距离
  短距离传输方式较多,单片机上多机共连采用IIC通信,控制主要采用SPI,告诉传播采用USB通信。另外,还有同一PCB也可以采用并口通信。

  4.无线
  基于芯片传输一般2.4G蓝牙技术偏多,无线主要在辐射上有限制要求。具体可搜索更详细资料。本人对其了解不够全面

1楼 0 0 回复