单片机交流
直播中

罗星

8年用户 1605经验值
擅长:模拟技术
私信 关注
[问答]

单片机的资源配置要点是什么?

单片机如何选型?
单片机的资源配置要点是什么?

回帖(1)

h1654155275.5724

2021-9-26 11:32:17
单片机的资源配置与调度相对简单,根据详细的官方指导,以及开发设计参考(各类开发板)步骤即可;

  一、单片机内核

    *不同的内核有不同的性能/功耗表现,按需选择;
    *内核即代表某系列的单片机;
    1、简单基础单片机内核: 51、STM8、AVR、PIC、S08、430;
    2、ARM Cortex系列:Cortex-M0内核是低功耗的内核;
    3、ARM全系列详解:   http://www.myir-tech.com/resource/448.asp
    4(附)、两种逻辑威廉希尔官方网站 集成器件:
        a、FPGA:基于门编程(altera、xilinux);类似:SDAM  掉电不保存;
        b、CPLD:基于块编程;类似:EEPRM FLASH 掉电保存;
     
  二、单片机选型

    *市面的产品基本都是围绕这几款单片机:51(低端)、ST(中端)、ARM(高端);
    1、单片机的性能;
    2、单片机的自身资源是否满足项目需求,长远考虑后续的更新迭代(封装、功能)、系统升级和维护难度;
        a、内存是否足够(储存常量数组、密码等数据);
        b、I/O的数量充足;
        c、外设资源(RTC、IIC(硬件、模拟)、SPI、UART);
    3、开发周期:熟悉该类型单片机的硬件与软件,可用高级语言编写和调试;
    4、单片机的价格、货源、体积、封装;
     
     
  三、单片机的资源配置要点

    要点总结:
    *单片虽然种类很多,但大同小异,掌握了产品的开发流程以及基本资源的配置方法,可以在任意平台上游刃有余;
    1、涉及到多数据线、地址线的应用,尽量选择连续IO资源,这样效率会高点;
    2、能够使用硬件资源的尽量使用硬件资源,提高工作效率;
    3、共用中断服务函数;
    4、优化等级可以提高单片机运行速度?
    5、VCAP引脚为了保证内部主调压器的电压稳定;
    6、时钟的重要性-保证信号的同步进行(在信号上升沿或下降沿采样);
    7、mVpp   噪声波形幅度单位;
    8、Vpp=Vpeak to peak 一个信号或电压源其最高和最低的电压波幅(差值);
    9、JTAG功能的GPIO引脚默认是第一功能是JTAG,想使用普通IO使用,必须先关闭JTAG接口功能;
    10、程序字节对齐的作用:提高运行效率,在一些内存池操作时需要采用;  (面对一些旧式CPU,要求字节对齐);
    11、底层驱动尽量参考官方,切勿随意更改,产生很多隐患;
     
  四、GPIO

    *GPIO看似简单,但很多使用细节,注意掌握;
    1、使用GPIO模式:
    输入:弱上拉输入,浮空输入,消极(高阻态)输入;
    输出:推挽输出,开漏输出;
     
    2、真正的开漏脚:输出高电平相当于开关断开,需要外接上拉(优点:1)灌电流承受能力强;2)可以多个开漏脚连接实现线与);适合做电流型驱动(20ma);
     
    3、准双向口:可输出输入高低电平;
     
    4、GPIO必须开启时钟,才可以配置;
     
    5、上下拉电阻
        a、单片机GPIO接上拉电阻的作用:与内部电阻并联,减少总电阻的阻值,从而使端口的电平升高,整体抬高端口的电位;
        b、单片机GPIO接下拉电阻的作用:与内部电阻串联,增加总电阻的阻值,从而使端口的电平降低,整体拉低端口的电位;
     
    6、GPIO的低功耗处理:
        a、空闲IO处理(悬空处理);
        b、占用IO处理(上电开启、睡眠关闭);
        c、中断唤醒IO处理(睡眠前开启/使能中断、唤醒前禁止中断(输入模式));
        d、使用睡眠设置函数(例程);
     
    7、IO口的高阻态问题
        a、数字威廉希尔官方网站 概念,常用于总线的分时复用功能上(作断开作用);
        b、设置高阻态时相当于电阻无限大,该门威廉希尔官方网站 放弃对输出端威廉希尔官方网站 的控制;
        c、设置高阻态输入,可降低功耗,以及对前级影响;
        d、高阻态与准双向口的区别
            1)可作模拟信号输出输入,悬空时电平随外界;
                *(配置因单片机的不用而不同,AVR无高阻态;NXP可直接读端口电平;先置1后配置)
            2)准双向口只能做数字IO口输入输出,悬空时电平为1;
     
    8、中断配置
        *设置优先级之前必须关闭中断,否则会导致hard fault;
        a、外部低电平有效:配置下降沿触发,上拉模式;
        b、外部高电平有效: 配置上升沿触发,消极模式;
     
     
  五、ADC

    1、AD满量程可能性:
          a、输入电压超过基准电压;
          b、基准电压无输入或过低;
    2、AD的满量程是参考电压;
    3、采样率的选择(时钟分频、采用保持时间);
    4、DMA通道时可采用高速,中断采用低速;
    5、IO的选择(内部有上下拉)与配置模式(消极模式);
    6、威廉希尔官方网站 设计(尽量以最短的距离连接);
     
     
  六、IIC(半双工)

    1、地址硬件移位,软件移位;
    2、时序准确;
    3、EEPROM发送256字节以上需要重新发送设备地址;
    4、注意地址位数;
    5、常用的一对多(寻地址);
    6、如果SCL/SDA是开漏脚,需要给加上拉电阻;
    7、先配置GPIO,再使能时钟;(BUSY位的置位问题);
    8、硬件IIC开漏输出脚;
    9、总线速率:有些支持100KHZ,有些支持400KHZ(10KHZ/1MHZ/3.4MH Z);
    10、ST系列的IIC网上评论:
    ***大家都在聊IIC,我也来说说我的认为,硬件IIC在ST的设计中并无使用问题,但是存在使用便捷性问题,不知道大家是否研究过硬件IIC和模拟IIC,若从速率上比较,硬件肯定有优势,若从程序复杂度上分析,ST片子上反而是模拟的IIC比较简单,这是因为ST在IIC资源设计上有意规避了一些问题保证知识产权,引入了相当多功能位设定和事件配置,好处是通信很透明,不好的是和我们一般使用的习惯有出入,有的工程师弄了半天发现复杂度没有降低太多,索性还是用起了模拟方法,所以有的人就说ST有缺陷,实际不是缺陷,是你是否用得惯的问题。
  七、SPI(全双工器件的多样性)

    1、三线(MOSI=MISO或无CS)与四线(标准);
    2、CPOL/CPHA模式,主与从相反的时钟信号(调试重点,不同设备必须操作在相同的模式下);
    3、片选信号(低或高有效)
    4、支持不同的字长;
    5、只能收或发;
    6、是否支持命令;
     
     
     
     
     
     
举报

更多回帖

发帖
×
20
完善资料,
赚取积分