STC89单片机

2024-11-08

STC89单片机(精选9篇)

STC89单片机 篇1

0引言

传统的路边装饰和节日彩灯等是利用电路的串并联来完成的,缺少更加生动的图形和效果。本设计是由单片机STC89C52控制,通过C语言编程完成动作编排和LED光带的显示,结合演员的舞蹈表演,在和谐或动感的音乐背景下展现跨越时空的神奇表演。

2系统的总体设计

本次设计是由两种思维出发完成舞蹈与程序控制LED光带显示,一种是设定模式,一种是即兴模式。其中设定模式的程序编写是由整个舞蹈的编排和音乐的选取决定,本次设计编排有10个舞蹈程序供选取。本次设计主要即兴模式的选择完全有4×4按键完成。这样不仅有利于系统本身功能的扩展, 而且方便使用在更多的载体上。系统设计框图如图1所示。

图1系统的设计框图 (参见右栏)

2系统的主要硬件设计

2.1数据处理模块

本次系统设计采用STC89C52,其是STC公司生产的一种低功耗、高性能CMOS 8位微控制器,具有8K在系统可编程Flash存储器。STC89C52使用经典的MCS-51内核,但做了很多的改进,使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的8位CPU和在系统 可编程Flash, 使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。其具有的以下功能满足本系统的设计需要:8k字节Flash,512字节RAM,32位I/O口线,看门狗定时器,内置4KB EEPROM, MAX810复位电路,3个16位定时器/计数器,4个外部中断,一个7向量4级中断结构,全双工串行口。另外STC89C52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作, 允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结, 单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选。

2.2 LED驱动模块

本次设计呈现给大家的是光影的结合,而所用的LED光带全部缝合在舞者的帽子、衣服和鞋上, 具体划分成24模块,分别有24个三极管作为不同部位的驱动,配合着音乐的节拍和舞蹈动作的展现, 编写驱动程序。

2.3电源模块

作为制作难点之一的电源模块,本次设计采用开关电源,利用其升压电路完成所需的5V电压,并且具有体积小、重量轻、效率高、方便表演者随身携带来更灵活的控制自身的LED光电显示等特点。

3 系统软件设计

3.1 程序流程

舞蹈者衣服上的LED光带的明暗由程序控制, 并且程序的调试和载入时通过com口完成,在脱离电脑的情况下就由按键完成即兴模式编排。其程序运行流程图如图2所示。

其中,模式2为即兴编排模式,各关节的灯是亮还是暗,其程序编排也是有按键来控制。4×4按键分别由模式键、灯亮暗键、确定键、取消键、数字键等等扩展功能键。

3.2主程序main函数

(原稿双栏排列,估计应该是单栏顺序排列, 右半栏应该排在左半栏下面)

本次设计由六人表演,其中一人的主程序如下:

4调试结果分析

调试是以软件(程序)调试为主,硬件调试主要检测焊接是否正常、规范,软件调试主要是看程序的编排是否与舞蹈和音乐相互协调,光影效果是否突出。另外看单片机与按键的结合是否有延时。图3分别为服装效果图和运作过程效果图。

图3服装效果和运作效果图 (参见右栏)

5设计的价值及展望

本设计完成了程序控制和舞蹈表演的完美结合, 向观众呈现光与影的神奇表演,再次给大家以视觉冲击的特效,作为科研有进一步的扩展价值,作为城市建设有一定的商业价值。可以通过改变一下形状,重新编写程序做出礼花弹的效果,美观无污染, 绿色环保。在大城市里禁止烟花爆竹的地方放在阳台上,别有一番情调,甚至可以配上声音,如同身临其境。如此的设计在单片机或者ARM芯片的控制下能更好地完成更多的设计。

参考文献

[1]曹文祥.AT89C51单片机数字体温计的设计[J].武汉工程职业技术学院学报,2012,24(3):32-34.

[2]张议和.例子51单片机[M].北京:人民邮电出版社,2008.

[3]周鹏.基于STC89C52单片机的多功能测温仪设计[J].硬件纵横,2012(6):26-29.

[4]张毅刚,彭喜元.单片机原理与应用设计[M].北京:电子工业出版社,2010.

[5]韩润萍,等.点阵LED显示屏控制系统[J].微计算机信息,2003,19(10):50-51.

STC89单片机 篇2

#include

#include

sfr P1_ADC_EN = 0x97;//A/D转换功能允许寄存器

sfr ADC_CONTR = 0xC5;//A/D转换控制寄存器

sfr ADC_DATA = 0xC6;//A/D转换结果寄存器 高8位,sfr ADC_LOW2 = 0xC7;//A/D转换结果寄存器 低2位,如果是8位AD无此寄存器。

#define uchar unsigned char;

#define uint unsigned int;

Uintad_out1,ad_out2;

void delay(uchar delay_time)// 延时函数

{

uchar n;

uint m;

for(n=0;n

{

for(m=0;m<10000;m++);

}

}

uchar get_AD_result(uchar channel)

{

uchar AD_finished = 0;// 存储 A/D 转换标志

ADC_DATA = 0;

ADC_CONTR = channel;// 选择 A/D 当前通道

_nop_();_nop_();_nop_();//使输入电压达到稳定

_nop_();_nop_();_nop_();

ADC_CONTR |= 0x08;//0000,1000 令 ADC_START = 1, 启动A/D 转换

AD_finished = 0;

while(AD_finished == 0)// 等待A/D 转换结束

{

AD_finished =(ADC_CONTR & 0x10);//0001,0000, ADC_FLAG ==1测试A/D转换结束否

}

ADC_CONTR &= 0xF7;//1111,0111 令 ADC_START = 0, 关闭A/D 转换,return(ADC_DATA);// 返回 A/D 转换结果

}

void main()

{

P1 = P1 | 0x01;// 0000,0001,P1.0为 A/D 转换,即通道0与1

福星电子网http://

P1_ADC_EN = 0x01;//0000,0001, P1 的P1.0设置为 A/D 转换输入脚// 断开P1.0,P1.1 内部上拉电阻

while(1)

{

get_AD_result(0);

delay(10);

//可以多采集几次求均值

//8位数据输出,参考电压5V

ad_out1=(ADC_DATA*5)/256

//8位数据输出,参考电压5V

ad_out2=((ADC_DATA*4)+ ADC_LOW2)/1024

}

STC89单片机 篇3

【关键词】超声波传感器;STC89C5 2;测距仪

传感器是现代信息技术的主要内容之一,其中超声波传感器有着广泛、普遍的应用。随着科学技术的快速发展,超声波将在测距仪中的应用越来越广。超声波测距仪作为一种新型的非常重要有用的工具在各方面都将有很大的发展空间,它将朝着更加高定位高精度的方向发展,以满足日益发展的社会需求。利用单片机控制超声波检测往往比较迅速、方便、计算简单、易于做到实时控制。

本文所设计的测距仪包括硬件和软件设计两个部分。模块划分为数据采集、按键控制、四位数码管显示、报警等子模块。电路结构可划分为:超声波传感器、蜂鸣器、单片机控制电路。就此设计的核心模块来说,单片机就是设计的中心单元,所以此系统也是单片机应用系统的一种应用。单片机应用系统也是有硬件和软件组成。硬件包括单片机、输入/输出设备、以及外围应用电路等组成的系统,软件是各种工作程序的总称。单片机应用系统的研制过程包括总体设计、硬件设计、软件设计等几个阶段。系统采用STC89C52单片机作为核心控制单元,当测得的距离小于设定距离时,主控芯片将测得的数值与设定值进行比较处理。然后控制蜂鸣器报警。图1为系统总体设计图:

主控制模块设计

STC89C52、超声波传感器、按键、四位数码管、蜂鸣器等一些单片机外围应用电路。电路中用到3个按键,一个是设定键,一个加键,一个减键。

复位电路模塊设计

单片机在启动时都需要复位,以使CPU及系统各部件处于确定的初始状态,并从初态开始工作。89系列单片机的复位信号是从RST引脚输入到芯片内的施密特触发器中的。当系统处于正常工作状态时,且振荡器稳定后,如果RST引脚上有一个高电平并维持2个机器周期(24个振荡周期)以上,则CPU就可以响应并将系统复位。

时钟电路模块设计

因为一个机器周期含有6个状态周期,而每个状态周期为2个振荡周期,所以一个机器周期共有12个振荡周期,如果外接石英晶体振荡器的振荡频率为12MHZ,一个振荡周期为1/12us,故而一个机器周期为1us。

声音报警电路模块设计

用一个Speaker和三极管、电阻接到单片机的P13引脚上,构成声音报警电路。

显示模块设计

数码管使用的是4位共阳极数码管,驱动电路中三极管使用的是8550三极管。其中8550三极管可以和9012三极管通用,都为PNP型三极管。其中三极管是用来做驱动的作用。

按键电路模块设计

按键电路用来设置测距的安全距离有三个按键分别是进入设定键,增加距离键,减少距离键。

超声波测距模块设计

超声波模块采用现成的HC-SR04超声波模块,该模块可提2cm-400cm的非接触式距离感测功能,测距精度可达高到3mm。模块包括超声波发射器、接收器与控制电路。基本工作原理:采用IO口TRIG触发测距,给至少10us的高电平信号,模块自动发送8个40khz的方波,自动检测是否有信号返回。有信号返回,通过IO口ECHO输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电平时间*声速(340M/S))/2。

时序图表明只需要提供一个10uS以上脉冲触发信号,该模块内部将发出8个40KHz周期电平并检测回波。一旦检测到有回波信号则输出回响信号。回响信号的脉冲宽度与所测的距离成正比。由此通过发射信号到收到的回响信号时间间隔可以计算得到距离。建议测量周期为60ms以上,以防止发射信号对回响信号的影响。

误差分析

要想判断捕获到的第一个回波确定准确的接受时间,必须对收到的信号进行足够的放大,否则不正确的判断回波时间,会对超声波测量精度产生影响。

超声波在大气中传播的速度受介质气体的温度、密度及气体分子成分的影响。实际情况下,温度每上升或者下降1度,声速将增加或者减少 0.607m/s,这个影响对于较高精度的测量是相当严重的。

结论

对所设计的硬件电路进行测量、校准发现其测量范围0.2cm~400cm内的平面物体做了多次测量发现,其最大误差为3cm,显示最小分辨率为0.01m,测量盲区小于0.15米,且重复性好。该系统通过以STC89C52单片机为工作处理器核心,超声波传感器,它是一种新颖的被动式超声波探测器件,能够以非接触测出前方物体距离,并将其转化为相应的电信号输出。该报警器的最大特点就是使用户能够操作简单、易懂、灵活;且安装方便、智能性高、误报率低。

参考文献

[1]宋文绪.传感器与检测技术[M].高等教育出版社,2004年

[2]余锡存.单片机原理及接口技术[M].西安电子科技大学出版社,2000年

[3]郁有文.传感器原理及工程应用[M].西安电子科技大学出版社,2003年

[4]景旭文等.超声测距的研究[J].华东船舶工业学院学报,1994年

作者简介

张野(1988—),男,辽宁朝阳人,沈阳理工大学硕士研究生,研究方向:图像信息处理技术。

基金项目

STC89单片机 篇4

关键词:电子时钟,1602LCD,STC89C52单片机

电子技术在20世纪有了突飞猛进的发展, 电子产品融入到社会生活的每个角落, 对社会生产发展和社会信息化进程起到了强大的推动作用。人们生活节奏在慢慢加快, 经常在忙于工作学习的过程中, 忘记了时间。时间的统筹安排对很多事务都有重要作用, 一时的延误可能会对整个过程造成巨大的影响。由于传统的时钟体积巨大, 计时还不够精确, 显示也不够完整等很多缺点不能满足人们的需求, 所以电子时钟的作用将越来越大。电子时钟无论在性能还是功能方面都在不断的变化以适应人们社会生活的改变, 需要设计出一款新型的多功能电子时钟。而单片机的电子时钟设计的电路体系, 不仅可以精准的显示秒、分、时、日、星期、月份与年份, 而且能够设置闹铃以及对时间进行调整。单片机的电子时钟中相关显示器是1602LCD, 而控制器是STC89C52的单片机, 有独立按键来调整时间, 这种设计结构简单, 便于操作, 稳定性能好, 便于携带。

1 系统方案的设计

整个系统主要包含四个模块:响铃的模块、控制的模块、按键的模块与显示的模块, STC89C52的单片机是电子时钟中的一种主芯片, 其是宏晶科技生产的一种新产品, 主要特点是抗干扰比较强、低能耗与高速度;此外, 还包含有Flash的储存器, 并且可以用来编程, 512的字节RAM, 指令代码兼容传统的8501。而整个设计有两部分:软件、硬件, 两者相辅相成完成设计的任务[1]。

2 系统硬件的设计

2.1 按键模块设计

这个系统有S1、S2、S3三个独立按键, 分别连接STC89C52单片机的P2-0、P2-1、P2-2接口。时间调节键为S1, 自增键是S2, 闹钟的设定键为S3。按S1次数代表秒、分、时、日、星期、月份与年份, 然后按S2, 相应数值加1。

2.2 闹钟模块设计

本系统P0-2端口安装了蜂鸣器, 定的时间达到P0-2端口输出低电平, 蜂鸣器发出提醒的声音, 按S2键将闹铃关闭。闹钟的时间设定按S3来完成。

2.3 显示方案的设计

方案1:1602的液晶显示, 这种显示器中有多种比较常用的字符编码, 具有背光调节的功能, 能够显示出2行16列的字符, 第一行为日、星期、月份与年份, 第二行为秒、分、时, 还可以利用程序控制切换时间设定。

方案2:采用LED数码管, 它由七个发光管组成, 8字形构成, 加小数点一共8个。这些段分别用a、b、c、d、e、f、g、d、p来表示, 给特定的段加电压就会发光。此方案操作简单, 易于程序控制, 不足之处在显示方面。

3 设计系统软件

这个系统程序主要使用单片机的C语言来编写, 为拓展系统功能与修改软件, 需要使用模块化的设计方式, 其中包含按键处理的模块、初始化的模块、定时器的模块与LCD的显示模块等[2]。

3.1 设计液晶模块软件

应用1602的液晶来实现液晶显示模块时, 第一行的液晶显示主要是日、星期、月、年;而第二行的显示为秒、分、时, 当按下S3键来切换屏幕时, 第一行的液晶显示中CLOCX提出已经进入了闹钟设置的界面;而第二行的显示为闹钟的秒、分、时。

3.2 按键模块的软件设计

首先, 要对S1按键实施检测, 判断是否能按下, 根据S1调整的时间按一下, 保持时间的停止, 然后再调节秒, 按两下就可调节分, 按三下能调节小时, 按4下能调节日, 按五下可以调价月, 按六下可以调节年份, 按七下能调节星期, 按八下就调节完成, 确保时间可以继续运转。

其次, 仔细检测S2按键的状态, 如S1处在按下的状态, 再按S2数字就会增加。如果按一下S1, 就会增加一秒, 一直增加到59秒会自动清零;如果按两下S2键, 会增加一分, 一直加到59分就会清零;如果按三S1键, 会增加一小时, 一直增加到23小时就会清零;如果按四下S1键, 会增加一日, 一直增加到三十日会自动清零;如果按五下S1键, 会增加一个月份, 一直增加到L2就会自动清零;如果按六下S1键, 会增加一个年份, 一直增加到99就会自动清零。

最后, 认真检测S3按下的状态, 用S3来设置闹钟, 按一下S3, 屏幕就会切换到闹钟显示的界面, 同时设置闹钟的秒数;如果按两下S3, 可将闹钟设置为分;按三下S3, 可以设定闹钟的小时;按四下S3, 就可以完成闹钟设定, 将屏幕切换至时间显示的界面[3]。

4 系统仿真与调试

先要将Proteus的软件打开, 并从元件库中将全部元件找出来, 再绘制原理图, 完成原理图绘制以后, 需要选择Keil中已编译完成的文件, 然后运行。从软件运行中可以发现, 按照课题要求与显示结果来对程序进行修改, 严格检查运行程序状况, 一直到符合相关要求。在调试系统的过程中, 首先要对单片机的最小系统功能进行调试, 再对1602液晶显示进行调试, 同时编译液晶驱动的程序, 获取理想效果。

5 结语

综上所述, 本次设计中主要把STC89C52的单片机作为整个系统控制的中心, 设计多功能电子的时钟, 该电子钟可以精确显示出时间, 同时使用按键可以调节时间, 还可以对闹钟进行设定, 且具备到时提醒的功能。单片机定时器设定的时间误差比较小, 可以清楚地看到时间, 能够有效克服数码管显示较差的问题, 不仅能够节约硬件的资源, 而且可以获取较好的效果。近几年来, 电子钟逐渐应用在办公室、车站与码头等场所, 为人们娱乐、生活与学习带来了很多方便。

参考文献

[1]温泉.基于单片机的多功能时钟报点系统设计[J].科技展望, 2015, 23 (03) :97-99.

[2]张丙星.单片机实现电子时钟计时功能的程序设计[J].装备制造技术, 2014, 14 (05) :277-278.

STC89单片机 篇5

1 系统总体设计

系统总体设计框图如图1所示。该系统通过数据采集单元采集到待测电阻上的电压值, 然后经运放OP07放大后送入A/D转换单元, 由高精度12位A/D转换器TLC2543来完成数据的转换, 并送入MCU处理器处理后送到显示系统。

1.1 MCU处理器的选择

系统选用STC89C52作为MCU处理器, 其主要特点:STC89C52与MCS-51系列的单片机在指令系统和引脚上完全兼容是一种低损耗、高性能、CMOS构架的八位微处理器, 片内有4k字节的在线可重复编程、快速擦除快速写入程序的存储器, 能重复写入/擦除1000次, 而且擦写时间仅需10毫秒, 并能将数据保存时间为十年。只要程序长度小于4K, 四个I/O口全部提供给用户。可用5V电压编程, 没有两种电源的要求, 改写时不拔下芯片, 适合许多嵌入式控制领域。工作电压范围宽 (2.7V~6V) , 全静态工作, 工作频率宽在0Hz~24MHz之间比8751/87C51等51系列的6MHz~12MHz更具有灵活性, 系统工作频率能快能慢。

1.2 A/D转换器的选择

根据测量的精度和端口的要求, 系统选用TLC2543作为A/D转换器。TLC2543是TI公司的12位串行模数转换器, 使用开关电容逐次逼近技术完成A/D转换过程, 工作温度范围内10μs转换时间, 11个模拟输入通道, 3路内置自测试方式, 采样率为66kbps, 线性误差±1LSBmax, 有转换结束输出EOC, 具有单、双极性输出, 可编程的MSB或LSB前导, 可编程输出数据长度。由于是串行输入结构, 能够节省51系列单片机I/O资源;且价格适中, 分辨率较高, 因此在仪器仪表中有较为广泛的应用。

2 主要硬件电路设计

2.1 自动档位切换电路设计

因为从1Ω~10MΩ电阻阻值跨度太大, 为了测量的准确度, 设计中利用继电器实现档位的自动切换。电路采用LM7805构成恒压源, R1, R4为两个高精度基准电阻, RX为被测电阻, Rx两端电压值由后级电路TLC2543采集。采用继电器来实现100, 1K, 10K和10M之间的量程的自动切换。在电路中被测电阻Rx将和一个高精度的已知基准电阻R2串联, 在两个电阻的两端加一个已知的恒定电压V, 设Rx两端的电压为V1, R2两端的电阻为V2, 根据欧姆定律,

由于Vx, R2, 已知, Vx由电路自动测量得到, 经过单片机计算可得出被测电阻的阻值。

2.2 A/D采样电路设计

TLC2543为12位的A/D转化芯片, 有12个模拟输入通道, 分辨率达4096。程序设计采用模拟通道AIN0端, 并用高输入阻抗运放OP07阻抗匹配, 提高测试精度.以及电路的稳定性。图中OP07的3脚为放大后的采样电压输入端, 输入的模拟电压经TLC2543进进行A/D后。数字量以SPI总线数据传输的方式与单片机进行数据传送。

2.3 MCU控制及显示电路设计

单片机系统电路如图2所示。该模块是整个系统的核心, 主要由STC89C52单片机、电机驱动和ULN2003和12864液晶显示器组成, 具有电阻阻值的数据采集、处理、显示等功能。

3 系统软件设计

软件设计主要包括主程序模块和自动量程切换模块的设计, 主程序主要包括STC89C52的初始化、数据采集、数据处理、显示等。自动量程切换模块主要包括阻值测量、判断阻值是否超出范围等。

摘要:本系统以单片机STC89C52为数据处理和控制芯片, 采用恒压源给待测电阻提供稳定电压, 通过采样待测电阻Rx上的电压值, 经放大后送至A/D转换, 然后送人MCU进行数据处理, 并将测量结果通过LCD12864液晶显示。该测试系统能够实现1Ω10MΩ电阻量程的自动切换、自动筛选, 并且可以对电位器的阻值变化进行扫描测试, 并将测试得到的曲线在LCD12864液晶显示。

关键词:恒压源,单片机,A/D转换

参考文献

[1]沈元隆, 周井全.《信号与系统》[M].北京:人民邮电出版社, 2007年.

STC89单片机 篇6

自第一台工业机器人诞生以来,机器人的发展已经遍及机械、电子、冶金、交通、宇航、国防、探索等领域。近年来机器人的智能水平不断提高,并迅速改变着人们的生活方式。人们在不断探索、改造、认识自然的过程中,制造能代替人劳动的机器人,一直是人类的梦想。智能小车,也就是轮式机器人,最适合在那些人类无法工作的环境中工作,该技术可应用于无人驾驶机动车、无人生产线、仓库等领域。小车也可以作为玩具的发展对象,为中国玩具市场技术含量的缺乏进行一定的弥补,实现经济收益,形成商业价值[1]。

本设计完成以由单片机最小系统、红外遥控、智能寻迹、自动避障以及液晶显示组成的硬件模块,结合软件设计组成多功能智能小车,共同实现小车的前进、倒退、转向行驶,根据地面黑线智能寻迹,检测障碍物后转向等功能,实现智能控制。

1 智能小车硬件系统设计

小车的硬件系统主要由控制系统、驱动系统、遥控系统、寻迹系统、避障系统、显示系统和供电系统组成。

1.1 控制系统

如图1,选用具有内部看门狗的宏晶系列STC89C52RC单片机作为核心控制器件,最小系统包括单片机、MAX232串口通信电路、复位电路、上拉电阻和晶振电路(晶振为12MHz)。

图1控制系统电路图

1.2 驱动系统

本小车采用四轮驱动,驱动电机的控制由L298N来实现。L298N内部包含4通道逻辑驱动电路,可驱动46V、2A以下的2个电机。由L298N构成的PWM功率放大器的工作形式为单极可逆模式,2个H桥的下侧桥晶体管发射极连在一起。根据L298N的输入输出关系,使控制端ENA接高电平时,通过PWM信号输入端IN1和IN2可以控制电动机的正反转(输入端IN1为PWM信号,输入端IN2为低电平,电动机正转;输入端IN2为PWM信号,输入端IN1为低电平,电动机反转);当控制端ENA为低电平时,驱动桥路上的4个晶体管全部截止,使正在运行的电动机电枢电流反向,电动机停止。

电动机的转速由单片机调节PWM信号的占空比来实现。PWM即脉冲宽度调制,它是指将输出信号的基本周期固定,通过调整基本周期内工作周期的大小来控制输出功率的方法。占空比是指高电平持续时间在一个周期时间内的百分比。控制电机的转速时,占空比越大,速度越快,如果全为高电平,占空比为100%,速度达到最快。

1.3 遥控系统

红外遥控系统主要由遥控发射器、红外接收器两部分组成。红外遥控器产生遥控编码脉冲,驱动红外发射管输出红外遥控信号,遥控接收器接收发射器发出的红外信号,并完成对信号的放大、检波、整形、解调出遥控编码脉冲,输入到单片机,完成对遥控指令解码,并执行相应的遥控功能。如图3,接收器选用VS1838B,out是解调信号输出端,直接与单片机相连。利用红外遥控可代替手动开关控制小车的启动、停止、左转、右转、前进、后退等功能。

1.4 寻迹系统

在智能车系统中,红外发射管发射红外线,当红外线照射到白色地面时会有较大的反射,红外接收管接收到反射回的红外线强度就较大;如果红外线照射到黑色标志线,黑色标志线会吸收大部分红外光,红外接收管接收到的红外线强度就很弱。这样,利用红外光电传感器检测智能车行驶道路上的黑色标志线,就可以实现智能车的智能寻迹。本智能小车探测的传感器选用TCRT5000反射红外传感器,该传感器封装形状规则,便于安装。如图4,在使用约40mA的发射电流,没有强烈日光干扰(在有日光灯的房间里)探测距离能达8cm,完全能满足探测距离要求。这是一种自带发光二极管和光敏三极管的器件,当检测到黑线时,由于反射率不高,三极管截止而输出高电平。当检测到白色地面时,由于反射率较高,三极管饱和而输出低电平,从而实现了黑线的检测[3]。

1.5 避障系统

本设计采用超声波测距。超声波频率高、波长短、定向性好、能量集中,适合于距离测量,且不易受光线干扰,提高了系统的可靠性,另外,还可以对障碍物的位置进行定位[4]。通过超声波发射装置发出超声波,在发射时刻的同时开始计时,超声波在传播途中碰到障碍物就立即返回,超声波接收器收到反射波立即停止计时[5],根据时间差就可以知道距离了,这就是时间测距法(超声波在空气中的传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离s,即:s=340t/2)。超声波传感器为非接触式传感器,HC-SR04传感器测量距离为2~400cm,测量精度为3mm。避障系统包括:超声波发射器、接收器与控制电路。

1.6 显示系统

本设计采用1602液晶显示,也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块,它有若干个5×7或者5×11等点阵字符位组成,每个点阵字符位都可以显示一个字符。它具有功耗低、寿命长、显示内容多的特点,可以直接接单片机数据端使用。

1.7 小车供电系统

小车供电系统有两路:一路是VSS直流减速电机供电电源,由两块3.7V电压1200mAh容量的手机锂电池串联而成,电压在7.4V左右;另一路是VCC电路板供电电源,由VSS电源经稳压芯片7805输出5V的电压,为传感器和控制板供电。

2 智能小车软件系统设计

设计中的应用软件包括:硬件电路设计软件、程序设计软件和服务软件。

本设计使用Protel 99SE软件,绘制原理图,并生成PCB电路板,完成硬件电路软件设计;采用混合编程的方法,即高级语言C编写主程序,用汇编编写硬件有关的程序,编写源程序,并生成hex格式文件,完成程序软件设计,程序流程图如图6所示;还使用了STC-ISP-V4.83程序烧录软件和USB转串口驱动软件等服务软件。

3 结论

STC89单片机 篇7

日常生活中, 天气变化莫测, 天气预报往往不能准确预报天气状况, 给人们的出行带来极大的不便。现如今在很多超市、商场及一些公共设施也有雨伞借用等措施, 但用完还得及时归还原处或者有一定的使用条件, 给人们的使用带来了一定的麻烦。对管理者来说, 遇到一些故意不还的借伞者, 会给管理者带来一定的经济损失。如果能像公共自行车系统一样, 在各建筑群中建立雨伞借用设施, 只要刷卡, 人们就可以随时借用雨伞来应付复杂的天气, 到家门口时可以在楼道及时归还雨伞, 那将会是极大的便利。基于上述理念, 提出了基于单片机STC89C52的雨伞借用机的设计, 小范围地适用于校园区域, 便于学生和老师上下课的使用, 通过技术升级, 同样适用于各公共场所、企业和酒店等场所。

2 总体设计方案

根据雨伞借用机的功能, 它必须具有刷卡识别功能、信息读写功能、锁伞和解锁功能、报警功能。因此在硬件设计中需包括电源模块、刷卡模块、智能锁模块、单片机核心模块、报警模块。组成框图如图1所示。

系统选用STC89C52单片机作为主控制器, 选用PN532芯片作为非接触式读写芯片, 通过刷卡模块读取卡主姓名、卡号、借还车等信息, 并利用单片机STC89C52来更改借还信息, 控制电机的正反转来实现借伞还伞功能, 对于借伞还伞成功或失败等行为给以相应的声音提示。电源模块主要是为其他模块提供所需电源电压, 产生12-24V电源以及5V电源。

3 硬件设计

3.1 读卡模块

读卡模块主要采用PN532芯片, 该芯片是NXP公司推出的一款低电压、体积小、成本低、高度集成的非接触式读/写卡NFC芯片。它包含80C51微控制器内核, 集成了13.56MHz下的各种主动/被动式非接触通信方法和协议, 最远距离可达10cm。支持主机接口:SPI接口、I2C接口、串行UART, 具有灵活的中断模式。

PN532芯片采用40脚的HVQFN封装。单片机STC89C52通过PN532芯片完成对卡片内存储器的读写, 完成卡内借还车信息的实时读取。PN532复位后通过控制引脚上的逻辑电平识别微控制器指令, PN532芯片收到单片机发送的命令后, 根据非接触式射频卡协议格式通过天线及其匹配电路向附近发出一组固定频率的调制信号 (13.56 MHz) 进行读写卡片, 有HUS (全双工串行总线) 、I2C (双线式串行总线) 和SPI (串行总线) 三种通信方式可供选择[1]。本系统设计选用STC89C52作为控制芯片, 采用SPI通信方式。PN532模块电路主要由PN532芯片及其匹配天线和总线接口电路组成。

它的功能框图见图2和图3。

该模块主要实现读取卡主的姓名、卡号、借还伞等信息, 当有借还伞状态时, 实时对数据进行更新。

3.2 电子锁模块

电子锁模块主要通过步进电机的正反转来控制锁舌, 从而实现电子锁功能。

在工业控制系统中, 通常要控制机械部件的平移和转动, 这些机械部件的驱动大都采用直流电机、交流电机和步进电机。其中, 步进电机最适合数字控制。由于电子锁模块中需要靠电机转动一定的角度来开启机械锁来取出雨伞或是转动一定角度来关闭机械锁达到锁伞功能, 因此在设计中在电机选择上采用步进电机。当步进电机的驱动器收到一个驱动脉冲信号后, 步进电机将会按照设定的方向转动一个固定的角度, 可通过控制脉冲的个数控制角位移量, 实现准确角度定位。

设计中采用ULN2803来驱动单极步进电机运行, 步进电机励磁序列通过单片机STC89C52输出。ULN2803是高电压大电流达林顿晶体管阵列, 该阵列中的8路达林顿晶体管是低逻辑电平数字电路与高电压大电流设备 (如继电器、电机、灯泡等) 接口的理想器件[2]。单片机与步进电机的连接图见图4所示。

3.3 报警模块

模块主要通过有源电磁蜂鸣器发声来实现报警功能。当卡片故障或是无效卡时, 发出长报警声, 当正常借出或归还时, 发出短声。单片机I/O引脚输出的电流较小, 输出的TTL电平驱动不了蜂鸣器, 因此需要增加一个电流放大电路, 这里使用一个三极管C8550来放大驱动蜂鸣器。当单片机的P2.0引脚输出高电平时, 三极管截止, 没有电流流过线圈, 蜂鸣器不发声;当单片机的P2.0引脚输出低电平时, 三极管导通, 蜂鸣器电流形成回路, 发出声音[3]。蜂鸣器的音调不同可通过单片机引脚P2.0输出频率不同的信号来实现。报警电路的原理图如图5所示。

4 软件设计

系统软件主要完成自助借、还伞等功能, 具体流程图如图6所示。当系统刷卡机检测到有卡靠近时, 首先判断这张卡是否为通用的借伞卡, 如果是, 判断卡是否处于未借伞状态, 如果是, 则开有伞锁进行借伞扣钱, 同时锁伞检测无伞则借伞成功。如果判断卡为已借伞状态的话, 则进入还伞状态, 开无伞锁, 并检测是否有伞进入, 若有则还伞成功, 若无则不成功。当借伞超过一定时长, 借伞卡会进入锁死状态, 冻结里面的费用, 只有到数据管理中心解锁才可以继续使用, 数据管理中心负责整个系统借伞卡数据库的建立、维护和管理[4]。

4.1 步进电机程序设计

单极4相步进电机共有3种励磁方式:单4拍、双4拍、8拍。本设计中为了能够让电机转动角度更加精准, 采用8拍的励磁方式, 表1是单极4相步进电机8拍的励磁方式。

根据表1, 当步进电机正转时, 励磁序列为A->AB->B->BC->C->CD->D->DA;

当步进电机反转时, 励磁序列为AD->D->CD->C->BC->B->AB->A-。因此可把以上序列放在不同的数组中, 正转数FFW{}={0x01, 0x03, 0x02, 0x06, 0x04, 0x0C, 0x08, 0x09};反转数组REW{}={0x09, 0x08, 0x0C, 0x04, 0x06, 0x02, 0x03, 0x01}。假定步进电机的步进角为180o, 在四相8拍方式下, 每拍步进角度为90o, 每输出一遍8字节的励磁序列数组时, 电机共步进720o[2]。在实际设计时就可以根据电子锁舌的角度需要在程序中进行设置。

4.2 读写卡程序设计

读卡模块主要是识别卡片、读取卡片内的数据并对数据进行实时更改等操作。读写卡程序的流程图见图7所示。

5 总结

本系统在社会和市场上都具有一定的应用前景, 它可以解决日常生活中常见的突遇下雨无伞可借的窘境, 而且整个系统管理比较简单, 若进一步与校园卡结合, 使用起来也会更加方便快捷, 也是实现智能化校园的重要环节。

摘要:介绍了基于单片机STC89C52的雨伞借用机的设计, 基于公共自行车的设计理念, 避免了突降大雨忘带伞的麻烦, 为校园的教师、学生等出行提供了便利, 也适用于其它的公共设施。设计以单片机STC89C52为控制核心, PN532非接触式射频读写卡芯片为信息采集单元, 控制步进电机来实现伞锁的开启和闭合, 设计简单, 为校园带来人性化的学习和工作环境, 具有一定的市场应用前景。

关键词:雨伞借用机,单片机STC89C52,PN532,步进电机

参考文献

[1]王蓬, 曹卫锋, 宋寅卯, 等.基于PN532的自助收费式饮水机控制系统设计[J].物联网技术, 2016 (2) :97-99.

[2]彭伟.单片机.C语言程序设计100例-基于8051+Protues仿真第2版[M].北京:电子工业出版社, 2015.

[3]冯博, 王丽娜.项目式51单片机技术实践教程 (C语言版) [M].北京:电子工业出版社, 2015.

STC89单片机 篇8

雨棚在我们的日常生活中非常常见, 比如过街天桥上, 楼门口的上方或者庭院中等。很多住宅小区在设计时会在低层或者顶层留出私家花园的位置, 这些位置通常都会用到雨棚。还有一些楼房采用错层设计, 虽然阳台空间变得开阔, 但是由于错层, 使得阳台遮风挡雨的效果减弱, 很多住户会选择在阳台上搭建玻璃雨棚。不管是庭院的雨棚还是错层阳台的雨棚, 都起到了遮风挡雨的作用, 同时避免高空坠物带来的伤害, 从而营造一个比较舒适的家庭环境。

但是家用雨棚的清洁是一个让人困扰的问题。由于雨棚处在室外, 一方面会积攒灰尘, 另一方面还可能会有树叶, 外墙掉落的石子或者楼上无意掉落的牛奶盒、衣架、毛巾等等各种杂物, 因此以真空吸尘为核心用于室内的扫地机器人不适合用来清洁雨棚, 而人工清洁存在高空坠落的危险性。所以设计一个家用雨棚清洁系统是非常有必要的。

雨棚有很多种, 家庭用的雨棚考虑到采光和美观的问题, 很多时候会采用平面的玻璃雨棚。本研究的目的就是针对平面的玻璃结构的家用雨棚设计一个简单有效的清洁系统, 能够实现清扫, 清洁剂喷洒, 水洗等功能。

1 系统构成

第一部分是带有高压喷头的水管。水洗功能通过采用高压水流清洗来实现。高压水流的应用跟高压水流清洗机的原理一样, 通过动力装置使得高压柱塞产生高压水流来冲洗物体表面[1]。高压水流的控制通过人工控制, 当用户要对雨棚进行清洁时, 打开控制相应的开关, 高压扇形喷头开始喷出高压水流。

第二部分是清洁小车。以遥控履带小车[2]作为清洁功能实现的载体, 小车上载有用来装清洁剂的水箱和喷洒清洁剂装置以及用来清扫的刷子。小车的控制和驱动分别通过STC89C52RC单片机[3,4,5]和L298N驱动动电路来实现。清洁装置部分包括清洁刷和清洁剂喷洒装置。清洁刷由一个电机带动;清洁剂自动喷洒装置由一个喷水电机、一个装清洁剂的水箱构成, 这两个电机同样由L298N模块来驱动。

2 清洁系统硬件电路设计

系统的硬件电路主要包括四个模块, 清洁小车驱动模块, 清洁刷驱动模块和清洁剂喷洒控制模块以及遥控模块。

2.1 小车运动驱动电路

遥控小车的运动是通过两个直流电机的正转反转来控制, 本系统采用的是12V直流电机, 通过L298N驱动模块来驱动。L298N驱动模块的供电电源为5V标准电压, 驱动电路有4个输入端和4个输出端。一台电机有2个输出端去控制, 一个驱动模块可以供两台电机去使用。单片机的P1.0-P1.3, 4个端口为输出控制信号口, 通过驱动电路连接到电机上, 驱动模块通过对控制信号高低电平的判断做出相应的反应来控制电机的正转、反转或者停止。

2.2 清扫刷和清洁剂喷洒装置驱动电路

清洁装置是由12V直流电机和清洁刷组成, 电机为清洁刷提供动力去洗刷雨棚;清洁剂喷洒装置由一个喷水电机和一个小水箱组成。同样使用一个L298N驱动模块来驱动这两个电机运动。清洁刷电机转动时, 带动清洁刷转动, 完成刷洗雨棚的功能;清洁刷电机停止时, 清洁刷完成清扫功能, 可以将雨棚上的杂物归集。喷水电机的工作状态只有两种, 正转和停转, 正转时喷洒清洁剂, 停转时待命。电机的转速是由电压高低控制的, 本系统采用PWM技术来控制电压的高低来实现电机的转速。

2.3 电源模块

本系统采用一个12V的锂电池, 所有的直流电机都采用12V, 单片机和电机驱动模块都是5V。单片机的工作电压为5V, 而遥控小车上的两路电机的工作电压为12V, 需要用到降压模块把12V的电压降为5V输出到单片机, 供单片机和驱动模块去使用。而12V的电机则不需要降压, 直接连接到到12V的锂电池就可以正常工作。

2.4 无线通信模块

本系统的无线通信通过蓝牙实现, 分为两个部分, 遥控部分和智能控制部分, 如图2所示。遥控部分是一台支持蓝牙功能的Android智能手机和安装在小车的蓝牙模块。Android系统的蓝牙开发主要的类别有三种, Bluetooth Device, Bluetoothsocket, Bluetooth A-dapter, 调用这几类可以实现蓝牙设备的基本操作[7]。智能控制部分系统由三部分组成:蓝牙通讯模块、STC89C52RC单片机、电源部分的电路。

在Android应用程序中每个功能键分别用一个固定的指令, 在下位机控制程序里面把对应的指令写到相应的功能程序了。在Android应用程序上位机中按下一个功能键, 就会经过手机内置蓝牙模块和智能控制中的蓝牙模块把该指令发送到单片机中, 单片机把该指令识别、判定出来, 然后发出控制信号调用下位机控制程序对应该指令的那部分程序, 运行这部分的功能。通过蓝牙控制系统中小车载体的运动, 清扫刷的清洗的快慢, 清洁剂喷洒开启或关闭。

3 系统的软件设计

本系统的软件主要分为两个部分, 一部分为手机遥控软件, 也就是Android应用程序上位机这一部分;另一部分为单片机程序设计部分, 也就是下位机控制程序这部分。

3.1 手机遥控软件设计

本系统是利用Android系统手机来操控的。蓝牙技术以及发张比较成熟, 我们可以直接下载一个蓝牙串口通讯助手软件, 这个软件已经具备了较为完整的功能, 基本框架的程序已经写好, 只需要把这个软件的界面上的功能键改成自己需要的功能键。

图3为蓝牙串口通信界面, 在此界面上有12个功能键, 我们把其中多个功能键改为本系统需要用到的功能键指令, 每个功能键写入了相关的控制指令如, 如图3所示所示。功能键与指令字符对应关系如表1所示。

按下相关的功能键, Android应用程序就会经过蓝牙模块发送相关的指令字符给单片机, 然后做出相应的运动[9]。其数据发送的流程图如图4所示。

3.2 单片机程序设计

本系统是采用STC89C52RC单片机作为控制器的, 采用C语言来编写程序。整个程序由初始化程序、小车电机程序、清扫电机程序、喷水电机程序考核串口通信程序组成。

小车、清扫、喷水电机程序, 本程序把单片机P1.0-P1.7八个端口定义为控制4个电机的控制端口。

单片机是要接收到上位机的控制指令才能发出相应的控制信号去控制相关的硬件, 图5是单片机程序设计流程图。

4 测试及结果分析

为了测试清洁雨棚系统的清洁效果, 我们选择在一个接近一年没有进行任何清理的雨棚上进行测试。我们的清洁小车配合高压水流冲洗基本可以完成预期的清扫功能并达到预期的清洁效果, 如图。但是仍存在一些问题, 小车的电机动力匹配稍差, 需后续调整;另外清洁刷的材料和形状也会影响的清洁效率, 目前搭配的清洁刷, 清洁效率较低。

5 结论及展望

本文针对处于室外环境的平面玻璃雨棚做出了以STC89C52RC单片机为核心的清洁系统设计方案, 并进行了测试, 基本可以完成预期的功能并达到预期的清洁效果。在后续的工作中, 还需要对系统进行优化和调整, 例如加入避障和防跌落模块等[6], 以达到完全自动化的实用的状态。

摘要:很多家庭庭院或者错层阳台都会用到雨棚, 享受雨棚的便利的同时, 雨棚的清洁也变成一个问题。由于雨棚处在室外环境中, 适合室内清洁用的扫地机器人不适用于雨棚。本文针对家用的平面玻璃雨棚给出清洁系统的设计方案, 系统以单片机STC89C52RC为核心控制清洁小车完成清洁功能, 并配合高压水流冲洗。经过测试, 本系统基本可以实现预期的功能并达到预期的清洁效果。

关键词:雨棚清洁系统,单片机,家用

参考文献

[1]杨桂林.基于AT89S52的智能小车的设计[J].微计算机信息, 2010 (20) :124-125.

[2]宿月文, 朱爱斌, 朱渭, 谢友柏.履带内摩擦分析以及对整机牵引性能影响的研究[J].第八届全国摩擦学大会论文集, 2007:63-64.

[3]叶郑凯, 朱建鸿, 李琳, 王幼琴.基于单片机的无线遥控智能小车的设计与实现[J].计算机与现代化, 2012, 10 (206) :65-67.

[4]戴圣伟, 陈白帆, 范绍成.无线遥控智能车的控制研究[J].控制技术计算机测量与控制, 2011, 19 (9) :2125-2127.

[5]陈海松, 李益民.基于AT89C51单片机的智能避障遥控机器人的设计[J].黄石理工学院学报, 2011, 27 (3) :9-12.

STC89单片机 篇9

本电路由电源模块、无线遥控模块、超声波模块、液晶显示模块、驱动模块、单片机控制模块等组成。系统结构图如图1所示:

2 硬件电路设计

2.1 电源设计

如果在系统中采用9V干电池供电, 使用稳压块降压成5V电源供电, 稳压块功率损耗较大, 电路比较笨重, 增加小车的自重。所以采用四节1.5V干电池供电, 通过二极管降压给电路供电, 功耗低, 电路简单。

2.2 无线控制设计

如果在系统中采用无线电信号。金属外壳对无线信号有屏蔽作用, 另外这样信号容易受到干扰。所以采用红外光信号进行控制。这种方式抗干扰能力强, 设备简单, 造价低廉, 方向性好。

本系统的设计采用HS0038红外接收头来接收红外信号, 红外遥控是利用红外线进行传递信息的一种控制系统, 红外遥控具有抗干扰, 电路简单, 编码及解码容易, 功耗小, 成本低的优点。电路如图2

2.3 超声检测

超声检测采用DYP-ME007V2, 通过编程来实现超声波模块。超声波的距离、时间计算:超声波的速度大概是340m/s, 那么1us能发射约0.034cm, 再测出往返一次的时间, 乘上发射的速度, 除以2就是所求得的距离。

2.4 显示模块设计

如果在系统中采用数码管显示。优点是应用传统广泛简单, 易于实现。但是, 不容易以坐标的格式显示小车位置。在系统采用1602液晶显示。它是两行每行能显示40个字符, 显示功能强大, 能够以标准的坐标格式显示。

2.5 驱动电路设计

“H桥”驱动电路, 在工作中如果管子关短瞬间的自感电压通过二极管续流。另外在基极防干扰处理保证足够的死区时间, 能方便的通过程序控制实现小车前进、倒退、转向等各种运行状态。实用经济, 降低工作成本。电路如图3所示。

3 软件设计

系统的软件设计采用C语言对单片机进行编程, 从而实现各模块的功能, 主程序主要是控制电路的选择、各参数的检测与控制。程序流程图如图4所示。

4 小结

繁重的驾驶工作和驾驶人员的疲劳是交通事故频发的主要原因, 车辆在交通拥挤的市区行驶使驾驶人员必须完成大量的换挡和踩离合器的工作。随着经济的发展, 车辆的拥有量的增加, 非职业驾驶人员人数的增多, 同样导致交通事故频发。因此, 如何提高交通安全性已经成为急需解决的社会性问题。各种能减轻驾驶劳动强度的智能系统应运。本系统就是在这种背景下产生的。并且在本系统的设计中, 将集成化和智能化理念较好的融入到控制系统的设计中, 有很强的使用价值和经济价值。

参考文献

[1]孙福成.单片机原理及应用[M].西安:西安科技大学出版社, 2006.

上一篇:正电子放射性药物下一篇:分组分层论文