• 尊龙凯时


  • 深圳led背光源生产厂家,lcd显示屏,lcm液晶显示模块|模组厂-尊龙凯时

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

    单片机最小系统,是指用最少的元件组成的可以工作的单片机系统。为了方便设计者自行开发和应用,文章设计了基于一个通用的单片机的最小系统。该系统以C8051F320为主控芯片,设计了电源电路、复位电路、时钟电路 、存储器扩展电路、串口通信电路和液晶显示电路 ,并介绍了各部分的功能。实验证明改最小系统原理正确,工作可靠。可用于科研 、电子电路设计等领域。

    单片机(MCU)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM 、多种I/O口和中断系统、定时器/计时器等功能集成到一块硅片上构成的一个小而完善的计算机系统。随着计算机技术的高速发展,单片机以其自身的特点,己广泛应用于工业控制、家用电器 、智能仪器、电子玩具市场 。

    本文的最小系统以C805 1 F320为主控芯片 ,C8051F320/1系列器件使用SILICon Labs的专利CIP-51微控制器内核。CIP-51内核具有标准8052的所有外设部件,包括4个16位计数器/定时器、一个具有增强波特率配置的全双工UART 、一个增强型SPI端口、2304字节内部RAM、128字节特殊功能寄存器(SFR)地址空间及25/21个I/O引脚 。C8051F320片内调试电路提供全速、非侵入式的在系统调试(不需仿真器);支持断点 、单步、观察/修改存储器和寄存器 ,比使用仿真芯片、目标仿真头和仿真插座的仿真系统有更优越的性能。

    1 最小系统实现方案

    单片机应用系统的硬件电路设计包含两部分内容 :一是系统扩展 ,即单片机内部的功能单元,如ROM、RAM 、I/O 、定时器/计数器 、中断系统等不能满足应用系统的要求时 ,必须在片外进行扩展,选择适当的芯片,设计相应的电路。二是系统的配置 ,即按照系统功能要求配置外围设备,如电源、A/D、D/A转换器等 。要设计合适的接口电路。

     

    此最小系统要求 :电源,电路中我们可以用外部电源,也可以用自带的充电电池;串口通信 ,能与计算机之间进行通信:时钟,为CPU提供所需的时钟或日历;外接存储器模块;液晶显示 ,可以按我们的要求显示汉字 、字符、数字及图形。系统框图如图1所示。

    1.1 电源电路

    系统中所有的芯片都是用的3V的电压,选用的芯片是TPS78930 ,这是一种低压差稳压器,与传统的低压差稳压器相比 ,具有超低的静态电流。输入电压为4~10V,输出电压3V。输出电流为100mA。在电源模块中通过4个电容进行电源稳压滤波,为系统提供稳定的电源。另外 ,我们的系统中带可充电的锂电池,充电芯片采用MAX1501 ,其输入电压为4.5~6.5V,输出为4.2V电压。电网电压经5V的适配器可以只给电池充电,也可以只给系统供电,或一边给电池充电,一边给系统供电。给电池充电过程中 ,充电指示灯RLED亮,电池充满后,满电指示灯亮 。在电池给系统供电过程中 ,电池电压经过两个100k的电阻分压后接到单片机的P15口,检测到电池电压低时,电压低的指示灯亮。电源电路如图2所示 。

     

    1.2 复位电路

    系统的复位模式有三种 :上电复位 、用户按键复位和软件复位。电路如图3所示,该复位电路的工作原理如下 :在系统上电时,通过电阻R1向电容C1、C2充电,当C1、C2两端的电压未达到高电平的门限电压时 ,REST端输出为低电平,系统处于复位状态;当C1、C2两端的电压达到高电平的门限电压时 ,REST端输出为高电平,系统进入正常工作状态 。当用户按下按钮S时,C1 、C2两端的电荷被泄放掉 ,REST端输出为低电平,系统进入复位状态 。软件可以通过向寄存RSTSRC中的PINRSF位写“1”来强制产生一次上电复位。当发生掉电或因电源波动导致VDD降到VRST以下时,电源监视器将/RST引脚驱动为低电平并使CIP-5 1保持复位状态 。当VDD又回到高于VRST的电平时,CIP-51将退出复位状态。在选择VDD监视器作为复位源之前,必须使能VDD监视器 。

     

    1.3 时钟电路

    C8051F320有一个可编程内部振荡器、一个外部振荡器驱动电路和一个4倍时钟乘法器。系统时钟(SYSCLK)可以来自内部振荡器、外部振荡器电路或4倍时钟乘法器二分频 。

    如果使用内部振荡器 ,可以通过对OSCICN和OSCICL寄存器编程来使能/禁止内部振荡器和调节其输出频率 。当使用外部振荡器电路时 ,必须对所用端口引脚进行配置。当外部振荡器电路被配置为晶体/谐振器方式时,端口引脚P0.2和P0.3分别被用作XTAL1和XTAL2。当外部振荡器电路被配置为RC、电容或CMOS时钟方式时,端口引脚P0.3被用作XTAL2。

    我们在外部振荡器模式时使用了一个CMOS时钟芯片S3530,它与CPU之间是通过两根线连接,具有两个中断/报警功能。所有的地址和数据通过I2C总线接收 。电路如图4所示。

     

    时钟电路产生整个电路的工作时序脉冲 ,它是系统正常工作的关键,又是单片机系统的主要噪声源 。我们采用以下措施来减小噪声:1)时钟脉冲电路要尽量靠近MPU,引线应短而粗;2)用地线包围振荡电路,并将晶体振荡器外壳接地;3)整个系统走线中 ,大电流信号线,电源变压器要远离晶振走线;4)如果时钟电路为其它芯片提供时钟,应充分做好隔离;5)若是双面印制电路板 ,有导线不可避免地经过时钟电路 ,走线应该垂直、交叉但不能平行。

    1.4 UART串口通信电路

    串行通讯只需较少的端口就可以实现单片机和PC机的通信,具有无可比拟的优势。串行通讯有两种方式:异步模式和同步模式 。本设计中利用C805 1 F320的UART模块来实现C805 1 F320与PC机之间的串行通信 。PC机接口是RS-232,RS-232标准采用负逻辑方式,标准逻辑“1”对应-5~-15 V电平,标准逻辑“0”对应+5~+15V电平 。C8051F320的接口为TTL电平。显然 ,和PC机的RS232C电平不兼容 ,两者间要进行通信必须经过信号电平的转换 ,所以连接时必须使用电平转换芯片。

     

    本设计选用符合RS-232标准的SP3223驱动芯片进行串行通信。SP3 22 3电源3~5V,这里是3V供电。具有两个发送和接收通道。SP3223的T1IN与C8051F320的TX0(P04)连接,R10U与C805 1 F320的RX0(P05)连接。串口电路如图5所示。

    1.5 存储器模块电路

    存储器模块包括Flash存储器和SRAM存储器两个部分。C8051F320内部有16kB可在系统编程的FLASH存储器,2304字节片内RAM。一般来说,应该在片外扩展存储器用来存放用户的程序代码 。另外,考虑到系统运行中,MCU往往要做大量的数据处理工作,经常有一些采集到的或生成的数据需要及时进行存储或调用 ,因此当片上16kB的FLASH存储器不够用时 ,需要外部扩展Flash存储器,而且即使掉电,程序和数据都不会丢失 。我们选用的是Flash存储器AT45DB041B,其电压为2.5~3.6V ,适合我们的系统电压3V。存储容量为2048页,每页有264个字节。支持块和页的自动擦除 。AT45DB041B芯片通过SPI总线与单片机的连接,接口为MOSI 、MISO、SCK。

     

    1.6 液晶显示电路

    以往单片机最小系统都是数码显示,电路比较简单,但是只能显示数字不能显示汉字,这里用液晶显示,不但可以显示数字,还可以显示汉字和图形、符号。我们用的液晶是LCM6432ZK ,3V电源供电 ,液晶屏幕为64×32,可显示两行,每行可显示4个汉字。低功耗设计可满足产品的省电要求;同时与单片机等微控器的接口界面灵活(三种模式:并行8位/4位,串行3线/2线)。这里为了节省单片的I/O口,我们用串行2线。SID为输入串行数据,SCLK为输入串行脉冲。液晶显示电路如图7所示 。

     

    考虑到系统的通用性问题 ,因此还应将单片机的一些必要引脚用接口插座引出,以方便使用。例如:USB主机与设备接口 ,A/D、D/A与单片机接口 ,I/O总线扩展接口等。

    2 系统软硬件调试

    用protel软件绘制电路板图。系统上电前,用万用表仔细检查电源是否有短路,元件是否有虚焊 。系统上电后,检查电路板上电压是否正常,复位电路是否工作。

    软件是用C语言编程,与以往的汇编语言比较 ,它的可扩充性、可移植性比汇编语言要好 。本系统支持在线调试,调试比用仿真器要更容易 ,使用更方便。

    3 结束语

    本文中所设计的最小系统经过调试,上述几部分功能已经实现,系统可靠性好。此最小系统应用在智能小车,成功控制智能小车前进 、后退 、转弯 ,显示到达目的地所用时间。


    • XML地图