murata的个人空间 https://www.eechina.com/space-uid-139095.html [收藏] [复制] [RSS]

博客

ARM手记之新唐M0系列

已有 1116 次阅读2018-11-28 11:34 |个人分类:新唐| 新唐M0

       NUC1xx系列是32位的内嵌ARM Cortex-M0核的微控制器 ,适用于工业控制和需要丰富的通信接口的应用领域。ARM Cortex-M0 内核最高运行50MHz。宽电压工作范围 由2.5V 至 5.5V
        Cortex-M0处理器是32位多级可配置的RISC处理器。它有AMBA AHB-Lite接口和嵌套向量中断控制器(NVIC),具有可选的硬件调试功能,可以执行Thumb指令,并与其它Cortex-M系列兼容。支持两种模式:Thread模式和Handler模式;异常时,系统进入Handler模式,复位时,系统进入Thread模式。
        特征:系统支持小端(little-endian)数据访问,提供单指令32-bit 硬件乘法器。
        NVIC:提供32个外部中断,具有4级中断优先级。有专用的不可屏蔽中断NMI。支持电平和脉冲中断触发。中断唤醒控制器WIC,支持极低功耗休眠模式。
        调试:提供4个硬件断点,2个观察点,用于非侵入式代码分析的程序计数采样寄存器,单步向量捕获能力。
        总线接口:提供简单的集成到所有系统外设和存储器的单一32位AMBA-3 ABH-Lite系统接口;支持DAP(Debug Access Port)的单一32位的从端口。
        1)系统复位
        复位源包括:上电复位、复位脚(/RESET)上有低电平、看门狗复位、低压复位、欠压检测复位、Coretex-M0 单片机复位、系统复位。
        系统复位和上电复位使整个芯片复位,包括外设。
2)系统电源
        该器件的电源分为3类:a.由AVDD和AVSS提供的模拟电源,为模拟部分工作提供电压;b.由VDD和VSS提供的固定的2.5V的数字电源,用于数字操作和I/O引脚的内部稳压电源;c.VBUS提供给USB的电源,用于USB模块传输操作。
        内部电压调节器输出LDO和VDD33,需要在相应的引脚上外接电容。
3)系统内存映射
        NUC1xx 提供4G字节的寻址空间,NUC1xx系列仅支持小端数据格式,ROM、SRAM和控制寄存器统一编址。
4)系统定时器
        Cortex-M0 包含一个24位系统定时器SysTick,使能后,定时器从SysTick 当前寄存器(SYST_CVR)的值向下计数到0,下一个时钟边缘,重新加载寄存器(SYST_RVR) 的值。当计数器减到0时,标志位COUNTFLAG置位,在读数时,清COUNTFLAG标志位。
5)嵌套向量中断控制器 (NVIC)
        Cortex-M0 提供中断控制器,用于总体管理异常,NVIC和处理器内核紧密相连。
        NVIC结构支持32(IRQ[31:0])4级离散中断优先级,当接受任何中断时,ISR的开始地址可从内存的向量表中取得,当开始地址取得时,NVIC将自动保存处理状态到栈中,包括以下寄存器“PC, PSR, LR, R0~R3, R12” 的值. 在ISR结束时, NVIC 将从栈中恢复相关寄存器的值,进行正常操作,因此花费少量时处理中断请求。向量表的基地址为0x00000000. 向量表包括复位后栈的初始值,所有异常处理器的入口地址. 向量号表示处理异常的先后次序。
6)系统控制寄存器
        系统控制寄存器控制了Cortex?-M0的状态和操作模式,包括CPUID、Cortex?-M0中断优先级和Cortex?-M0电源管理。
3.时钟控制器
        时钟控制器为芯片提供时钟源. 包括AMBA接口模块和所有外围设备时钟,时钟发生器由如下5个时钟源组成:一个外部 32KHz 晶振、一个外部 12MHz 晶振、一个可编程的 PLL FOUT(PLL 由 12M 和 22M组成)、一个内部 22MHz RC 振荡器、一个内部 10KHz 振荡器。
         有80个通用I/O引脚,可以和其他功能引脚共享。80个引脚分配在GPIOA, GPIOB, GPIOC, GPIOD 与 GPIOE五个口上,每个口最多16个引脚。每个引脚都是独立的,都有相应的寄存器来控制引脚模式与数据。I/O引脚上的I/O类型可由软件独立地配置为输入,输出,开漏或准双端模式. 所有的I/O引脚默认处于准双端模式。

        可选的TTL/Schmitt触发输入,支持大电流驱动/灌入I/O模式。

1)输入模式

        设置 GPIOx_OMD(PMDn[1:0]) 为00b,GPIOx port[n]为输入模式,I/O引脚为三态(高阻),没有输出驱动能力。GPIOx_PIN的值反映相当端口的状态。

2)推挽输出模式

        设置 GPIOx_OMD(PMDn[1:0]) 为 01b,GPIOx port [n] 为输入模式,I/O支持数字输出功能,有source/sink电流能力. GPIO_DOUT 相应位的值被送到相应引脚上。

        1)单次触发模式

         一旦定时器计数器的值达到TCMPR的值,且IE置1,则定时器中断位置位,产生中断信号并送到NVIC通知CPU,表明定时器发生溢出,定时器计数操作停止,该比较的操作仅进行一次。
2)周期触发模式
         一旦定时器计数器的值达到TCMPR的值,定时器计数器的值返回计数初值并再次计数,如果IE置1,则定时器中断位置位,产生中断信号并送到NVIC通知CPU。
3)可编程时钟输出模式
         一旦定时器计数器的值与TCMPR匹配,且IE置1,则定时器中断标志位置位,产生中断信号并送到NVIC通知CPU,相应toggle输出信号置1,定时器计数器的值返回到计数初值,定时器计数器重新计数,如果中断标志被软件清除,一旦定时器计数器的值再次与TCMPR匹配,则定时器中断标志为再次置位,产生中断信号并送到NVIC通知CPU,相应toggle输出信号置0;如此往复,产生占空比为50%的信号输出。
4)持续计数模式
         产生中断信号的产生取决于TDR==TCMPR。定时器计数器的值与TCMPR匹配后,定时器计数器继续计数,而不返回计数初值,用户可以通过不断改变TCMPR值来实现计数或定时功能。
5)事件计数器
         定时器计数器的时钟源TMRx_CLK必须设置为HCLK,可以通过设置TEXCONx[7]来使能或禁止TM0-TM3防抖动功能,以及设置TEXCONx[0]来设定TM0-TM3上升沿或下降沿计数。如果禁用计数防抖动,事件计数源频率频率必须小于1/3HCLK,如果使能计数防抖动,事件计数源频率必须小于1/8HCLK,
8.串行口
         MCU提供3个UART通道,UART0支持高速,UART1~2支持普通速度,另外UART0与UART1支持流控制,UART0与UART1可以采用DMA控制器。
         通用异步收/发器(UART) 在从外设收到数据的时候执行串到并的转换,在从CPU收到数据的时候执行并到串的转换。该串口同时支持LIN主机模式和 IrDA SIR 功能。有7 种类型的中断:发送FIFO 空中断(Int_THRE)、接收极限到达中断(Int_RDA)、线状态中断 (overrun error 或者校验错误或者framing error或者break 中断) (Int_RLS)、超时中断(Int_Tout)、MODEM 状态中断(Int_Modem) 、唤醒状态中断 (Int_WakeUp)和LIN 接收停止侦测中断。
         UART0 接口控制器一个内嵌64-byte 发送FIFO (TX_FIFO) 和 64-byte 接收 FIFO (RX_FIFO) 来降低CPU的中断数量;UART1~2内嵌 16-byte 发送FIFO (TX_FIFO) 和16-byte (每个字节加3比特的错误数据) 接收FIFO (RX_FIFO) 来降低CPU的中断数量,UART包括一个可编程的波特率发生器,它可以将输入晶振除以一个除数来得到收发器需要的时钟. 波特率公式是 Baud Rate = UART_CLK / M * [BRD + 2]. 其中M和BRD在波特率分频寄存器UA_BAUD中定义。
         UART0与UART1 控制器用 2 种low-level 信号, /CTS (clear-to-send)和 /RTS (request-to-send)支持自动流程控制功能。
         UART 控制器提供 串行 IrDA (SIR, 串行红外) 功能 (用户需置位 UA_FUN_SEL[IrDA_EN] 使能 IrDA 功能),SIR 定义短程红外异步串行传输模式 1 开始位, 8 数据位, 和1 停止位. 最大数据速率 为 115.2 Kbps (半双工). IrDA SIR 包括 IrDA SIR 编码/解码协议。
         UART 控制器具有LIN(局域网) 功能. LIN 模式提供设定LIN_EN bit 位 UA_FUN_SEL 寄存器. 在LIN 模式, 1 开始位 8 数据位和1 停止位相一致,同标准LIN 相同。
         串口特性:可编程为5,6,7,8位的数据位,可编程奇偶校验或无校验,可编程为1,1.5,2位的停止位,
         UART支持RS-485 9位模式功能,设置UA_FUN_SEL选择RS485模式;控制器可以配置成可寻址的从机模式,RS485发送可通过设置优先级(bit9)为1标志地址特性,对于数据特性,标志优先级为0;设置寄存器UA_LCR控制第9位(PBE,EPE和SPE置位,第9位发送0;PBE,SPE置位,EPE清零,第9位发送1)。
         有任何技术或业务上的问题或者需要样品开发板,请联系我,谢谢

      联系人:刘先生

      联系电话:0755 8259 1179-803    

      QQ:97805809

      公司:深圳市颖特新科技有限公司(新唐华邦代理)


路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 立即注册

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
返回顶部