设为首页 | 加入收藏

  

基于MSP430单片机编程器的设计

发布日期:2021-01-24 04:57   来源:未知   阅读:

  单片机开发与应用已渗入我们生活中各个方面,其中一个应用就是对内存较小的芯片大批量烧录,就有了性能稳定的高速编程器诞生以满足各大厂商实现大量芯片烧录的目标。目前市场上运用最广泛的编程器是基于89C51的,但其功能过于单一,不能满足日益发展的市场需求。本文提出一种采用MSP430F149单片机作为CPU控制核心的编程器。与51单片机编程器相比,MSP430单片机编程器增加了I2C存储模块,可无需电脑利用该编程器对芯片进行烧录,使烧录过程更方便、快捷。

  基于MSP430的单片机编程器以MSP430F149为核心,主要由键盘、显示、串口、烧写、电平转换、电源和存储模块构成。系统结构框图如图1所示。

  编程器核心模块选用超低功耗MSP430F149系列单片机[1]。图2是MSP430F149最小系统原理图。Y1、Y2是晶振模块,RST接入复位模块,P1为数据传输口,P3.0~P3.4为高4位地址输出,P4为低8位地址输出,P5.3、P5.4与键盘连接,P2、P5.0~P5.2与液晶显示器连接,P3.6、P3.7与存储器相连。

  MSP430F149提供信号电平与上位机工作电平不一致,因此要通过MAX232进行电平转换。MAX232芯片是依照RS-232标准串口设计的接口电路,用+5V单电源供电。MAX232接MSP430F149和上位机之间进行通讯。

  如图3基于MSP430编程器的I2C存储模块为EEPROM存储器,选用内存为8KB的AT24C16芯片。MSP430F149和AT24C16之间用一根数据线SDA、一根时钟线SCL连接。存储器中存放将要烧写到51单片机的程序,以满足脱机要求。

  键盘模块选用PS2键盘,具有通用可靠、使用连线根信号线)特点得到广泛使用。在烧录中主要起功能选择作用,图4是键盘模块连接图。

  显示模块选用1602液晶显示,显示被烧写芯片相关参数,如芯片型号、编程电压及读、写、擦除等。图5是显示模块连接图,MSP430F149根据键盘控制命令将编程器当前状态和数据显示出来。

  电源给MSP430F149芯片提供3.3V工作电压,也给烧录的51芯片提供一个12V编程电压。如图6,+5V电源通过ASM1117-3.3V进行电压转换产生3.3V电压提供给MSP430F149单片机,另外+5V电源直接输入到51芯片以及产生12V编程电压。

  编程模块中89C51是被烧写芯片,P0.0~P0.7为数据输入,P1.0~P1.7为低8位地址输入,P2.0~P2.3为高4位地址输入而P3.6、P3.7作为功能控制端口[2]。如图7在51单片机外围链接4片74LVC8T245实现3.3V向5V电压变换。DIR对信号传输方向控制,当该引脚为高电平时数据总线,为低电平时则反向传输。对连接地址和控制的3片74LVC8T245而言DIR低电平有效。

  基于MSP430单片机编程器具有读、写、校验和擦除的功能。这些功能可以在联机状态下通过命令方式操作,也可以在脱机状态下通过键盘控制完成,编程数据和命令传送通过上下位机通讯实现。

  如图8编程器进入中断状态等待接收数据,一旦接收到数据判断是否为“命令”,若是则判断否是“检查”、“擦除”、“读”或“写”命令,若是其中命令之一,编程器就执行相应操作。否则返回串口中断接收状态等待数据到来。若接收的不是“命令”则判断是否为“数据”,若是就将数据储存到E2PROM,否则编程器返回中断接收状态。

  如图9编程器读取键盘输入命令,若输入“Check#”则对51单片机Flash进行检查,全为FFH则LCD会显示“OK”,还显示单片机ID、编程电压等信息,否则显示未擦除单元地址;若输入“Erase#”编程器会擦除51单片机Flash中内容并在LCD上显示“完成”;若输入“Read#”编程器会读51单片机Flash中内容到RAM中并在LCD上显示;若输入“Write#”编程器会把E2PROM存储内容写入51单片机Flash,并在LCD上显示“完成”;若输入是“Verify#”编程器会对写入Flash中的内容进行检查是否与E2PROM内容一致,若是在LCD上显示“OK”,否则显示错误FLASH单元地址;若输入“Auto#”编程器就顺序执行擦除、检查、写和校验操作并返回等待键盘输入命令。



上一篇:工资计划最后一步:进步才能涨薪水很要害 理财 投资_ 下一篇:RAYCO新品震撼上市 引领儿童科普用品新主张