基于MSP430F149的单片机最小系统设计

发布者:binggege最新更新时间:2021-02-22 来源: eefocus关键字:MSP430F149  单片机  最小系统 手机看文章 扫描二维码
随时随地手机看文章

单片机最小系统,或称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统。对于MSP430系列单片机来说,最小系统一般应该包括:单片机、晶振电路、复位电路。本文介绍了MSP430F149单片机的特点,设计了MSP430最小系统中电源模块、晶振电路模块、复位电路模块、串口通讯模块和数据存储模块的电路原理图,并介绍了各部分的功能。


0 引言

单片机芯片配以必要的外部器件,一般包括电源供入及电源开关、复位电路、晶振、输入输出电路等就能构成最小系统。


MSP430F149芯片是超低功耗微处理器,有60KB+256字节FLASH,2KBRAM,包括基本时钟模块、看门狗定时器、带 3个捕获/比较寄存器和PWM输出的16位定时器、带7个捕获/比较寄存器和PWM输出的16位定时器、2个具有中断功能的8位并行端口、4个8位并行端口、模拟比较器、12位A/D转换器、2个串行通信接口等模块。MSP430F149芯片具有如下特点:


1)功耗低:电压2.2V、时钟频率1MHz时,活动模式为200μA;关闭模式时仅为0.1A,且具有5种节能工作方式。


2)高效16位RISC-CPU,27条指令,8MHz时钟频率时,指令周期时间为125ns,绝大多数指令在一个时钟周期完成;32kHz时钟频率时,16位MSP430单片机的执行速度高于典型的8位单片机20MHz时钟频率时的执行速度。


3)低电压供电、宽工作电压范围:1.8~3.6V;


4)灵活的时钟系统:两个外部时钟和一个内部时钟;


5)低时钟频率可实现高速通信;


6)具有串行在线编程能力;


7)强大的中断功能;


8)唤醒时间短,从低功耗模式下唤醒仅需6μs;


9)ESD保护,抗干扰力强;


10)运行环境温度范围为-40~+85℃,适合于工业环境。


MSP430系列单片机的所有外围模块的控制都是通过特殊寄存器来实现的,故其程序的编写相对简单。编程开发时通过专用的编程器,可以选择汇编或C语言编程,IAR公司为MSP430系列的单片机开发了专用的C430语言,可以通过WORKBENCH和C-SPY直接编译调试,使用灵活简单。


1 系统总体设计

最小系统是由保证处理器可靠工作所必须的基本电路组成的,主要包括电源电路、时钟电路、复位电路、通信接口电路、数据存储电路组成,其硬件框图如图1所示。



1.1 电源电路

本系统需要使用+5V和+3.3V的直流稳压电源,其中MSP430Fl49及部分外围器件需要+3.3V电源,另外部分需要+5V电源。在本系统中,以+5V直流电压为输入电压,+3.3V由+5V直接线性降压。电源电路原理如图2所示。



1.2 晶振电路

MSP430系列单片机时钟模块包括数控振荡器(DCO)、高速晶体振荡器和低速晶体振荡器等3个时钟源。这是为了解决系统的快速处理数据要求和低功耗要求的矛盾,通过设计多个时钟源或为时钟设计各种不同工作模式,才能解决某些外围部件实时应用的时钟要求,如低频通信、LCD显示、定时器、计数器等。数字控制振荡器DCO已经集成在MSP430内部,在系统中只需设计高速晶体振荡器和低速晶体振荡器两部分电路。


低速晶体振荡器(LFXTl)满足了低功耗及使用32.768kHz晶振的要求。LFXTl振荡器默认工作在低频模式,即32.768kHz,也可以通过外接450kHz~8MHz的高速晶体振荡器或陶瓷谐振器工作在高频模式,在本电路中我们使用低频模式,晶振外接2个22pF的电容经过XIN和XOUT 连接到MCU。


高速晶振也称为第二振荡器XT2,它为MSP430F149工作在高频模式时提供时钟,XT2最高可达8MHz。在系统中XT2采用4MHz的晶体,XT2外接2个22pF的电容经过XT2IN和XT2OUT连接到MCU,原理如图3所示。


1.3 复位电路原理图

手动复位是最小系统常用的功能,本系统采用专用复位芯片IMP811实现手动复位,原理如图4所示。



1.4 通讯接口电路

通信接口担负与外围的串行主机数据交换和支持打印等任务。


串行通讯只需较少的端口就可以实现单片机和PC机的互通,具有无可比拟的优势。串行通讯有两种方式:异步模式和同步模式。MSP430系列都有USART 模块来实现串行通信。在本设计中,MSP430F149的USART0模块通过RS232串口与外围的串行主机通信。


EIA-RS232标准是由美国电子工业协会(EIA)制定的串行数据传输总线标准。早期它被应用于计算机和终端通过电话线和Modem进行远距离的数据传输,随着微型计算机和微控制器的发展,不仅远距离,近距离也采用该通信方式。在近距离通信系统中,不再使用电话线和MODEM,而直接进行端到端的连接。RS232标准采用负逻辑方式,标准逻辑“1”对应-5V~-15V电平,标准逻辑“O”对应+5V~+15V电平。显然,两者间要进行通信必须经过信号电平的转换。


本系统采用专用电平转换芯片MAX3232来实现。MAX3232芯片是MAXIM公司生产的电平转换芯片,包含两路接收器和驱动器,性能可靠。原理如图 5所示。



1.5 数据存储电路

数据存储选择大容量的E2PROMCAT24WC256。它是一个256K位串行CMOSE2PROM,内部含有32768个字节,每字节为8位,CATALYST公司的先进CMOS技术减少了器件的功耗,CAT24WC256有一个64字节页写缓冲器该器件通过I2C总线接口进行操作。原理如图6所示。

2 结束语

最小系统可以直接作为核心部件应用与工程和科研中,具有良好的通用性和可扩展性。在最小系统的基础上,可以很方便地进行二次开发和功能扩展,能够缩短开发周期,降低开发成本。本文实现了最小系统的基本功能,介绍了各模块的硬件电路。该最小系统可以经过适当修改可应用于电子设计、计算机教学与科研、工业控制等领域。

关键字:MSP430F149  单片机  最小系统 引用地址:基于MSP430F149的单片机最小系统设计

上一篇:基于MSP430单片机和CS8900A的以太网终端设计
下一篇:基于MSP430单片机的行驶车辆检测器的设计

推荐阅读最新更新时间:2024-11-13 12:26

51单片机单LED灯右移电路图+程序
下面是电路原理图 下面是单片机程序1: #include reg52.h #define uchar unsigned char #define uint unsigned int uchar i, temp; void Delay(uint del) { uint i,j; for(i=0; i del; i++) for(j=0; j 1827; j++) ; } void Main(void) { while(1) { temp = 0xfe; for(i=0; i 8; i++) { P0 = temp; //把值赋给P1口 Delay(
[单片机]
51<font color='red'>单片机</font>单LED灯右移电路图+程序
注释非常详细的51单片机IIC源程序
自己写的IIC程序,因为初学,还是有借鉴的地方,但是所有程序均为手打,每一行都有详细的注释 单片机源程序如下: #include reg52.h #include iic.h sbit IIC_SDA=P2^6; //声明IIC总线的数据线接在单片机的P2.6端口。 sbit IIC_SCL=P2^7; //声明IIC总线的时钟线接在单片机的P2.5端口。 //void delay(unsigned int t) //{//延时函数 // while(t){t--;}; //延时循环计数 //} //-----------------------------------------
[单片机]
51单片机 P0口工作原理详细讲解
一、P0端口的结构及工作原理 P0端口8位中的一位结构图见下图: 由上图可见,P0端口由锁存器、输入缓冲器、切换开关、一个与非门、一个与门及场效应管驱动电路构成。再看图的右边,标号为P0.X引脚的图标,也就是说P0.X引脚可以是P0.0到P0.7的任何一位,即在P0口有8个与上图相同的电路组成。 下面,我们先就组成P0口的每个单元部份跟大家介绍一下: 先看输入缓冲器:在P0口中,有两个三态的缓冲器,在学数字电路时,我们已知道,三态门有三个状态,即在其的输出端可以是高电平、低电平,同时还有一种就是高阻状态(或称为禁止状态),大家看上图,上面一个是读锁存器的缓冲器,也就是说,要读取D锁存器输出端Q的数据,那就得使读锁存
[单片机]
51<font color='red'>单片机</font> P0口工作原理详细讲解
用PIC微控制器设计LED驱动控制电路的考虑
一、引言 近年来,随着半导体技术的不断发展,LED 作为一种供电电压低,功耗小,寿命长,无辐射的新型光源,应用领域日益扩大,完全可望取代传统的白炽灯和日光灯灯泡,成为固态照明的关键光源。许多固态照 明应用常采用智能控制电路系统来驱动 LED 以履行各种功能和任务,譬如为确保流经 LED 的电流不受供电电压波动的影响维持恒定,从而使 LED 的亮度无明显变化的亮度调节就是控制电路系统的任务之一。亮度调节涉及电流调整与调光控制。控制电路系统的另一任务是失效识别。因 LED 具有很强的温度相关性,大多失效又与温度有关,故控制电路系统应能履行温度补偿。此外,通过硬件选择以适应不同亮度 LED组合的驱动也极必要。一块芯片上可集成全部必
[单片机]
用PIC<font color='red'>微控制器</font>设计LED驱动控制电路的考虑
PIC16F87x单片机存储器特点及数据存储器使用规划
国微芯科技公司的PICmicro单片机和其他单片机相比,在硬件结构和指令系统中采用了很多独有的设计。 PIC系列单片机硬件系统设计简洁,指令系统设计精练;采用哈佛总线结构,芯片内部数据总线和指令总线分离;选址方式简单。 PIC16F87x系列单片机是PIC16系列子系列,是中间档次产品。PIC系列与其他单片机相比,让人印象最深的特点可能要属其内存的分页结构,有很多习惯了其他单片机编程的人认为PIC单片机的内存分页带来很多不便。本文介绍在PIC1687x系列单片机中,根据数据变量的访问特性安排其在数据存储器中的位置的方法及其中断编程,从一方面说明内存的规划对编程的影响。 1 PIC16F87x单片机存储器特点 PIC16F8
[单片机]
PIC16F87x<font color='red'>单片机</font>存储器特点及数据存储器使用规划
关于51单片机定时器的灵活使用
前段时间,做一个项目,有串口收发指令判断,按键类型判断,长短按之类,power的定时关电,事件的轮询扫描更新和display的定时扫描。这些要求就对定时器提出了要求,但是我的51单片机只有两个定时器,其中一个又有debug口的波特率产生之用。于是乎我可以用的定时器就只剩下了一个。怎么办?可能大家都只能用变量在定时中断函数去做多了任务就行了,但是我总是感觉这样会导致代码看起来太不具有条理性,而且对于日后的管理不是很容易。思来想去,就想到了linux内核中对于定时器的封装,那种面向对象的思想。 想法有了,我觉得实现就是很简单了。下面给大家贴上我的代码: .h 文件: #ifndef __SC_TIMER_H #define
[单片机]
关于51单片机不能正常起振的原因
如何确定晶振正常起振? 1、判断方法很多,用示波器看波形是最直接的,用数字万用表的电压档测电压也行,因晶振波形的占空比为50%,所以测得的平均电压为1/2Vcc左右,对于51单片机,在使用外置程序存储器的时候还可以测PSEN引脚或P0口引脚的电压或波形,只有晶振电路正常工作,那些引脚才会有信号输出,但现在很少采用片外扩展存储器,所以测晶体两端的电压或波形即可,只是晶振电路设计不良时,测试设备的引入有可能导致停振。 2、晶体两端的电压差不是平均电压差,虽然事实上因外电路的影响,晶体两端的电压可能会有差别,但这不是判断晶振是否起振的依据,也不是晶振电路正常工作的条件。至于一高一低没有工作是指一端为Vcc或接近Vcc,另一端为0
[单片机]
关于51<font color='red'>单片机</font>不能正常起振的原因
codeblocks+winavr开发avr单片机(atmega16)
在avrfeaks论坛里,有一个帖子是关于在codeblocks环境下(与winavr结合)开发avr单片机的,挺不错的,这里转载一下: I got curious, so I downloaded the current C::B installer. It looks better than when I last used it (a year ago?): - A working installation program, with no need to install graphics packages and stuff (WxWidget, MinGW) separately. - A user manual
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
更多往期活动

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved