精华内容
下载资源
问答
  • 外设片上外设)定义
    千次阅读
    2019-12-02 15:45:18

    片内、外设是两个概念,片内指做成芯片的集成电路内部,简称片内;外设是外部设备的简称,是指集成电路芯片外部的设备。集成电路芯片与外部设备的连接一般需要专门的接口电路和总线的连接(包括控制总线路、地址总线和数据总线等)。 由于大规模集成电路的技术发展得很快,现在许多芯片在制造时已经能够将部分接口电路和总线集成到芯片内部。对于这部分电路与传统的接口电路和总线是有区别的,为了加于区别可以称之为片内外设,其含义是在集成电路芯片内部集成的用于与外部设备连接的接口电路和总线。 因此,简单的说,“片内外设”是芯片内部用于与外部设备连接的接口电路和总线。

    更多相关内容
  • 外设片上外设外设的区别

    千次阅读 多人点赞 2020-10-10 16:53:30
    内外设就是片上外设,同一种意思不同说法而已。 内外设和外设的区别: 内、外设是两个概念,内指做成芯片的集成电路内部,简称内,外同理显而易见;外设是外部设备的简称,是指集成电路芯片外部的...

    片内外设就是片上外设,同一种意思不同说法而已。

    片内外设和片外外设的区别:

    片内、外设是两个概念,片内指做成芯片的集成电路内部,简称片内,片外同理显而易见;外设是外部设备的简称,是指集成电路芯片外部的设备。集成电路芯片与外部设备的连接一般需要专门的接口电路和总线的连接(包括控制总线路、地址总线和数据总线等)。 由于大规模集成电路的技术发展得很快,现在许多芯片在制造时已经能够将部分接口电路和总线集成到芯片内部。对于这部分电路与传统的接口电路和总线是有区别的,为了加于区别可以称之为片内外设,其含义是在集成电路芯片内部集成的用于与外部设备连接的独立于内核的控制器、接口电路和总线等。

    早起由于IC集成工艺不发达,很多东西都是外设的,比如PWM、ADC、CAN等DSP芯片,原本都是需要芯片外接的,即使是现在,仍然有独立的ADC芯片,比如ADS8364等等。但是现在,PWM、ADC等等东西都已经集成在DSP芯片内,当然,无论如何,芯片总还是会需要外接一些设备实现某种系统,为了与那些外设相区别,就将集成在芯片内,但是又不属于芯片本身(比如DSP,是一种微处理器,因此芯片中不属于微处理器的部分都是外设)的称为“片上外设”。

    举个例子,我们知道STM32单片机是ST公司基于Contex-Mx开发生产的芯片,而ST公司用ARM内核设计芯片的过程中添加的独立于内核的东西(比如串口模块、Flash、IIC模块、SPI通信模块、ADC、DAC模块等等)对于内核来说就是“外设”,由于是集成在芯片内部的,所以叫片上外设。我们拿到ST公司设计生产的STM32芯片,开发各种应用系统,在我们自己开发的系统上独立于STM32芯片的外部设备(比如显示屏、SD卡等)都是片外外设。

    看下图,黑色部分是ARM公司设计的内核,红色部分是ST公司基于ARM公司设计的芯片添加的部分,称为片上外设,绿色部分是开发者设计应用系统添加的部分,称为片外外设。

    展开全文
  • 单片机片上外设1——IIC:

    千次阅读 2021-09-17 13:16:35
    什么? 因为线与。如果主设备A拉高SDA时,已经有其他主设备将SDA拉低了。由于 1 & 0 = 0 那么主设备A在检查SDA电平时,会发现不是高电平,而是低电平。说明其他主设备抢占总线的时间比它早,主设备A只能放弃占用...

    一、概述

            1、位传输

            I2C总线是由飞利浦(Philips)公司开发的一种双向二线制同步串行总线,实现有效的IC间的控制,它只需要两根线(SDA和SCL)即可在连接于总线上的器件之间传送信息。

            I2C总线在传输数据都是按照bit来传送。SCL为时钟线,SDA为数据线;在SCL时钟线为高电平时,SDA数据线上的电平不允许被修改,SCL时钟线为低电平时,SDA数据线上的电平可为高/低

    图1  I2C总线的位传输

            起始条件:SCL为高电平时,SDA由高电平向低电平切换;表示开始传送数据。

            停止条件:SCL为高电平时,SDA由低电平向高电平跳变;表示结束传送数据。

            空闲条件:I2C总线的SDA和SCL两条信号线同时处于高电平时;表示空闲状态。

    图2  起始和停止条件

            2、数据传输:

            字节传输:发送数据时,由主机先发送一个起始信号,再将SDA信号切换为输出模式,然后将8位数据依次由高到低发送出去;发送完成后,主机将SDA信号切换为输入模式,等待丛机回应ACK或NAK;再发下一笔数据。

     图3 I2C总线数据传输

            丛机地址:在I2C总线系统中,每个设备都有它的固定地址,一般由芯片的A0,A1和A2决定。丛机地址字节由七位地址位(D7-D1位)和一位方向位(为D0位)组成。器件地址的D7-D4一般都是被厂家固定了为1010余下的D3,D2和D1连接到芯片的A2,A1和A0决定D0为0x00表示写,D0为0x01表示读。大家看例程都是些0xA0和0xA1就是这个原因。

            3、读写过程        

            1) 写数据过程

            a. 主机发送I2C总线停止信号,防止总线忙写数据失败

            b. 主机发送I2C总线复位信号,确保写数据之前总线处于空闲状态

            c. 主机发送I2C总线开始信号,启动一次数据的写入

            d. 主机发送I2C丛机地址和写模式(W/R=0)信号,并且等待一个丛机的应答信号

            e. 主机接收到ACK的应答信号后,开始多个字节的写入,每写完一个字节需要等待一个丛机的应答信号

            f. 主机接收到ACK的应答信号后,发送I2C总线停止信号,确保总线处于空闲状态

            2) 读数据过程

            a. 主机发送I2C总线停止信号,防止总线忙写数据失败

            b. 主机发送I2C总线复位信号,确保读数据之前总线处于空闲状态

            c. 主机发送I2C总线开始信号,启动一次数据读取

            d. 主机发送I2C丛机地址和读模式(W/R=1)信号,并且等待一个丛机的应答信号

            e. 主机接收到ACK的应答信号后,开始多个字节的读取,每读完一个字节需要给丛机发送一个ACK应答信号

            f. 主机接收到ACK的应答信号后,发送I2C总线停止信号,确保总线处于空闲状态

    图4 主机读/写数据过程 

    二、问题

    1-1、现象1(210917):

          如下图1,液晶驱动芯片I2C接口。LCD_SDA与LCD_SCL分别与单片机IO口相连,单片机的I2C采用IO口模拟方式,读/写操作速度213kHz左右。单片机I对液晶驱动芯片进行写操作时,当单片机LCD_SDA配置为开漏输出,LCD_SCL配置为开漏输出,写操作波形如图2;当单片机LCD_SDA配置为开漏输出,LCD_SCL配置为推挽输出,写操作波形如图3。图2的SCL波形相较于图3质量较差。

    图1

    图2                                                                             图3

    1-2、笔记1:

    开漏输出的作用:

    1、防止短路。I2C总线,多个GPIO口可能连接在同一根线上(多个主设备与多个从设备),存在某个GPIO输出高电平,另一个GPIO输出低电平的情况。如果使用推挽输出,存在一个GPIO的VCC和另一个GPIO的GND接在了一起,也就是短路了(主设备之间)。如果换成开漏输出,VCC和GND多了个上拉电阻,这样电路就是安全的,所以总线一般会使用开漏输出。

    2、线与。实现多个主设备抢占总线时的仲裁。IIC只有两根线(SCL和SDA),怎么判断哪个主设备占用总线(当然是先来后到了)。假设主设备A需要启动IIC,他需要在SCL高电平时,将SDA由高电平转换为低电平作为启动信号。主设备A在把SDA拉高后,它需要再检查一下SDA的电平。

            a. SDA是高电平,说明主设备A可以占用总线,然后主设备A将SDA拉低,开始通信;
            b. SDA是低电平,说明有人已经捷足先登了,主设备A不能占用总线,结束通信。
    为什么? 因为线与。如果主设备A拉高SDA时,已经有其他主设备将SDA拉低了。由于 1 & 0 = 0 那么主设备A在检查SDA电平时,会发现不是高电平,而是低电平。说明其他主设备抢占总线的时间比它早,主设备A只能放弃占用总线。如果是高电平,则可以占用。

    展开全文
  • 这些新产品可提供更高的速度,与瑞萨科技当前120MHz工作频率的SH7261相比,增加了包括各种片上外设功能在内的多种功能。SH7263包含片上CD-ROM解码器和采样率转换器,可用于汽车音频、家用音频等数字音频系统,而不...
  • ST官方的STM32F0片上外设培训手册中文 包含iic uart spi usb timer clock flash rcc dma exti adc mo内核的详细介绍 中文的 ST官方出品
  • MCU的片上外设的标准接口。 CMSIS:Cortex Microcontroller Software Interface Standard 微控制器软件接口标准 ARM Cortex™ 微控制器软件接口标准是== Cortex-M 处理器系列(核内设备)==的与供应商( 增加...

    CMSIS包括两个部分:

    1. Cortex-M的核内外设NVIC和Systick的一些寄存器的标准接口
    2. MCU的片上外设的标准接口。

    CMSIS:Cortex Microcontroller Software Interface Standard 微控制器软件接口标准

    ARM Cortex™ 微控制器软件接口标准是== Cortex-M 处理器系列(核内设备)==的与供应商(增加片上RAM ROM FLASH 和一些外设)无关的硬件抽象层
    英文原文为:a vendor-independent hardware abstraction layer for the Cortex-M processor series and defines generic tool interfaces–来自ARM官方定义。

    使用CMSIS,可以为处理器和外设实现一致且简单的软件接口,从而简化软件的重用、缩短微控制器新开发人员的学习过程,并缩短新设备的上市时间。

    1 按提供方分类

    CMSIS是ARM公司与多家不同的芯片和软件供应商一起紧密合作定义的,提供了内核与外设、实时操作系统和中间设备之间的通用接口。
    CMSIS可以分为多个软件层次,分别由ARM公司、芯片供应商提供。

    1.1 其中ARM提供了下列部分,可用于多种编译器:

    内核设备访问层:包含了用来访问内核的寄存器设备的名称定义,地址定义和助手函数。同时也为RTOS(实时操作系统)定义了独立于微控制器的接口,该接口包括调试通道定义。
    ● 中间设备访问层:为软件提供了访问外设(核内外设NVIC、Systick 与 MCU上外设串口等)的通用方法。芯片供应商应当修改中间设备访问层,以适应中间设备组件用到的微控制器上的外设。目前中间设备访问层仍处于开发过程中,本文不做详述。

    1.2 芯片供应商扩展下列软件层:

    微控制器外设访问层:提供片上所有外设的定义(即一些外设的寄存器定义,不一定提供类似HAL的访问函数)。
    ● 外设的访问函数(可选):为外设提供额外的助手函数。

    CMSIS为Cortex-Mx微控制器系统定义了:
    访问外设寄存器的通用方法和定义异常向量的通用方法。
    ● 内核设备的寄存器名称和内核异常向量的名称。
    ● 独立于微控制器的RTOS接口,带调试通道。
    ● 中间设备组件接口(TCP/IP协议栈,闪存文件系统)。

    CMSIS包含的组件

    1. 外围寄存器和中断定义: 适用于设备寄存器和中断的一致接口
    2. 内核外设函数:特定处理器功能和内核外设的访问函数
    3. DSP 库:优化的信号处理算法,并为 SIMD 指令提供Cortex-M4 支持
    4. 系统视图说明(SVD):描述设备外设和中断的XML 文件。

    该标准完全可扩展,可确保其适合于所有 Cortex-M处理器系列微控制器,从最小的8 KB 设备到具有复杂通信外设(如以太网或USB)的设备。(内核外设函数的内存要求少于1 KB 代码,少于10 字节RAM)。

    2 按是否编译器无关分类

    2.1 独立于编译器的文件:

    ● Cortex-M3内核及其设备文件(core_cm3.h + core_cm3.c)(指的是Cortex-M微核

    • 访问Cortex-M3内核及其设备:NVIC,SysTick等
    • 访问Cortex-M3的CPU寄存器和内核外设的函数(不是片上外设

    ● 微控制器专用头文件(device.h) (指的是MCU上的外设

    • 指定中断号码(与启动文件一致)
    • 外设寄存器定义(寄存器的基地址和布局)
    • 控制微控制器其他特有的功能的函数(可选)

    ● 微控制器专用系统文件(system_device.c)(device指的是特定的MCU,比如STM32F103,ESP8266等

    • 函数SystemInit,用来初始化微控制器(不同的device的内存,时钟不一样
    • 函数Sysem_ExtMemCtl,用来配置外部存储器控制器。它位于文件 startup_stm32f10x_xx.s /.c,在跳转到main前调用
    • SystemFrequncy,该值代表系统时钟频率
    • 微控制器的其他功能(可选)

    2.2 编译器供应商+微控制器专用启动文件

    不同的编译器startup_device.s 不一样?同一个功能的C文件经过不同的编译器出来的汇编文件都是不一样的

    例如

    IAR和Keil对同一个device的启动汇编文件是不一样的。
    在这里插入图片描述

    IAR

    在这里插入图片描述

    Keil

    在这里插入图片描述
    ● 编译器启动代码(汇编或者C)(startup_device.s)

    • 微控制器专用的中断处理程序列表(与头文件一致)
    • 弱定义(Weak)的中断处理程序默认函数(可以被用户代码覆盖)

    3 整体感受

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    基于CMSIS标准的软件架

    主要有四层:

    1. 用户应用层、
    2. 操作系统层、
    3. CMSIS层
    4. 硬件寄存器层。

    CMSIS层主要分为3个部分:

    1. 核内外设访问层(CPAL),由ARM负责实现对寄存器名称、地址定义、NVIC接口等定义,统一用_INLINE屏蔽差异,其接口函数均是可重入的。
    2. 片上外设访问层(DPAL),由芯片厂商负责实现,可调用CPAL提供的接口函数处理相应的外设中断请求
    3. 外设访问函数(AFP),由芯片厂商负责,提供访问片上外设的函数

    关于几个文件

    1. core_cm0.h:文件中定义了使用的CMSIS版本、Cortex内核、工具链,提供了核内外设访问层的定义,例如核内外设的数据结构和地址映射,也提供了一些访问Cortex-M0核内寄存器及外设的静态内联函数
    2. core_cm0.c:定义了访问Cortex-M0核内寄存器的相关内部函数
    3. System_.h:中断号及外设寄存器的定义
    4. System_.c:包含初始化在内的系统函数
    5. 其他头文件则实现了片上外设访问层以及额外的访问函数的定义
    展开全文
  • 2.2为什么我们要引入NVIC外设 3 2.3 NVIC主要做了那些工作呢 3 2.3.1 NVIC管理时用到的寄存器 3 2.4 NVIC编程 4 3. 说完NVIC,我们就来聊聊外部中断EXTI(IO的中断) 4 3.1EXTI 功能框图 4 3.2中断/事件线 5 ...
  • 单片外设驱动程序源代码全集,注释特别齐全,包含常用的所有外设,C语言源码
  • 外设所有寄存器为电默认值,也可以说复位了我们的配置 。 可能有些地方你会也会发现xx外设配置之前有“ 重新初始化 ” 外设的操作,如: USART_DeInit(USART1); DMA_DeInit(DMA1_Channel1); 这重新初始化代码里面...
  • 该工程基于IAR for msp430 请各位悉知,可参考该工程内功能实现的源代码。工程内包括了以下模块:adc.c、clock.c、compater.c、dma.c、flash.c、gpio.c、i2c.c、lpm.c、nmi.c、remap.c、rtc.c、spi.c、timer.c、uart...
  • DSP教程8.C55x的片上外设 相关的内容比较详细 可以参考
  • VS Code STM32开发笔记 -片上外设-串口

    千次阅读 2022-03-12 22:49:47
    6.完善片上外设驱动usart.c(1.中断回调,2.printf支持) 7.完善main.c完成测试 1.cubemx创建工程配置基础内外设(swd接口,时钟,NVIC) 2.配置串口 3.生成makefile工程 4.vscode打开并创建工程目录 1....
  • 单片机的外设

    千次阅读 2019-03-19 18:52:36
    外设是外部设备的简称,是指集成电路芯片外部的设备。集成电路芯片与外部设备的连接一般需要专门的接口电路和总线的连接(包括控制总线路、地址总线和数据总线等)。 由于大规模集成电路的技术发展得很快,现在...
  • TMS320F28335外设(CAN,SPI)
  • 外设时钟控制寄存器

    2020-11-13 00:12:22
    外设时钟控制寄存器(PCLKCR)控制片上各种时钟的工作状态,使能或禁止相关外设的时钟,其分配如图1所示,各位功能定义如表1所列。  图1 外设时钟控制寄存器(PCLKCR)  表1 外设时钟控制寄存器(PCLKCR)...
  • 适用于JN516x的片上外设的代码学习,包含片上外设的相关开发代码。
  • 适用于 JN516X 的片上外设的中文开发。相对于NXP网站的英文开发,更方便、直观。
  • dsp外设PPT课件.pptx
  • ** 单片机简介** 单片微型计算机简称单片机,简单来说就是集CPU...然后这些芯片被安装在一个主板,这样就构成了我们的PC主板,进而组装成电脑,而单片机只是将这所有的集中在了一个芯片而已(一个集成封装样式...
  • 为了使每个音频应用实现最佳的用户体验,消费者的PC通常要有一个摆满他们书桌的音频外设。根据任务的不同,用户需要修改软件中的音频设置,实际还要在不同外设之间进行转换。例如,一对外置PC扬声器或一个LCD
  • dsp外设PPT学习教案.pptx
  • 科胜讯的CX20562是一个创新的片上扬声器解决方案,它整合了数字音频/语音处理器、音频编解码器和D类放大器的功能,采用的是经济有效的48引脚四方扁平无引线(QFN)封装。
  • 计算机硬件及网络Cx的外设PPT课件.pptx
  • 计算机硬件及网络Cx的外设PPT学习教案.pptx
  • TMS320F28335各个片上外设的数据手册,将28335的各个片上外设份文档进行详细讲解,对于开发初期的寄存器设置具有很高的参考价值,可以很方便的对各模块进行细化研究。
  • 内(片上外设外设

    千次阅读 2014-09-18 12:35:57
    内、外设是两个概念,内指做成芯片的集成电路内部,简称内;外设是外部设备的简称,是指集成电路芯片外部的设备。集成电路芯片与外部设备的连接一般需要专门的接口电路和总线的连接(包括控制总线路、地址总线...
  • xc878片上外设举例

    2013-04-05 16:48:33
    使用英飞凌开发资料,介绍片上外设c语言举例。帮助更好了解XC878芯片
  • USART集成了SPI及UART,所以仅仅只有SPI的demo是不够的。因此,才有了这段最简单的UART的运行例程。发送使用循环发送。接收使用中断接收。
  • 仅能显示汉字,字符,待更新

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 33,166
精华内容 13,266
关键字:

片上外设是什么

友情链接: Lmkg.zip