基于STC89C52的单片机开发系统的设计与研究

2011-07-02 00:03林喆孙清于莹莹
电大理工 2011年3期
关键词:数码管直流电机温度传感器

林喆 孙清 于莹莹

1辽宁装备制造职业技术学院 (沈阳 110161)2沈阳药科大学高等职业技术学院(沈阳110000)

通过研究单片机电路设计的原理和方法,给出了单片机开发系统的设计方案。所述的系统采用了STC89C52单片机,它具有高速和超强抗干扰等的优点,同时,其指令代码完全兼容传统51系列单片机,实现了系统良好的兼容性,并通过端口的多功能复用实现了系统的一体化。

1 系统的硬件资源

本系统采用了多功能一体化结构设计,通过USB接口作为电源进行供电,方便使用并且使用灵活。另外,系统还提供了多种开发芯片以及输入输出设备,所采用的芯片主要包括:STC89C52单片机、TLC549CP模数转换芯片、TLC5615CP数模转换芯片、DS18B20温度传感器、SMOO38红外接头、DS1302时钟芯片、MAX232CPE通讯芯片、ULN2003达林顿管、74HC573锁存器等;输出设备主要包括:8位LED灯、八位共阴极数码管、8*8点阵、1602液晶屏、蜂鸣器、继电器、直流电机和24BYJ48型减速永磁步进电机;输入设备主要包括:独立按键、4*4矩阵键盘、点阵开关和小型遥控器。

2 系统主电路设计原理

本系统采用速度快、功耗小、价格低、容量大、抗干扰能力强的STC89C52单片机,可直接使用USB转串口线和STC-ISP软件通过USB口进行程序下载。在设计过程中,开发系统充分考虑了单片机的 I/O口功能复用以及系统的拓展性,所采用的端子和插槽式接口设计最大程度上支持了电路的扩展,开发系统的主电路如图 1所示。

图1 单片机开发系统主电路

3 系统的主要功能电路设计

3.1 数码管和点阵的静/动态显示

系统使用8个8段共阴极数码管进行其静/动态显示开发,采用 P2.0-P2.2引脚通过74HC138译码器作为位选通信号,同时采用P0.0-P0.7和P3.7引脚控制74HC573锁存器作为数码管段驱动信号来进行其显示功能的开发电路,其连接如图2所示。

为了能够对目前较为流行的点阵进行静/动态显示系统开发,本系统采用指拨开关对P0口进行了可切换设计,可将STC89C52的P0.0-P0.7引脚通过切换开关连接到点阵的行选信号上,同时利用 P2口作为列选信号完成 8*8点阵的静/动态显示开发,其电路如图3所示。

图2 数码管静/动态显示开发电路

图3 点阵静/动态显示开发系统电路

3.2 4*4矩阵键盘的输入

本开发系统中设计了一个 4*4矩阵键盘开发系统并可以通过数码管验证相应按键所对应的键值,同时执行相应子程序,其硬件原理如图4所示。该键盘的行线使用P1.0-P1.3引脚作为输出线,列线使用P1.4-P1.7引脚作为输入线。

图4 4*4矩阵键盘输入开发系统电路

在开发时首先将行线全部输出低电平,此时读入列线数据,若列线全为高电平则没有按键被按下,当某条列线为低电平时,则调用延时子程序去除按键抖动并判定低电平是否仍然存在以确定相应键值。

3.3 步进电机、直流电机、继电器驱动电路

本开发系统采用 STC89C52单片机控制ULN2003集成达林顿管芯片来驱动步进电机、直流电机和继电器。ULN2003为高耐压、大电流NPN型晶体管阵列,最大驱动电压为50V,电流500mA,输入电压为5V,它是一个非门电路,包含了七个单元,每个单元驱动电流最大可达350mA。

在本开发系统中使用ULN2003来驱动步进电机、直流电机和继电器,系统电路图如图 5所示。其中,P1.0引脚与J17端子的第7引脚相连后通过 J16端子使用脉冲调制编码驱动直流电机;P1.1连接 J17端子的第 6引脚后通过ULN2003的第 7个输出引脚驱动继电器;P1.3-P1.6引脚分别连接J17的第4、3、2、1引脚来驱动J18所连接的步进电机。

图5 步进电机、直流电机、继电器驱动开发系统电路

3.4 DS1302实时时钟电路

为了能够进行实时时钟电路的开发,系统中采用了美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟芯片DS1302电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V-5.5V。采用三线接口与单片机进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。

3.5 温度传感器、D/A和A/D转换电路

开发系统中设计了温度传感器 DS18B20,它是单总线式数字温度传感器电路,可以直接将温度转化成串行数字信号,并通过P3.2引脚输入单片机进行处理。它的温度测量范围为-55℃-+125℃,可编程为9-12位A/D转换精度,测温分辨率可达0.0625℃,被测温度用符号扩展的16位数字量方式由与单片机P3.2引脚相连的DQ引脚进行串行输出。

本开发系统中设计了TLC5615CP串行接口D/A转换芯片电路,其输出为电压信号,建立时间为 12.5 us,最大输出电压是基准电压值的两倍,带有上电复位功能,即可以把DAC寄存器复位至全零。在设计过程中分别通过单片机的P1.0-P1.2引脚与它的DIN、SCLK和CS引脚相连进行通信。

在开发系统中还使用 TLC549CP作为 A/D转换芯片电路,它以8位开关电容逐次逼近的方法实现A/D转换,其转换速度小于17 us,它能方便地采用三线(CS、I/O、OUT)串行方式与单片机的P1.3、P1.4和P3.4引脚通信。

系统中所采用的温度传感器、D/A和 A/D转换开发系统电路如图6所示。

4 结论

理论与实践表明,本系统在单片机应用电路的开发与设计过程中具有功能多、结构简单、使用方便、价格便宜、性能稳定和低功耗等特点。通过端子和接口的多功能复用设计有效地增加了系统的可扩展性,为单片机应用系统的开发与设计提供了一种比较理想的方法与解决方案。通过可更换式单片机底座,相同的开发系统也可以用于其它类型单片机应用电路的开发与设计,因此具有较高的实用性和推广价值。

图6 系统中所采用的温度传感器、D/A和A/D转换开发系统电路

[1]张义和.例说51单片机.北京:人民邮电出版社,2008.

[2]STC89C52RC Guide Book.宏晶科技,2006.

猜你喜欢
数码管直流电机温度传感器
基于模糊PID的无刷直流电机速度控制系统的设计与仿真
微课教学设计之“数码管动态显示”
Arduino编程
温度传感器DS18B20在温度计设计中的应用
MC9S08FL16单片机数码管静态显示分析
一种高性能CMOS温度传感器
单片机控制的四位数码管动态显示编程
XTR105电流变送器在温度传感器中的应用
基于FPGA的双绕组无刷直流电机软件设计
基于模糊神经网络PID的无刷直流电机控制系统研究