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

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

3天内不再提示

浅析微控制器MSC1210的工作原理与硬件软件设计

电子工程师 来源:开源博客 作者:仙溪 2021-04-28 11:19 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

1 微控制器MSC1210的工作原理

微控制器是将微型计算机的主要部分集成在一个芯片上的单芯片微型计算机。微控制器诞生于20世纪70年代中期,经过20多年的发展,其成本越来越低,而性能越来越强大,这使其应用已经无处不在,遍及各个领域。例如电机控制、条码阅读器/扫描器、消费类电子、游戏设备、电话、HVAC、楼宇安全与门禁控制、工业控制与自动化和白色家电(洗衣机、微波炉)等。微控制器(Microcontroller Unit,即MCU)可从不同方面进行分类:根据数据总线宽度可分为8位、16位和32位机;根据存储器结构可分为Harvard结构和Von Neumann结构;根据内嵌程序存储器的类别可分为OTP、掩膜、EPROM/EEPROM和闪存Flash;根据指令结构又可分为CISC(Complex Instruction Set Computer)和RISC(Reduced Instruction Set Computer)微控制器。

微控制器MSC1210是TI推出的一种集模拟、数字、闪速存储器于一体的高性能微控制系统。其应用范围十分广泛。使用增强的数字处理内核和高速闪存并带有高性能模拟和外围部件,可以实现优越的系统性能。MSC1210包含闪存、片内SFR、SRAM、闪存、暂存和Boot ROM.其存储器在物理结构上有四个存储空间:片内、片外程序存储器,片内、片外数据存储器。由不同的寻址指令对0000H~FFFFH共64KB的空间进行寻址。由于采用不同的寻址方式,程序段和数据段可以重叠。程序存储器由MCU自动读取,也可使用指令MOVC指定所要读取的程序区,这通常用来查找表格。数据存储区使用指令MOVX进行读取,这条指令提供了多种寻址方式以指定目的地址,对64KB数据存储器进行读取。当片内存储器使能时,片内范围的操作将对片内存储器进行读取,片外范围的操作将通过P0和P2口读取外部存储器。

MSC1210提供了双数据指针(DPTR)加速数据块的移动速度,它能根据外部存储器的速度调节读写速度,在2~9个指令周期之间变化;它还提供给外部存储器16位地址总线(P0和P2)。低位地址通过P0口复用得到,硬件可以控制P0和P2口是作为地址线还是作为通用的I/O.为了更好地提高效率,外围设备也在8051基础上作了改进。如SPI端口就增加了FIFO,使得传输数据有了缓冲区间。32位累加器的使用在处理ADC采样或其它数据源来的多字节数据时将大大减轻CPU的负担,使得24位加法和移位可以在几个指令周期内完成,而无需通过软件用数百个指令周期来完成。

2 硬件系统设计

国家“九五”重大科学工程HIRFL-CSR(兰州重离子加速器冷却储存环)电源控制系统的主要功能是通过电源与计算机的通信模块完成与中央控制中心的信息交换,接收远程控制中心的各种监测与遥控命令,并将电源的各种状态信息反馈给控制中心。控制系统通信模块的设计是组建开关电源控制系统的关键,所设计的通信模块与计算机通信,实现了计算机与电源的主从总线1∶N(本系统N=26)通信方式,并且采用了RS232C和RS485双串行通信总线标准接口

3 软件设计

软件设计的开发平台是Keil公司的Keil C7.0. 为了实现对微控制器MSC1210Y5进行命令操作,应用 C1210语言编写的CSR电源控制系统的主要程序代码如下。

void serial_init (void) file://串行口初始化

{

PCON |=0x80;

SCON = 0x52;

TMOD |= 0x20;

file://TH1 = 0xfe;

TH1 = 0xff;

TR1 = 1;

IE=0x80;

ES0 = 1;

CON_TXD=0;

}

void read_cmd(char i_cmd_buf) file://读命令操作

{

··· ···

}

··· ···

void init_I_O(void) file://初始化I/O口

{

P0DDRL= 0x55; file://P0 是输出模式

P0DDRH= 0x55;

P2DDRL= 0xff; file://P2 是输入模式

P2DDRH= 0xff;

P3DDRH= 0x55;

P0=0xff;

P3 |=0xc0;

}

void init_dac_adc(void) file://初始化 DAC 和ADC

{

int decimation=1728;

/* Timer Setup */

CKCON = 0;

USEC= 10;

/* ADC-Vref, SPI and Systimers */
编辑:lyn

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

    关注

    48

    文章

    8258

    浏览量

    162551
  • 芯片
    +关注

    关注

    462

    文章

    53576

    浏览量

    459448
  • 微型计算机
    +关注

    关注

    0

    文章

    60

    浏览量

    16630
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    深入剖析MSC1210Y5:高精度模数转换的卓越之选

    了 8051 微控制器和闪存的高精度 ADC,看看它究竟有哪些独特之处,能为我们的设计带来怎样的便利和优势。 文件下载: msc1210y5.pdf 一、产品概述 MSC1210Yx 是一系列完全
    的头像 发表于 12-05 15:23 346次阅读
    深入剖析<b class='flag-5'>MSC1210</b>Y5:高精度模数转换<b class='flag-5'>器</b>的卓越之选

    选择微控制器MCU几个步骤

    就准备微控制器选型了。这当然不是个好主意。 在微控制器方面做任何决策时,硬件软件工程师首先应设计出系统的高层结构、框图和流程图,只有到那时才有足够的信息开始对
    发表于 11-26 07:09

    极海APM32F411微控制器硬件FPU使用指南

    APM32F411是一款基于32位Arm Cortex-M4F内核的微控制器硬件FPU是Arm Cortex-M4F的一大优势。合理应用硬件FPU可以大大缩短运算时间。
    的头像 发表于 06-28 11:23 1586次阅读
    极海APM32F411<b class='flag-5'>微控制器</b><b class='flag-5'>硬件</b>FPU使用指南

    Analog Devices / Maxim Integrated MAX78002人工智能微控制器数据手册

    Analog Devices MAX78002人工智能微控制器是支持神经网络的AI微控制器。Analog Devices MAX78002可在超低功耗下执行,并可在物联网边缘实时工作。该器件将高能效
    的头像 发表于 06-18 15:19 654次阅读

    微控制器读取闪存中的软件信息时,软件信息部署在哪里? 是 SRAM 吗?

    我对 PMG1 闪光灯有疑问。 1.微控制器读取闪存中的软件信息时,软件信息部署在哪里? 是 SRAM 吗? 2.微控制器加载软件时,在部署
    发表于 05-23 06:22

    运动控制器接电子尺的工作原理

    运动控制器接电子尺的工作原理,主要涉及运动控制器对电子尺(直线位移传感)信号的读取与解析,以及根据这些信号对机械运动进行精确控制的过程。以
    的头像 发表于 03-14 16:05 1393次阅读

    求助,关于MSC1213Y5的一些问题求解

    我现在使用MSC1213Y5(与MSC1210基本相同,只是几个管脚定义不同),其原理图参照TI公司网站提供的参考设计MSC1210EVM设 计原理图,目前单片机可以起振,外部采用有源晶振
    发表于 02-13 08:01

    电机控制器工作原理和作用

    电机控制器是现代电气系统中不可或缺的组成部分,它负责控制电机的启动、运行、停止以及调速等操作,广泛应用于工业自动化、交通、家用电器、航空航天等多个领域。 一、电机控制器工作原理 电机
    的头像 发表于 02-01 16:32 5251次阅读

    通过RS232对MSC1210Y3进行在线烧录,可以用什么工具软件

    通过RS232对MSC1210Y3进行在线烧录,可以用什么工具软件
    发表于 01-23 07:57

    MSC1210是否有替代料或者升级版本?

    MSC1210是否有替代料或者升级版本
    发表于 01-15 07:15

    汽车微控制器虚拟控制器的分类与实践

    虚拟控制器(V-ECU)是指通过软件在模拟环境中运行,模仿实际硬件控制器功能的系统组件。它可用于开发、测试和验证嵌入式系统,而无需依赖实际的物理硬件
    的头像 发表于 01-06 15:23 1966次阅读
    汽车<b class='flag-5'>微控制器</b>虚拟<b class='flag-5'>控制器</b>的分类与实践

    请问MSC1210串口UART1如何设置波特率?

    如题,MSC1210的手册上面有提到,UART0的波特率可以进行选择,可选择为T1的溢出作为波特率的设置,但是UART1的波特率如何设置?是和UART0的波特率一样吗?还是需要其他的设置。
    发表于 01-02 08:27

    MSC1210如何才能在程序中调用Boot ROM中的程序?

    如题,也就是MSC1210如何才能在程序中调用Boot ROM中的程序,需要配置寄存还是需要硬件改动?例如:void autobaud(void),此程序在ROM.H中有声明, 另外就是在程序中
    发表于 01-01 07:57

    S32K3xx微控制器硬件设计指南

    电子发烧友网站提供《S32K3xx微控制器硬件设计指南.pdf》资料免费下载
    发表于 12-30 15:46 9次下载

    MSC1210Y5设计电路需用到WatchDog功能,但一直试都无作用,是哪里的问题?

    你好:我的问题是:我用贵司MSC1210Y5设计电路,其中需用到WatchDog功能,但一直试都无作用,我参照MSC1210 User\'s Guide 于C程式开头加入 #pragma ASM
    发表于 12-13 12:18