0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

MCU基本功能概览

通信首条 来源:YXQ 2019-08-12 10:03 次阅读

对于绝大多数MCU,下列功能是最普遍也是最基本的,针对不同的MCU,其描述的方式可能会有区别,但本质上是基本相同的:

TImer(定时器):TImer的种类虽然比较多,但可归纳为两大类:一类是固定时间间隔的TImer,即其定时的时间是由系统设定的,用户程序不可控制,系统只提供几种固定的时间间隔给用户程序进行选择,如32Hz,16Hz,8Hz等,此类TImer在4位MCU中比较常见,因此可以用来实现时钟、计时等相关的功能。

另一类则是Programmable Timer(可编程定时器),顾名思义,该类Timer的定时时间是可以由用户的程序来控制的,控制的方式包括:时钟源的选择、分频数(Prescale)选择及预制数的设定等,有的MCU三者都同时具备,而有的则可能是其中的一种或两种。此类Timer应用非常灵活,实际的使用也千变万化,其中最常见的一种应用就是用其实现PWM输出。

由于时钟源可以自由选择,因此,此类Timer一般均与Event Counter(事件计数器)合在一起。

IO口:任何MCU都具有一定数量的IO口,没有IO口,MCU就失去了与外部沟通的渠道。根据IO口的可配置情况,可以分为如下几种类型:

纯输入或纯输出口:此类IO口有MCU硬件设计决定,只能是输入或输出,不可用软件来进行实时的设定。

直接读写IO口:如MCS-51的IO口就属于此类IO口。当执行读IO口指令时,就是输入口;当执行写IO口指令则自动为输出口。

程序编程设定输入输出方向的:此类IO口的输入或输出由程序根据实际的需要来进行设定,应用比较灵活,可以实现一些总线级的应用,如I2C总线,各种LCD、LED Driver的控制总线等。

对于IO口的使用,重要的一点必须牢记的是:对于输入口,必须有明确的电平信号,确保不能浮空(可以通过增加上拉或下拉电阻来实现);而对于输出口,其输出的状态电平必须考虑其外部的连接情况,应保证在Standby或静态状态下不存在拉电流或灌电流。

外部中断:外部中断也是绝大多数MCU所具有的基本功能,一般用于信号的实时触发,数据采样和状态的检测,中断的方式由上升沿、下降沿触发和电平触发几种。外部中断一般通过输入口来实现,若为IO口,则只有设为输入时其中断功能才会开启;若为输出口,则外部中断功能将自动关闭(ATMEL的ATiny系列存在一些例外,输出口时也能触发中断功能)。外部中断的应用如下:

外部触发信号的检测:一种是基于实时性的要求,比如可控硅的控制,突发性信号的检测等,而另一种情况则是省电的需要。

信号频率的测量,为了保证信号不被遗漏,外部中断是最理想的选择。

数据的解码:在遥控应用领域,为了降低设计的成本,经常需要采用软件的方式来对各种编码数据进行解码,如Manchester和PWM编码的解码。

按键的检测和系统的唤醒:对于进入Sleep状态的MCU,一般需要通过外部中断来进行唤醒,最基本的形式则是按键,通过按键的动作来产生电平的变化。

通讯接口MCU所提供的通讯接口一般包括SPI接口,UART,I2C接口等,其分别描述如下:

SPI接口:此类接口是绝大多数MCU都提供的一种最基本通讯方式,其数据传输采用同步时钟来控制,信号包括:SDI(串行数据输入)、SDO(串行数据输出)、SCLK(串行时钟)及Ready信号;有些情况下则可能没有Ready信号;此类接口可以工作在Master方式或Slave方式下,通俗说法就是看谁提供时钟信号,提供时钟的一方为Master,相反的一方则为Slaver。

UART(Universal Asynchronous Receive Transmit):属于最基本的一种异步传输接口,其信号线只有Rx和Tx两条,基本的数据格式为:Start Bit + Data Bit(7-bits/8-bits) + Parity Bit(Even, Odd or None) + Stop Bit(1~2Bit)。一位数据所占的时间称为Baud Rate(波特率)。

对于大多数的MCU来讲,数据为的长度、数据校验方式(奇校验、偶校验或无校验)、停止位(Stop Bit)的长度及Baud Rate是可以通过程序编程进行灵活设定。此类接口最常用的方式就是与PC机的串口进行数据通讯。

I2C接口:I2C是由Philips开发的一种数据传输协议,同样采用2根信号来实现:SDAT(串行数据输入输出)和SCLK(串行时钟)。其最大的好处是可以在此总线上挂接多个设备,通过地址来进行识别和访问;I2C总线的一个最大的好处就是非常方便用软件通过IO口来实现,其传输的数据速率完全由SCLK来控制,可快可慢,不像UART接口,有严格的速率要求。

Watchdog(看门狗定时器):Watchdog也是绝大多数MCU的一种基本配置(一些4位MCU可能没有此功能),大多数的MCU的Watchdog只能允许程序对其进行复位而不能对其关闭(有的是在程序烧入时来设定的,如Microchip PIC系列MCU),而有的MCU则是通过特定的方式来决定其是否打开,如Samsung的KS57系列,只要程序访问了Watchdog寄存器,就自动开启且不能再被关闭。一般而言watchdog的复位时间是可以程序来设定的。Watchdog的最基本的应用是为MCU因为意外的故障而导致死机提供了一种自我恢复的能力。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • mcu
    mcu
    +关注

    关注

    146

    文章

    16016

    浏览量

    343606
  • 可编程定时器

    关注

    0

    文章

    7

    浏览量

    1753

原文标题:运营商一男一女私聊曝光

文章出处:【微信号:txdoutiao,微信公众号:通信首条】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    物联网的最基本功能是什么?

    万物互联大时代,物联网的最基本功能是什么?
    发表于 06-16 11:33

    BMS的基本功能和硬件拓扑

    BMS基本功能BMS 的硬件拓扑BMS的状态估算及均衡控制电池内短路的快速识别
    发表于 12-16 06:30

    MCU基本功能及程序编写

    MCU基本功能MCU程序的编写
    发表于 01-12 07:53

    MCU基本功能和程序编写

    MCU基本功能MCU程序的编写
    发表于 01-14 07:42

    MCU基本功能及程序编写

    MCU基本功能MCU程序的编写
    发表于 02-02 06:05

    MCU基本功能

    MCU基本功能MCU程序的编写
    发表于 02-05 06:37

    智能合约的基本功能是什么

    合约的基本功能是通过价值交换约定各方责任。由于DLT(分布式账簿)技术的出现,智能合约让合约的编写和执行变得更加高效且自动化。然而,如今的智能合约还存在诸多缺陷,因为它们无法与真实世界联通。预言机
    发表于 07-12 09:00

    晶体管测量模块的基本功能有哪些

    晶体管测量模块的基本特性有哪些?晶体管测量模块的基本功能有哪些?
    发表于 09-24 07:37

    MCU基本功能有哪些呢

    以下来自Atmel Mega128的说明手册:微控制器(微处理器)Microcontroller(MCU)的四个基本功能为:1.access memory,2.perform calculation
    发表于 11-03 06:50

    STM32CUBEMX基本功能如何配置?

    STM32CUBEMX基本功能如何配置?
    发表于 11-23 06:12

    串口的基本配置和基本功能是什么?

    串口功能有哪些?串口的基本配置和基本功能是什么?
    发表于 12-10 07:19

    ARM内核MCU调试软件的基本功能

    1. ARM内核MCU调试软件可以用来刷写程序、读取、校验、擦除Flash。2. 基本功能2.1 创建工程选择目标MCU型号选择成功后,检查一下:保存工程。下次再打开软件是直接加载工程即可。2.2
    发表于 12-15 06:28

    HOOK接口的基本功能有哪些呢

    源所有的HOOK接口,我现在也用不到了,干脆放出来不过基本功能是够了,学习肯定绰绰有余除了个别模块,所有代码全部原创,转载请找我授权还是那句话,仅供学习,技术无罪没找到上传附件的地...
    发表于 12-21 06:28

    reertos基本功能包括什么

    本文介绍嵌入式实时操作系统FreeRTO的常用API,freertos基本功能包括 任务调度、内存管理、中断管理、定时器管理、消息队列、信号量、互斥锁等。1. FreeRTOS 任务相关API
    发表于 12-27 06:36

    MCU模拟eeprom基本功能

    MCU模拟eeprom基本功能 如果你的MCU的flash足够大。并且你的MCU提供自编程flash指令。则可以通过flash模拟出一片eeprom区域。用于存储数据。       本
    发表于 10-28 19:06 10次下载
    <b class='flag-5'>MCU</b>模拟eeprom<b class='flag-5'>基本功能</b>