基于通用单片机的最小系统设计
单片机最小系统是指由最小元件组成的单片机系统。为了方便设计者自行开发和应用,文章设计了基于一个通用的单片机的最小系统。该系统以C8051F以320为主控芯片,设计了电源电路、复位电路、时钟电路、存储器扩展电路、串口通信电路和液晶显示电路,并介绍了各部分的功能。实验证明,最小系统原理正确,工作可靠。可用于科研、电子电路设计等领域。
单片机(MCU)它是一种具有数据处理能力的集成电路芯片,采用超大型集成电路技术CPU随机存储器RAM、只读存储器ROM、多种I/O一个小而完统、定时器/计时器等功能集成在硅片上,形成一个小而完美的计算机系统。随着计算机技术的快速发展,单片机广泛应用于工业控制、家用电器、智能仪器和电子玩具市场。
本文的最小系统是C805 1 F320是主控芯片,C8051F使用320/1系列器件SILICon Labs的专利CIP-51微控制器内核。CIP-标准8052的准8052的所有外设部件,包括4个16位计数器/定时器强波特率配置的全双工UART、一个增强型SPI2304字节内端口RAM、128字节特殊功能寄存器(SFR)地址空间及25/21I/O引脚。C8051F320片内调试电路提供全速、非侵入性的系统调试(无模拟器);支持断点、单步、观察/修改存储器和寄存器的性能优于使用模拟芯片、目标模拟头和模拟插座的模拟系统。
1 最小系统实现方案
单片机应用系统的硬件电路设计包括两部分:一是系统扩展,即单片机内部的功能单元,如ROM、RAM、I/O、当定时器/计数器、中断系统等不能满足应用系统的要求时,必须在片外扩展,选择合适的芯片,设计相应的电路。二是系统配置,即根据系统功能要求配置电源等外围设备A/D、D/A转换器等。设计合适的接口电路。
最小系统要求:电源,我们可以使用外部电源,也可以使用自己的充电电池;串口通信,可以与计算机通信:时钟,CPU提供所需的时钟或日历;外接存储器模块;液晶显示,可以按我们的要求显示汉字、字符、数字及图形。系统框图如图1所示。
1.1 电源电路
系统中所有芯片均为3V选择的芯片是电压TPS与传统的低压差稳压器相比,它具有超低的静态电流。输入电压为4~10V,输出电压3V。输出电流为100mA。电源稳压滤波通过四个电容器进行,为系统提供稳定的电源。此外,我们的系统还配备了充电锂电池,充电芯片使用MAX1501,其输入电压为4.5~6.5V,输出为4.2V电压。电网电压经5V适配器只能给电池充电,也可以给系统充电,或者给系统充电。给电池充电时,充电指示灯RLED当电池充满时,满电指示灯亮起。在电池供电系统时,电池电压通过两个100k电阻分压后接收单片机P检测到电池电压低时,15口电压低的指示灯亮起。如图2所示。
1.2 复位电路
该系统有三种复位模式:上电复位、用户按和软件复位。如图3所示,复位电路的工作原理如下:当系统上电时,通过电阻R1向电容C1、C2充电,当C1、C当两端电压未达到高电平门限电压时,REST当端输出为低电平时,系统处于复位状态;C1、C当两端电压达到高电平门限电压时,REST端输出为高电平,系统正常工作。当用户按下按钮S时,C1、C两端的电荷被泄漏,REST端输出为低电平,系统进入复位状态。通过寄存软件RSTSRC中的PINRSF位写1强制产生上电复位。当发生电源故障或电源波动时VDD降到VRST下面,电源监视器将//RST引脚驱动低电平CIP-5 保持复位状态。当VDD又回到高于VRST的电平时,CIP-51将退出复位状态。在选择VDD在监视器作为复位源之前,必须使能量VDD监视器。
1.3 时钟电路
C8051F320有一个可编程的内部振荡器,一个外部振荡器驱动电路乘法器。系统时钟(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可在系统中编程FLASH2304字节片中的存储器RAM。一般来说,用户的程序代码应该在片外扩展存储器。另外,考虑到系统运行,MCU往往要做大量的数据处理工作,经常有一些采集到的或生成的数据需要及时进行存储或调用,因此当片上16kB的FLASH当存储器不够时,需要外部扩展Flash程序和数据不会丢失,即使存储器断电。我们选择的是Flash存储器AT45DB041B,其电压为2.5~3.6V,适合我们的系统电压3V。存储容量为2048页,每页有264个字节。自动擦除支撑块和页面。AT45DB041B芯片通过SPI连接总线和单片机的接口是MOSI、MISO、SCK。
1.6 液晶显示电路
在过去,单片机的最小系统是数字显示,电路相对简单,但只能显示数字不能显示汉字,这里用液晶显示,不仅可以显示数字,还可以显示汉字、图形、符号。我们用的液晶是LCM6432ZK,3V供电,液晶屏64×可显示两行,每行可显示四个汉字。低功耗设计能满足产品的省电要求;同时,与单片机等微控器的界面界面灵活(平行8位/4位,串行3线/2位)。为了节省单片I/O口,我们用串行2线。SID输入串行数据,SCLK输入串行脉冲。如图7所示,液晶显示电路。
考虑到系统的通用性问题,因此还应将单片机的一些必要引脚用接口插座引出,以方便使用。例如:USB主机与设备接口,A/D、D/A与单片机接口,I/O总线扩展接口等。
2 系统软硬件调试
用protel软件绘制电路板图。系统上电前,用万用表仔细检查电源是否短路,元件是否虚焊。系统上电后,检查电路板上的电压是否正常,复位电路是否工作。
该软件采用C语言编程。与以往的汇编语言相比,其可扩展性和可移植性优于汇编语言。该系统支持在线调试,比模拟器更容易调试和使用。
3 结束语
本文设计的最小系统经过调试,实现了上述功能,系统可靠性好。该最小系统应用于智能汽车,成功控制智能汽车的前进、后退和转弯,显示到达目的地的时间。