单片机S52使用手册
AT89S52 单片机开发板实验手册 说明书
AT89S52单片机开发板实验手册概述:AT89S52多功能单片机开发板特点:1. 板载资源丰富,常见的控制对象基本已经包括.2. 采用在系统方式(ISP)编程,通过下载电路下载程序,不用烧录器即可下载程序,调试方便.3. 可由直流稳压电源或通过USB数据线供电.按键保持的电源开关,连接线路时只用按一下即可断开电源.扩展了若干个电源接口,板上电源可以外接给其他电路板使用.4. 所有板上资源均用排针引出,可方便用ARM,DSP或其他控制器控制.5. 红外发射/接收 ,PS/2接口接入键盘,时钟芯片,数字温度计测温等模块的程序编成了子函数,已经模块化,工程应用需要时可以直接调用.6. 配套光盘提供程序,常用软件(编译软件,烧录软件,字模提取,串口上位机软件,C语言所有库函数等),视频教程(主要为计算机屏幕操作的录像),开发板用户手册,原理图,器件 Datasheet等.配套提供的所有程序均可直接运行,注释已经尽量详细,能满足从单片机 入门到进阶的需要.7. 基于以上各模块,提供了综合应用的实例,即:可通过PC机键盘或通过红外发射进行控制的电子万年历等.(具体见实验介绍).本开发板含有如下功能模块:01. 流水灯 (控制8个超亮LED闪烁)02. 方波,PWM信号输出03. 按键中断04. 四位数码管动态显示05. 计数脉冲信号并显示06. 报警与音乐演奏07. 4×4键盘扩展08. 看门狗+上电自动复位+手动复位+电源监控09. 128*64点阵式液晶显示 (可显示画面和文字等)10. RS232串行通讯 (单片机通过串口与PC机进行通讯,板上数码管和上位机软件均可显示通讯的数据,提供上位机软件)11. 红外信号发射与接收 (单片机控制红外二极管发射红外信号并接收信号,也可以通过遥控器发射,单片机控制接收信号并处理)12. 温度测量13. I2C接口的E2PROM (AT24C08,8K容量,可用于断电时存储数据等场合,单片机软件模拟I2C总线协议与之通讯)14. 时钟芯片 (扩展时钟芯片以获取年/月/日,当前时间,星期等信息)15. PS2接口 (可外接PC机的键盘做系统的输入)16. 可通过键盘/红外遥控控制的电子万年历 (液晶屏显示年/月/日,当前时间,星期,闹铃定闹的时间,倒计时状态等;可以修改闹铃时间和倒计时的起始时间;可显示环境温度;可通过PS/2接口接入键盘或通过红外发射来校正时间,开/关闹铃等.)实验注意事项:1. 板上扩展有两个电源接口(接线柱),正负极已经标出,外接时极性不能接反.2. 通电时,最好不要用手拿着电路板,防止短路;接线时最好断开电源(开关为J1).3. 调试出现故障注意查看复位电路是否接入(最好直接接上上电自动复位电路(即J14中将上电自动复位端和复位端用短路冒短接,接好后还可以通过S17手动复位),看门狗复位可以在后面再接入).4. 下载程序时单片机P1.5,P1.6,P1.7三个脚禁止接到功能模块,否则会影响程序下载.程序比较大时,5K,6K或以上的代码时,下载可能比较慢,如果下载失败,一般重试一次即可成功下载.5. 由于并口的影响,断开电源时可能发光LED也有微弱发光,为正常现象.6. 程序以光盘中程序目录下的为准.7. 数码管和液晶不能同时接入系统,否则任一部分都不能正常使用.编程软件和烧录软件等的使用见视频教程.如有疑问可到论坛发帖.实验目录(Ⅰ)基本实验1. 流水灯-------------------------------------------------------------------------------------------42. 方波-PWM信号输出 --------------------------------------------------------------------------63. 按键中断----------------------------------------------------------------------------------------84. 四位数码管动态显示-------------------------------------------------------------------------105. 计数脉冲信号并显示-------------------------------------------------------------------------126. 报警与音乐演奏-------------------------------------------------------------------------------137. 4×4键盘扩展----------------------------------------------------------------------------------138. 看门狗+上电自动复位+手动复位+电源监控----------------------------------------------149. 128*64点阵式液晶显示 ------------------------------------------------------------------1410. RS232串行通讯------------------------------------------------------------------------------1511. 红外信号发射与接收-------------------------------------------------------------------------1612. 温度测量---------------------------------------------------------------------------------------2313. I2C接口的E2PROM--------------------------------------------------------------------------2314. 时钟芯片---------------------------------------------------------------------------------------2415. PS2接口---------------------------------------------------------------------------------------24(Ⅱ)综合实验16. 可调式电子万年历-------------------------------------------------------25 综合应用的实例会不断添加,敬请关注我们的网站.(Ⅰ)基本实验1.流水灯实验内容:利用单片机I/O口输出高低变化的电平,控制流水灯按程序设置的功能闪烁.接线说明J7接入单片机P0口.注意:单片机端口有两种操作方式,一种是写端口,如 P0=0xff; 另一种是读端口,如if(P0==0xff) ,即读I/O口P0的状态,值为0xff 时满足条件.程序清单:/***************************************************************函数功能: 控制8个流水灯闪烁接线说明: 流水灯接线柱接到P0口学习内容: 单片机IO口(输入/输出)的应用整理时间: 2006-10 ****************************************************************/#include<reg52.h>delay(int k); //延时函数预定义main(){int i;int data1=0x7f;int data2=0xfe;while(1){int abb=0xfe; //变量abb赋初值for(i=0;i<8;i++){P0=abb;delay(1000); //延时1秒abb=abb<<1; //8个灯依次点亮}P0=0xff; //8个灯均灭delay(1000);abb=0x7f;for(i=0;i<8;i++){P0=abb;delay(1000);abb=abb>>1; //8个灯换个方向依次点亮}P0=0xff; //8个灯均灭delay(1000);P0=0x00; //8个灯均灭delay(1000);P0=0xff; //8个灯均灭delay(1000);}}delay(int k) //延时函数,大致延时K毫秒{int d,n;for(d=0;d<k;d++){for(n=0;n<125;n++){;} //由经验值,12M晶振时大概的延时时间(延时1ms) }}2.方波输出<1>. 利用板上NE555组成振荡器产生方波.占空比及周期可以通过相关电阻,电容的数值计算得出.(线路已经接好,上电后L2即开始闪烁)<2>. 通过单片机定时器产生方波通过设定定时器的定时值,计数值满时溢出产生中断,在中断服务程序中使相应管脚输出电平反相,从而产生方波信号.接线说明:单片机P1.2接到流水灯上(J7)的任意一个程序清单:/*********************************************************************** 函数功能: 利用内部定时器输出方波控制流水灯接线说明: P1.2接到流水灯上(J7)的任意一个学习内容: 单片机内部定时器/计数器的应用编程思想: 单片机内部定时器最大定时值不超过一秒, 可以用累加的方式增加定时时间整理时间: 2006-10 ***********************************************************************/ #include <reg52.h>int time=0;sbit P1_2=P1^2; //定义控制脚void timeout1() interrupt 1 using 2 //定时器0的中断服务程序{if(++time==100) //延时100*10ms(即1秒)时输出反向{P1_2=~P1_2;time=0;}TH0=(65536-10000)/256; //重装数据,延时10msTL0=(65536-10000)%256;TR0=1;}main(){TMOD=TMOD&0xf0|0x01; //定时器0工作在方式1EA=1;ET0=1;TH0=(65536-10000)/256; //延时10msTL0=(65536-10000)%256;TR0=1;while(1){;}}<3>.单片机输出PWM波形输出PWM信号的原理与产生方波大致一样.设定一个数组,存入不同的延时值,定时器装入初值,溢出后产生中断,在中断服务取出数组中的定时值赋给定时器的数据寄存器 , 从而产生PWM波形.高低电平的维持时间有数组的值决定.接线说明:单片机I/O口P1.0接到流水灯上的任意一个.程序清单:/*******************************************************************函数功能: 利用内部定时器输出PWM信号控制流水灯接线说明: P1.0接到流水灯上的任意一个学习内容: 单片机内部定时器/计数器的应用编程思想: 输出低电平1000微秒,高电平15000微秒(12M的晶振时),可应用于电力电子技术中升压斩波电路等做IGBT的触发信号等.整理时间: 2006-10 *******************************************************************/#include <reg52.h>sbit P1_0=P1^0; //定义变量P1_0代表I/O口P1口的0脚bit i=0;int tab[2]={1000,15000};void timeserver() interrupt 3 using 3 //定时器1中断服务程序{P1_0=~P1_0; //输出取反i=~i;TH1=(65536-tab[i])/256;TL1=(65536-tab[i])%256;TR1=1;}main(){P1_0=0;TMOD=TMOD&0x0f|0x10; //不改变定时器0的工作状态,定时器1工作于方式1 TH1=(65536-tab[i])/256; //定时器存入初值TL1=(65536-tab[i])%256;EA=1; //CPU开中断TR1=1; //定时器1开始工作while(1){;} //等待定时器中断}3.按键中断通过设定单片机中断的形式,如下降沿产生中断或低电平产生中断.按键输入低电平到相应中断输入管脚,单片机识别出中断信号,如果CPU和相应外部中断使能有效(即EA---CPU中断使能位,EX0,EX1---外部中断使能位),则进入中断服务程序.接线说明:中断按键的线路已经连接好,不用另外接线. 数码管用跳线冒接入(即AA连接到P0.0,BB 连接到P0.1依次接入,CON1…CON4分别接到P2.7……P2.4)程序清单:/****************************************************************函数功能: 利用内部中断控制数码管显示接线说明: 数码管用跳线冒接入学习内容: 单片机中断(外部)的应用编程思想: 单片机识别出中断0或中断1就转向中断服务程序整理时间: 2006-10 *****************************************************************/#include <reg52.h>bit flag1=0,flag2=0;void service_int1() interrupt 0 //外部中断0的中断服务程序,0为中断源序号,2为//使用的寄存器(可更改){flag1=1; //允许数码管显示数据}void service_int2() interrupt 2 //外部中断1的中断服务程序{flag2=1; //允许数码管显示数据}void delay() //延时程序{int j;for(j=32400;j>0;j--){;}}void main(){EX0=1; //开外部中断EX1=1;EA=1; //开CPU中断P0=0x00;P2=0xff;IP=0x04; //设置中断优先级,外部中断0的级别设为最高,外部中断1和其他中断同级//不设优先级则按单片机硬件决定while(1){P0=0x00;P2=0xff;if(flag1==1){P0=0xd5; //显示 3P2=0x00;flag1=0;delay();}if(flag2==1){P0=0xdb; //显示 6P2=0x00;flag2=0; //清除显示使能delay();}}}4. 四位数码管动态显示数码管每个显示数字共用数据线(8根线),每个分别有一个使能管脚,显示数据采用隐消的编程方法,即每一位显示一段时间再轮换.接线说明:数码管用跳线冒接入(即AA连接到P0.0,BB连接到P0.1依次接入,CON1…CON4分别接到P2.7……P2.4).数码管何液晶不能同时接入系统,否则任一部分都不能正常使用.程序清单:/************************************************************************* 函数功能: 数码管数值动态显示接线说明: 用跳线冒接入数码管学习内容: 常用的输出显示器件的编程应用编程思想: 用隐消的方法实现数码管的动态显示,显示部分整理成库文件,方便以后直接应用整理时间: 2006-10 *************************************************************************/ #include <reg52.h>#include <LED8888.h> //调用封装好的显示库函数main(){int j,k;k=1286; //显示值,实现数值累加显示while(1){for(j=1;j<70;j++){Led(k); //数码显示}k+=1;}}以下为 LED8888.hchar shuju[10]={0x5f,0x44,0x9d,0xd5,0xc6,0xd3,0xdb,0x45,0xdf,0xd7}; //数码管显示数字0-9void led8888_Delay(int j) //延时函数{int m;for(m=0;m<j;m++){i;intfor(i=0; i<300; i++){;} //约1ms}}void Led(int k){if(k>999){P2=P2&0x7f; //P2.7输出低电平,选通千位数P0=shuju[k/1000]; //取千位数led8888_Delay(2); //延时P2=P2|0xff; //销隐}if(k>99){P2=P2&0xbf; //P2.6输出低电平,选通百位数P0=shuju[k%1000/100]+0x20; //取出百位数,点亮数码管百位后的那一点led8888_Delay(2); //延时P2=P2|0xff; //销隐}if(k>9){P2=P2&0xdf; //P2.5输出低电平,选通十位数P0=shuju[k%100/10]; //取十位数led8888_Delay(2); //延时P2=P2|0xff; //销隐}if(k>=0){P2=P2&0xef;P0=shuju[k%10]; //取出个位数led8888_Delay(2);P2=P2|0xff;}}5. 计数脉冲信号并显示利用单片机计数器功能,计数外部输入的脉冲信号,计算得出频率值.接线说明:FIN接入单片机I/O口P3.5.数码管接入程序清单:/********************************************************************** 函数功能: 计数外部(555电路)的脉冲接线说明: FIN接入单片机I/O口P3.5.学习内容: 单片机内部定时器/计数器的应用整理时间: 2006-10 **********************************************************************/ #include <reg52.h>#include <LED8888.h>int count=0; //显示值赋初值main(){TMOD=0x55; //计数器1工作在方式1TL1=(65536-5)%256; //设置初值,计数4次后产生定时/计数器中断TH1=(65536-5)/256;TR1=1; //启动计数器EA=1; //开CPU中断,不开中断也行,没有用到计数器中断 ET1=1;while(1){count=TL1; //显示当前计数值Led(count);}}6. 报警与音乐演奏通过单片机内部定时器,输出频率改变的信号给讯响器电路,并改变节拍即可产生音乐.程序参见光盘部分.接线说明:NC接到单片机I/O口P1.27. 4×4键盘扩展原理:采用矩阵扫描的形式, 识别按键,然后转入相应处理,程序参见光盘部分.接线说明:接线柱J16接到单片机P1口.(J16的第一个脚对应接P1.0),数码管接入.8. 看门狗+上电自动复位电路+手动复位电路+电源监控外部看门狗: 采用MAX813L,程序跑飞时可以强制复位,相当于一个定时器,有一个设定的计数值,计数没有溢出之前将其计数值清零,然后重新计数,这个过程即:”喂狗”,如果在计数溢出之前没有清零,则计数器溢出,从而产生强制复位信号.工业控制干扰大的场合必用看门狗电路防止出现意外事故.附带功能:电源检测功能,当电源电压低于门限值时相关引脚电平跳变,可以输入到单片机中断口,使单片机保存数据等. 程序参见光盘部分.接线说明:NF接到P3.2,NG接到P1.4,J14中将看门狗输出与复位脚用短路冒短接起来。
基于STC89S52单片机的窗户控制系统
基于STC89S52单片机的窗户控制系统作者:***来源:《科技风》2021年第22期一、硬件構成和介绍(一)单片机的选择本系统所选取的单片机是经典的STC89S52,该单片机带8K字节闪烁可编程可擦除,具有价格低廉、速度快的特点,支持ISP下载的功能,在各个领域应用比较广泛。
本单片机芯片工作电压为+5V,体积小,运行稳定。
图1是该芯片的引脚图。
其中VCC接5V电源正极,GND接地,这是单片机工作的基本条件。
XTAL1和XTATL2外接12M的晶振,同时在晶振两端与地之间并联两个大小相同的谐振电容C1和C2,该电路能为单片机提供基本的工作频率。
(二)液晶显示模块简介本系统选取的温度显示模块为1602字符型液晶.可以用来显示中文、数字、标点符号,它是由若干个点阵字符位组成,每个点阵字符位都可以显示一个字符,每行之间都有间隔,使显示的字符样式更加美观。
如图2所示,和单片机类似,VCC是液晶屏的+5供电脚、GND是接地脚、VCC和GND可以并联一个滤波电容,保证供电的稳定。
BG VCC和BGGND是背光供电的供电脚,4脚RS是命令/数据选择引脚,连接到单片机的P15脚:5脚RW为读/写模式选择引脚,连接到单片机的P16脚:6脚执行命令的使能信号,连接到单片机的P17脚。
DBO~DB7是数据引脚。
分别连接到单片的P00~P07脚。
(三)温度传感器介绍DS18820是常用的数字温度传感器,具有体积小,硬件功耗低,抗干扰能力强,准确性高的特点。
如图3所示,这是DS18820的引脚图,GND是接地端,VDD是电源端,I/O直接连接到单片机的P20脚,同时外接一个4.7K欧的上拉电阻。
当测温元件感知到外界温度以后,会向总线传递数据。
通过单片机采集数据,再进行转换,就可以反映出外界的温度。
(四)雨滴传感器介绍这里选用一款常用的雨滴传感器,型号是YL-83。
图4是该元器件的引脚图。
总共有四个引脚,其中A0脚是模拟信号输出引脚,能输出感应板沾了雨后的模拟电压值:D0脚是数字信号输出引脚,该传感器有一个可调电阻,这个可调电阻可以限定一个固定的值,当模拟电压超出该值时输出1,低于该值时输出0:GND脚接电源负极;VCC脚接电源正极。
at89c51单片机对应高低电平的电压值
高电平指的是和你电源电压相等的为逻辑1。
0V表示逻辑0就是说你40脚和20脚之间的电压这个值就是 IO输出高电平值,作为输入的时候,电压在2。
8V以上都认为是高电平。
可以兼容3。
3V系统。
底电平一般在0。
8V以下。
不同的器件会有不同的标准。
A T89S521 主要性能l 与MC S-51单片机产品兼容l 8K字节在系统可编程F lash存储器l1000次擦写周期l 全静态操作:0H z~33H zl 三级加密程序存储器l 32个可编程I/O口线l三个16位定时器/计数器l八个中断源l 全双工UART串行通道l 低功耗空闲和掉电模式l掉电后中断可唤醒l看门狗定时器l双数据指针l 掉电标识符功能特性描述AT89S52是一种低功耗、高性能CM OS8位微控制器,具有8K在系统可编程Flas h 存储器。
使用At mel 公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。
片上Flas h允许程序存储器在系统可编程,亦适于常规编程器。
在单芯片上,拥有灵巧的8 位C PU 和在系统可编程Flas h,使得A T89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
AT89S52具有以下标准功能: 8k字节Flas h,256字节RAM,32位I/O口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。
另外,AT89S52 可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。
空闲模式下,C PU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
89s52上机指导书
一、单片机的历史1.1 单片机的由来:从1971年微型计算机问世以来,由于实际应用的需要,微型计算机向两个不同的方向发展:一个是向高速度、大容量、高性能的高档微机方向发展;而另一个则是向稳定可靠、体积小和价格廉的单片机方向发展。
但两者在原理和技术上是紧密联系的。
1.2单片机的名称:单片机因将其主要组成部分集成在一个芯片上而得名,具体说就是把中央处理器CPU,随机存储器RAM,只读存储器ROM、中断系统、定时器/计数器以及I/O接口电路等主要微型机部件,集成在一块芯片上。
虽然单片机只是一个芯片,但从组成和功能上看,它已具备有了计算机系统的属性,为此称它为单片微型计算机SCMC,简称单片机。
1.3 单片机的发展1971年微处理器的研制成功,不久后就出现了单片的微型计算机即单片机,最早的单片机是一位的。
现在已经发展到32位。
1976年INTEL公司推出了8位的MCS—48系列单片机,它以体积小、控制功能全、价格低廉等特点受到广泛的应用和好评。
其后,在MCS—48成功的刺激下,许多半导体芯片商研制自己的产品。
到80年代末,世界各地已经相继研制大约50多个系列300多个品种的单片机产品。
其中Motorola公司的6801、6802,Zilog 公司的Z-8系列,Rockwell公司的6501、6502等。
从开始的一位机到现在的32位,单片机以惊人的速度向前发展。
1.4单片机的应用领域单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴:1.在智能仪器仪表上的应用。
单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。
2.在工业控制中的应用。
单片机可以构成形式多样的控制系统、数据采集系统。
3.在家用电器中的应用。
单片机S52使用手册
S52开发实验板使用说明书欢迎使用本公司的S52开发实验板首先很感谢您选择本公司的这款产品,我们也尽量帮助你早日成为单片机高手,因为此板是根据多年经验;大量客户反馈而开发的学习实验板,部分模块独立,方便任意I/O口连接,大大增加了学习和应对实验电路的兼容性,真正学到一些知识。
当然这样的板也有弊端就是每实验独立模块要使用杜邦线连接,有些心急的买家可能会嫌麻烦;有部分对硬件不熟悉的客户可能感觉困难,但是在这里告诉大家,以后工作也会接触到硬件,与其以后用的时候发难还不如现在就接触这些东西,养成软硬一起抓的习惯,这对以后工作;或者独立开发项目都有很大的帮助。
声明:手册只针对S52开发板,因为作者水平有限难免有错误或者疏漏之类,欢迎指正。
但光汇科技不承担任何的因为手册错误而造成的任何损失!实验板已经安装了保险电阻,且有外接电源时自动切断USB供电电路,但这样也不能保证外接电源是保证100%没有问题,所以在这里建议尽量使用USB供电,实验板的电流最大电流在300MA左右,使用USB供电不会对电脑产生任何的不良。
实验板外接接口功能介绍:P0插针:单片机P0口外接输出端,双排16位,没个I/O口都有两个外接插针板上丝印文字代表了单片机真实的脚位。
P1插针:单片机P1口外接输出端,双排16位,没个I/O口都有两个外接插针板上丝印文字代表了单片机真实的脚位。
P2插针:单片机P2口外接输出端,双排16位,没个I/O口都有两个外接插针板上丝印文字代表了单片机真实的脚位。
P3插针:单片机P3口外接输出端,双排16位,没个I/O口都有两个外接插针板上丝印文字代表了单片机真实的脚位。
P4插针:可以换晶震圆排母P5插针: 电源输出端P6插针: 单排8位LED发光管接口,P7插针:AD电压实验内部电压外部电压选择端。
P8插针:D1302时钟芯片信号外接端P9插针:步进电机信号输入端P10插针:步进电机信号输入口,1脚对应输出脚的A,2脚B,3脚C,4脚D P11插针:51/AVR复位选择端P12插针:ISP下载接口P13插针:4位独立键盘接口P14插针:18B20信号输出口P15插针:红外遥控信号输出口温心提示:本板已经集成了USB转串口芯片PL2303,可以直接使用USB下载数据,不需要另外购买USB转232线等,也不需要外接电源,实验只需要一条USB线就可以同时给单片机供电下载数据两种功能。
基于STC89S52单片机智能交通灯控制系统的设计与制作及应用
STC89S52单片机智能交通灯控制 系统的应用
在应用方面,我们将该智能交通灯控制系统安装在了某城市的交通要道上。通 过实时采集车辆和行人的信息,根据交通灯时序控制算法控制交通灯的时序, 实现了对交通流量的有效调控。同时,我们还通过无线通信模块将交通灯的运 行情况实时传输到城市交通管理中心,方便管理人员对整个城市的交通状况进 行监控和调度。
智能交通灯控制系统在国内外的 研究现状
智能交通灯控制系统最早出现在20世纪90年代,经过多年的发展,已经在国内 外得到了广泛应用。目前,该系统的实现方式主要有两种:一种是基于嵌入式 系统,通过传感器采集车辆和行人的信息,然后通过预先设定的算法控制交通 灯的时序;另一种是基于计算机控制系统,通过监控摄像头采集交通流量信息, 然后通过中央控制系统对交通灯进行实时控制。
未来的研究方向可以包括提高系统的自适应性、降低对传感器的依赖程度、综 合考虑行人和非机动车的需求等方面。
参考内容
一、引言
随着社会和经济的快速发展,城市交通问题日益凸显,如交通拥堵、安全事故 等。为了改善这些问题,智能交通系统逐渐被引入到城市交通管理中。其中, 智能交通灯控制系统作为智能交通系统的重要组成部分,对于提高交通效率、 确保交通安全起着至关重要的作用。本次演示将介绍一种基于STC89C52单片 机的智能交通灯控制系统的设计。
三、系统软件设计
本系统的软件设计采用C语言,主要包括以下几个部分:
1、初始化程序:在系统上电后,首先进行硬件初始化,包括单片机的时钟、 I/O口等 单片机通过I/O口读取这些数据。
3、信号灯控制程序:根据采集到的交通数据,单片机通过信号灯控制模块控 制交通信号灯的灯光时序。例如,当检测到车辆较多时,单片机将延长绿灯时 间;当检测到行人较多时,单片机将延长红灯时间。
基于STC89S52单片机开发板的功能设计与应用
广西大学行健文理学院单片机应用综合实验报告题目:基于STC89S52单片机开发板的功能设计与应用学部:理工学部班级:电气092班姓名:学号: 0938170214指导教师:撰写日期: 2012年4月目录第一章课程设计要求及功能说明 (1)1.1课程设计要求 (1)1.2课程设计电路及功能说明 (2)第二章程序设计及结果分析 (3)2.1程序设计思想 (3)2.2调试析及问题解答 (3)单片机综合应用实验设计总结 (6)第一章课程设计要求及功能说明1.1课程设计要求用四位数码管实现分计时,显示分秒,可以任意设置时间。
1.2课程设计电路及功能说明1.2.1设计电路(见下图)1.2.2功能说明本作品四位数码管显示分计时,显示分秒;四位数码管显示分倒计时,显示分秒。
四个独立按键(S1、S2、S3、S4)进行功能控制。
S1为功能转换按键,按下一次为倒计时功能,按下两次为计时功能。
S2、S3为计时与倒计时设置时间按键,S2每按下一次秒加1,S3每按下一次秒减一,S4为计时与倒计时开始于暂停按键。
另有蜂鸣器报警,设置时间时,每按下一次功能按键,蜂鸣器响一次;倒计时功能下,当计时少于10秒时,蜂鸣器报警。
电路原理图:第二章程序设计及结果分析2.1程序设计思想计时器的基本功能是计时与倒计时,由按键控制计时与倒计时功能的切换以及计时、倒计时的计数初值,数码管予以显示。
通过程序把按键输入的命令给程序中修改时间函数,函数对按键做出反应并判断,进行功能的转换,计数初值的修改以及启停,利用中断进行高精度计时与倒计时,。
当按键输入不正确时,函数不做任何反应,保持计时倒计时的正常进行以及保证功能的稳定性。
2.2调试结果分析及问题解答由于是利用开发板进行的程序设计,没有涉及到硬件的制作,所以在此测试硬件不在赘述。
程序的编辑在Keil uVision4中进行,当编辑好后,我们可以运行链接一下,有错误必须修改,如程序格式错误、语法错误、括号不匹配等,一般的语法错误还是很容易排除的,关键难的是找出逻辑错误,我们可以进入软件提供的DEBUG选项来调试,可以单步运行也可以设置中断点,由此我们可以看出程序运行的步骤和过程,也可以看到左边框的REGISTER 选项有个寄存器在运行中值得变化情况,以便我们分析程序运行的具体情况,一般调试没错误我们就可以把程序编译生成16进制文件,由下载软件下载到单片机中验证,如没有得到想到的结果,继续修改程序,继续下载,直到调试到正确的结果为止。
基于STC89S52单片机开发板的功能设计与应用
目录第一章课程设计要求及功能说明 (1)1.1课程设计要求 (1)1.2课程设计电路及功能说明 (1)第二章程序设计及结果分析 (3)2.1程序设计思想 (1)2.2调试结果分析及问题解答 (1)单片机及通信接口设计课程设计总结 (6)第一章课程设计要求及功能说明1.1课程设计要求跑马灯。
设计要求:“123456”6个数字由右边进入1602液晶显示器模块,再由左边走出LCD模块,连续不断。
1.2课程设计电路及功能说明1.2.1设计电路1602液晶显示器电路LCD1602引脚排列LCD1602属于字符型显示器件,可显示2行16个字符,字符显示尺寸为5×7个像素点。
在显示模块的ROM中存放ASCII码字符字模等,输出时只需提供字符编码和显示位置即可。
LCD1602引脚排列如上图所示。
其中,D0-D7为数据口,E为使能信号,RW为读写信号,RS为寄存器选择信号,VL为亮度调节引脚,VCC、VCC1、GND和GND1均为电源引脚。
LCD1602的工作流程图1.2.2功能说明“123456”6个数字由右边进入1602液晶显示器模块,再由左边走出LCD模块,连续不断。
单片机的P3.4脚接E执行使能控制,读操作时,高电平有效;写操作时,下降沿有效。
P3.5脚接rs进行寄存器选择,当rs=1时,指向数据寄存器;当rs=0时,若执行写操作,则指向指令寄存器,若执行读操作,则指向地址计数器。
第二章程序设计及结果分析2.1编程思路及框架以单片机为核心,LCD1602液晶显示器为输出器件。
使单片机的P3.4脚接E执行使能控制,读操作时,高电平有效;写操作时,下降沿有效。
P3.5脚接rs进行寄存器选择,当rs=1时,指向数据寄存器;当rs=0时,若执行写操作,则指向指令寄存器,若执行读操作,则指向地址计数器。
,而LCD1602属于字符型显示器件,可显示2行16个字符,字符显示尺寸为5×7个像素点。
在显示模块的ROM中存放ASCII码字符字模等,输出时只需提供字符编码和显示位置即可。
《单片机原理与应用》AT89s52
片内 8KB Flash ROM EA=1
1FFFH 0000H EA=0
程序存储器 ROM
64KB RAM ( I/O)
0000H
片内
专用 FFH 寄存器 80H
内部 7FH
RAM 00H
数据存储器 RAM
¼Ä÷
❖1、程序存储器
AT89S52单片机片内程序存储器 ROM有8K字节, 其地址为0000H~1FFFH;片外可接扩展程序存储 器ROM,最大达64 k字节,地址为0000H~FFFFH, 片内外统一编址。CPU访问片内、片外程序存储器 ROM时用MOVC指令。
表1-2 程序状态寄存器PSW功能表
地址
D0H
寄存器 名称
程序状态寄存器PSW
位地址
D7
D6
D5
D4
D3
D2
D1
D0
位名称
CY
AC
F0
RS1
RS0
OV
F1
P
位意义
进/借
辅进
用户标志
寄存器组选择
溢出
用户标志
奇/偶
CY(PSW.7):进/借位标志位。在执行加法(或减法)运 算指令时,如果运算结果的最高位(D7位)向前有进位( 或借位),则CY位由硬件自动置为1(CY=1);如果运算 结果的最高位无进位(或借位),则CY位被清0(CY=0) 。
AT89S52
AT89S52单片机的基本组成
AT89S52 单片机内部结构框图如图1-2所示:
AT89S52 单片机内部包括:
❖ 一个8位89S52微处理器(CPU),是单片机的运算和指 挥中心。
❖ 片内8K字节程序存储器 (ROM),用于存放程序、原始 数据及表格。
AT89S52单片机开发板使用说明书
AT89S52单片机实验板使用说明书注:用户拿到开发板后先测试开发板的好坏,方法是给开发板通上电,如果数码管从0开始进行加计数那么说明开发板是好的。
如果通电后电路板没有反应,请及时联系我们。
此时用户应该将LED-J2的跳线冒去掉,因为,8个LED和数码管是共用数据线的,当然,如果不去也不影响实验效果。
实验板使用注意事项:下载线和开发板的连接要正确,并口ISP下载线采用10芯排线,其中10芯排线的红色边一端是第1个脚,对应目标电路板接口的MOSI,在使用时请注意不要接反,以免损坏下载线和电路板。
USB-ISP下载线电路板和开发板上都有ISP的标号,连接时对应连接就可以了,千万不要接反,以免损坏下载线和电路板。
1.开发板PCB顶视图和底视图2.开发板尺寸:9cm*7cm3.开发板资源:(1)AT89S52单片机,可实现ISP编程(2)4位共阳数码管(3)八只贴片LED发光二极管(4)一个串口,与电脑进行串口通信(5)所有单片机引脚引出接口,本开发板将单片机的40个引脚全部引出,包括电源和地,方便用户扩展外设。
(6) DC-5V稳压电源供电接口(7) USB供电接口(8) DC-5V稳压电源供电 USB供电选择接口(9)系统复位按键,便于调试程序(10)ISP编程接口,通过此接口可以实现ISP在系统编程,不用将芯片从开发板拿下来就可以通过下载线将程序下载到单片机内,避免了以往采用编程器编程频繁拔插单片机的麻烦和易损坏芯片的风险。
(11)电源总开关,本开发板上有一个电源总开关,通过此开关可以方便的控制开发板的电源,避免频繁繁拔电源的麻烦。
注:本电源总开关采用的是进口金属封装左右拨动式电源总开关,质量可靠,放心使用。
避免了市场上很多开发板上使用的廉价的易损坏朔料封装开关给用户带来的不必要的烦脑。
4.开发板供电方式:(1)USB供电(2)DC-5V稳压电源供电(3)USB-ISP下载线供电注:在选用USB-ISP供电时,USB-ISP下载线电路板上的JP2必须用跳线冒接上。
AT80S52单片机原理与应用2.
3. LED 背光或EL 背光; 4. 工作电压:5V,工作电流:1.25mA(典型值); 5. 控制器KS0066,芯片封装COB。
28
LCM1602A 功能结构图
29
LCM1602A 引脚说明
30
LCM1602A 写操作时序图
A口、B口可工作于输入或输出方式
具体工作在一般方式(无条件传送)或选通方式 (如中断传送)由C口的工作方式确定。
C口可工作于四种工作方式:
输入方式 输出方式 A口的控制端+输出方式 A口、B口的控制端
6
8155 C 口的工作方式
7
单片机显示/键盘系统
8段 LED 数码显示器的介绍
8
“米”字段 数码管
9
LED 数码显示器的工作方式
数码与显示码之间需进行转换,方法有: 硬件法:使用译码集成电路; 软件法:使用查表法得到显示码。
显示方式有: 静态方式:恒定点亮 动态方式:每个间隔一段时间点亮一次, 即轮流点亮
10
LED 静态显示方式
LED显示器工作于静态显示方式时,各位 的共阴极(或共阳极)连接在一起并接地(或十 5V);每位的段选线分别与一8位的锁存输出 相连。
31
LCM1602A 读操作时序图
32
33
LCM12864 图形点阵式液晶显示模块
34
LCM12864ZK 功能特点
1. LCM12864 显示内容128x64 点阵,8x4 行;
2. 内带8000 多GB1、2 汉字字库液晶显示 模
块;
3. STN 黄绿模式,6:00 视角,正向显示;
Mcuzon S52DK 使用说明
S52DK使用说明(Mcuzone出品)功能介绍-RTC DS1302-EEPROM 24c02-RS232接口电路-一个复位按键K1-一个产生定时器外部计数脉冲的按键K2-一个蜂鸣器-一个LED-一块字符LCM1602,显示灰度可变,背光可以控制-12个行列扫描按键-S52串行编程接口,采用Altera Byteblaster下载电缆,兼容ALTERA FPGA下载,软件采用 Easy 51pro-MCU采用易更换的结构,标配AT89S52-可更换为引脚兼容的其余51兼容器件,但最好能使用串口ISP,以方便开发使用说明开机后将先从串口输出信息(9600bps),然后屏幕上有4处显示,第一行第一个字符当前无显示,记做区域1,第一行中间不停显示一些信息,称为区域2,第一行右边显示000,记做区域3,第二行左边当前显示的是时间,记做区域4,第一行右边显示的是版本号,记做区域5。
区域1:按动按键,该区域将显示这个按键的代码,以下为按键位置及其对应代码S9(‘*’) S10(‘1’) S11(‘2’) S12(‘#’)S5(‘3’) S6(‘4’) S7(‘5’) S8(‘6’)S1(‘7’) S2(‘8’) S3(‘9’) S4(‘0’)按动‘*’可以控制BUZ1的开关。
按动‘#’可以控制LED2的开关。
按动‘1’可以打开LCM1602的背光。
按动‘2’可以关闭LCM1602的背光。
区域3:该区域可显示一个000~255的数据,按动‘3’可以使得该数加一,按动‘4’可以使该数减一,按动‘5’可以将该数保存到24C02中,按动‘6’可以从24C02中读出保存的值。
区域4:该区域可以显示时间或者日期,按动‘0’可以进行切换。
按动‘7’可以修改小时或者年。
按动‘8’可以修改分钟或者月份。
按动‘9’可以修改秒或日期。
按动K2数次可以复位时间与日期。
在无后备电池的板子上,开机不走时,此时需要按动K2数次复位RTC区域5:显示从24C02中读取的版本号Powered by XiaoGuo’s publishing StudioQQ:8204136Website: 2005。
【电子设计】AVR M8转S52板说明书
ATMEGA8转S52板使用说明书一、ATmega8单片机主要性能:·高性能、低功耗的8 位AVR 微处理器·先进的RISC 结构·130 条指令–大多数指令执行时间为单个时钟周期·32个8 位通用工作寄存器·全静态工作·工作于16 MHz 时性能高达16 MIPS·只需两个时钟周期的硬件乘法器·非易失性程序和数据存储器·8K 字节的系统内可编程Flash·擦写寿命: 10,000 次·具有独立锁定位的可选Boot 代码区·通过片上Boot 程序实现系统内编程·真正的同时读写操作·512 字节的EEPROM·擦写寿命: 100,000 次·1K字节的片内SRAM·可以对锁定位进行编程以实现用户程序的加密·外设特点:·两个具有独立预分频器8 位定时器/ 计数器, 其中之一有比较功能·一个具有预分频器、比较功能和捕捉功能的16 位定时器/ 计数器·具有独立振荡器的实时计数器RTC·三通道PWM·TQFP与MLF 封装的8 路ADC·8 路10 位ADC·PDIP封装的6 路ADC·路10 位ADC·面向字节的两线接口·两个可编程的串行USART·可工作于主机/ 从机模式的SPI 串行接口·具有独立片内振荡器的可编程看门狗定时器·片内模拟比较器·特殊的处理器特点·上电复位以及可编程的掉电检测·片内经过标定的RC 振荡器·片内/ 片外中断源·5种睡眠模式: 空闲模式、ADC 噪声抑制模式、省电模式、掉电模式及Standby 模式·I/O 和封装·23个可编程的I/O 口·28引脚PDIP 封装,32 引脚TQFP 封装,32 引脚MLF 封装·工作电压·2.7 - 5.5V (ATmega8L)·4.5 - 5.5V (ATmega8)·速度等级·0 - 8 MHz (ATmega8L)·0 - 16 MHz (ATmega8)·4 Mhz 时功耗, 3V, 25°C·工作模式: 3.6 mA·空闲模式: 1.0 mA·掉电模式: 0.5 μA·特别注意:ATMEGA8是不带任何的仿真接口的,所以要对mega8仿真是需要接入仿真头,或者采用mega88来做前期的开发,批量生产时可将程序移植到mega8,程序中的寄存器名称需做修改。
STC89S52单片机定时器T2捕获
/****************************************************************************** ***************说明:定时器2捕获功能的使用。
由于只有三个三个数码管,帮只显示捕获的低八位,经验证,当P1.1(T2EX)用定时器0控制发出一个下降沿,用T2的P1^1;引脚进行捕获,从而得到高电平时间用以测量波形的宽度跳变时,数据被捕获/****************************************************************************** ***************//****************************************************************************** ****************/#include<reg52.h> //常用的头文件,52单片机包含定时器2#include <intrins.h> //51基本运算(包括_nop_空函数)#define uchar unsigned char#define ulong unsigned long#define uint unsigned intsbit STC_WR=P3^6;sbit IC138_C=P2^7;sbit IC138_B=P2^6;sbit IC138_A=P2^5;sbit p10=P1^0; //有定时器0控制从P2.0口输出一个信号bit flag=0;#define Port_Data P0uint tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};uchar count=0; //注,使用扩展RAM时一定要注意初始化uchar temp[]={0,0,0,0,0,0,0,0}; //用于赋捕获值/****************************************************************************** ****************/void delay(uint z) //ms级延时函数{uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}/****************************************************************************** ****************/void BUZZ_Y5C(){STC_WR=0;IC138_C=1;IC138_B=0;IC138_A=1;}void we_Y6C(){STC_WR=0;IC138_C=1;IC138_B=1;IC138_A=0;}void du_Y7C(){STC_WR=0;IC138_C=1;IC138_B=1;IC138_A=1;}void up_we_Y6C(){STC_WR=1;IC138_C=1;IC138_B=1;IC138_A=0;}void up_du_Y7C(){STC_WR=1;IC138_C=1;IC138_B=1;IC138_A=1;}void display() //显示程序{du_Y7C();Port_Data=tab[temp[0]];up_du_Y7C();we_Y6C();Port_Data=0x01;up_we_Y6C();delay(1);du_Y7C();Port_Data=tab[temp[1]]; up_du_Y7C();we_Y6C();Port_Data=0x02;up_we_Y6C();delay(1);du_Y7C();Port_Data=tab[temp[2]]; up_du_Y7C();we_Y6C();Port_Data=0x04;up_we_Y6C();delay(1);du_Y7C();Port_Data=tab[temp[3]]; up_du_Y7C();we_Y6C();Port_Data=0x08;up_we_Y6C();delay(1);du_Y7C();Port_Data=tab[temp[4]]; up_du_Y7C();we_Y6C();Port_Data=0x10;up_we_Y6C();delay(1);du_Y7C();Port_Data=tab[temp[5]];up_du_Y7C();we_Y6C();Port_Data=0x20;up_we_Y6C();delay(1);du_Y7C();Port_Data=tab[temp[6]];up_du_Y7C();we_Y6C();Port_Data=0x40;up_we_Y6C();delay(1);du_Y7C();Port_Data=tab[temp[7]];up_du_Y7C();we_Y6C();Port_Data=0x80;up_we_Y6C();delay(1);}void gaibian(){uint x;x=RCAP2H*256+RCAP2L;temp[7]=x%10;x=x/10;temp[6]=x%10;x=x/10;temp[5]=x%10;x=x/10;temp[4]=x%10;x=x/10;temp[3]=x%10;x=x/10;temp[2]=x%10;x=x/10;temp[1]=x%10;temp[0]=x/10;RCAP2H=0;RCAP2L=0;TH2=0;TL2=0;flag=0;}/****************************************************************************** ****************/void time2_init(void) //捕获模式,当EXEN2=1,外部T2EX为负跳变时,则将定时器中的值捕获到RCAP2L和RCAP2H{TH2=0; //初值为0,不断自加,当溢出时中断,或者外部T2EX由1到0时产生中断TL2=0;RCAP2L=0;RCAP2H=0; // 允许T2定时器中断T2CON=0x09; //必须将T2CON.7位置1才能进行外部捕获/或者外部T2EX由1到0时产生中断}void time_init(){TMOD=0X12;TH0=256-12;TL0=256-12;TH1=(65536-50000)/256;TL1=(65536-50000)%256;EA=1;ET0=1;ET1=1;ET2=1;TR0=1;TR1=1;TR2=1;}/****************************************************************************** ****************/void main(){time2_init();time_init();BUZZ_Y5C();Port_Data=0X00;while(1){if(flag==1)gaibian();display(); //只用来显示低八位}}void timer2(void) interrupt 5{if(TF2){TF2=0; //若定时器溢出则产生中断清0RCAP2H=0;RCAP2L=0;TH2=0;TL2=0;}else{TR0=0;TR2=0;flag=1;EXF2=0; //若外部负跳变时产生中断清0}}void timer0() interrupt 1{p10=~p10;}void timer1() interrupt 3{static uchar x=0;TH1=(65536-50000)/256;TL1=(65536-50000)%256;x++;if(x==20){TR2=1;TR0=1;x=0;RCAP2H=0;RCAP2L=0;TH2=0;TL2=0;}}。
基于S52单片机的电子时钟C程序
s1=1;s2=1;s3=0; wei1=1; wei2=1; wei3=1; wei4=1;wei5=1;wei6=1; P0=tab[mouth/10]; wei1=0;
delay(); wei1=1; P0=tab[mouth%10]; if(flag)wei2=0; delay(); wei2=1; P0=tab[day/10]; wei3=0; delay(); wei3=1; P0=tab[day%10]; if(flag) wei4=0; delay(); wei4=1; } void set_year() { s1=1;s2=1;s3=1; wei1=1; wei2=1; wei3=1; wei4=1;wei5=1;wei6=1; shige=year%100; P0=tab[year/1000]; wei1=0;
} void display()//显示子程序 {
wei1=1; wei2=1; wei3=1; wei4=1;wei5=1;wei6=1; P0=tab[hour/10]; wei1=0; delay(); wei1=1; P0=tab[hour%10]; wei2=0;
delay(); wei2=1; P0=tab[min/10]; wei3=0; delay(); wei3=1; P0=tab[min%10]; wei4=0; if(!flag==0)DP=0; else DP=1; delay(); wei4=1;
if(count==10)//500ms { count=0; count_t++; shandeng=~shandeng;flag=~flag;
if(count_t==2) { count_t=0;
S52单片机学习开发板使用说明书
单片机开发板使用说明书免责声明....................................................................................................... 前言 (6)使用前准备 (6)1 开发板安装和连接 (6)1.1 供电线和下载线连接 (7)1.1.1 AT89S5X 芯片 (7)1.1.2 STC89C5X 芯片 (7)1.1.3 Atmega16 芯片 (7)1.1.4 Atmega8 芯片 (7)2 芯片安装与拔插 (8)2.1 芯片安装和更换 (8)3 程序烧写与运行 (9)4 下载软件说明 (13)功能分类 (17)第1 章LED 流水灯 (17)1.1 硬件连接 (17)1.2 软件操作 (18)1.2.1 汇编部分程序 (18)1.2.2 C 语言程序 (18)第2 章数码管 (19)2.1 硬件连接 (19)2.2 软件操作 (20)2.3 注意事项 (21)第3 章独立按键 (21)3.1 硬件连接 (21)3.2 软件操作 (21)3.3 注意事项 (22)第4 章矩阵键盘 (22)4.1 硬件连接 (22)4.2 软件操作 (23)4.3 注意事项 (24)第5 章继电器 (24)5.1 硬件连接 (24)5.2 注意事项 (25)第6 章喇叭 (25)6.1 硬件连接 (25)6.2 软件操作 (26)6.3 注意事项 (26)第7 章定时器 (26)7.1 硬件知识 (26)7.2 软件操作 (26)第8 章EEPROM (27)8.1 硬件连接 (27)8.2 软件操作 (27)8.3 注意事项 (27)第9 章DS1302 (28)9.1 硬件连接 (28)第10 章步进电机 (29)10.1 硬件连接 (29)10.2 软件操作 (29)10.3 注意事项 (29)第11 章18B20 (30)11.1 硬件连接 (31)11.2 注意事项 (31)第12 章1602 液晶 (31)12.1 硬件连接 (31)12.2 软件操作 (32)12.3 注意事项 (32)第13 章12864 液晶 (33)13.1 硬件连接 (33)13.2 软件操作 (33)13.3 注意事项 (34)第14 章红外发射 (34)14.1 硬件连接 (34)14.2 软件操作 (34)14.3 注意事项 (36)第15 章红外接收 (36)15.1 硬件连接 (36)15.2 软件操作 (37)15.3 注意事项 (37)第16 章串口通信 (38)16.1 硬件连接 (38)16.2 软件操作 (39)16.3 注意事项 (40)第17 章PS2 键盘 (40)17.1 硬件连接 (40)17.2 软件实例 (40)第18 章LED 点阵 (40)18.1 硬件结构原理 (40)18.2 软件操作实例 (43)第19 章ADC 模数转换 (42)19.1 ADC 工作原理 (43)第20 章光敏\热敏实例 (45)20.1 工作原理 (45)第20 章DAC 数模转换 (46)20.1DAC 工作原理 (46)第21 章555 时基电路 (46)21.1 结构原理 (46)21.2 常用电路 (47)21.3 注意事项 (48)第22 章PWM (48)22.1 工作原理 (48)22.2 软件实例 (48)第23 章AVR 芯片使用 (48)23.1 硬件连接 (48)23.2 注意事项 (49)第24 章SST 仿真芯片使用 (50)24.1 硬件连接 (50)24.2 软件操作..................................................................................................................................51.24.3注意事项 (53)第25 章编程器使用 (53)25.1 支持可编程芯片种类 (53)25.2 注意事项 (53)第26 章电源输出/输入 (53)26.1 硬件连接 (55)26.2 注意事项 (56)第27 章ISP 功能接口 (57)27.1 硬件连接 (57)27.2 注意事项 (57)第28 章晶振更换 (57)28.1 硬件连接 (57)28.2 注意事项 (57)常见问题解答 (59)附录 (61)免责声明为了安全有效的使用该产品,请您使用前仔细阅读以下信息本 产品可以通过USB供电,供电流<500mA ,自带保护可以有效保护电脑自行外接电源是请注意电源极性和电压参数。
ISA_S5.2中文版(很好)
A 分析5 17 报警B 烧嘴、火焰供选用1 供选用1 供选用1C 电导率控制12D 密度差4E 电压(电动势)检测元件F 流量比(分数)4G 供选用1 视镜;观察9H 手动高14 15I 电流指示10J 功率扫描K 时间、时间程序变化速率4 19 操作器20L 物位灯11 低14 15M 水分或湿度瞬动4 中、中间14N 供选用1 供选用1 供选用1 供选用1O 供选用1 节流孔P 压力、真空连接点、测试点Q 数量积算、累计4R 核辐射记录16S 速度、频率安全开关12、联锁T 温度传送U 多变量6 多功能7 多功能7 多功能7V 振动、机械监视17 阀、风门、百叶窗12W 重量、力套管X 未分类2 X轴未分类2 未分类2 未分类2Y 事件、状态18 Y轴继动器、计算器、转换器12 13Z 位置、尺寸Z轴驱动器、执行机构未分类的最终执行元件目录CONTENTS1 简介23 符号表示4 开/关逻辑输入符号5 模拟输入符号5.1 变送器5.2 温度测量6 逻辑数据处理模块6.1 ET逻辑数据模块6.2 OU逻辑数据模块6.3 XOR 逻辑数据模块6.4 延时DI6.5 延时DT6.6 PO脉冲输出6.7 寄存器6.8 计时器7 数字数据处理模块7.1 计算模块7.2 控制模块7.3 临界点模块7.4 复位模块7.5 选择模块7.6 变量速度限制模块8 显示模块8.1 变量显示模块8.2 逻辑变量显示模块8.3 报警显示模块8.4 变量记录模块9 操作人员控制模块9.1 HS控制模块9.2 HIC控制模块10 直联和/ 或互联符号11 开-关逻辑输出符号12 模拟输出符号1 简介这个符号表示方法是用来明确表示数字控制系统的所有处理过程。
为了此目的,DCS所有的处理过程被分成多个基本功能,一套DCS执行的基本操作将完成一个基本功能,再组成一个统一单元,例如:−流程参数的获取,监视和核对−在工厂的一个给定点上,流体特性的获取,监视和核对−工厂中设备的任何一种部机的停车,监视和启动顺序−设备各种部机组装的顺序处理基本回路一个识别数码被分配到每个基本功能上,第一个数字允许标识与流程的特殊部分有关的所有处理过程,作为顺序数码的后两个数字没有排除。
89s52单片机中文版
主要性能Array l 与MCS-51单片机产品兼容l 8K字节在系统可编程Flash存储器l 1000次擦写周期l 全静态操作:0Hz~33Hzl 三级加密程序存储器l 32个可编程I/O口线l 三个16位定时器/计数器l 八个中断源l 全双工UART串行通道l 低功耗空闲和掉电模式l 掉电后中断可唤醒l 看门狗定时器l 双数据指针l 掉电标识符功能特性描述A T89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。
使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。
片上Flash允许程序存储器在系统可编程,亦适于常规编程器。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得A T89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
A T89S52具有以下标准功能:8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。
另外,A T89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。
空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
引脚结构方框图引脚功能描述VCC : 电源GND:地P0口:P0口是一个8位漏极开路的双向I/O口。
作为输出口,每位能驱动8个TTL逻辑电平。
对P0端口写“1”时,引脚用作高阻抗输入。
当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。
在这种模式下,P0具有内部上拉电阻。
在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。
程序校验时,需要外部上拉电阻。
P1口:P1口是一个具有内部上拉电阻的8位双向I/O口,p1输出缓冲器能驱动4个TTL逻辑电平。
AT98S52产品使用手册
单片机开发学习板产品使用手册【简要说明】一、尺寸:长128mm宽87mm高18mm二、支持芯片:AT89S51/S52/S53 支持STC89C51/C52/C53(加转换板可使用ATMEGA8/48、ATMEGA16/32)三、工作电压:直流4.5~5.5伏四、单片机标准十针下载接口。
(可使用并口下载线和USB下载线下载)五、特点:1、具有电源指示。
2、所以I/O口以引出并有LED灯指示。
3、四位数码管显示、四位按键输入、32位LED发光二极管显示。
4、标准的11.0592M晶振。
(晶振可以插拔更换)5、具有上电复位和手动复位。
6、四种供电接口(USB供电、端子引入供电、排针引入供电、电源头接口供电)7、串口通信使用MAX232接口,同时可以下载STC单片机程序。
8、带有蜂鸣器,可以输出音调产品有售淘宝店: 1产品有售淘宝店:29、S52和AVR 两种不同复位方式(高电平复位和低电平复位)10、40P 单片机引脚夹座,方便更换单片机。
11、具有掉电保护芯片24C0212、留有128X64和1602液晶接口13、提供大量程序、参考程序14、提供仿真程序六、提供相关软件七、提供例程及其学习资料适用场合:单片机学习、电子竞赛、产品开发、毕业设计。
注意啦:本产品提供的所有程序都附带原理图以及说明!【产品标注】【此版测试程序】/********************************************************************汇诚科技实现功能:此版配套测试程序使用芯片:AT89S52晶振:11.0592MHZ波特率:9600编译环境:Keil作者:zhangxinchunleo网站:淘宝店:汇诚科技 【声明】此程序仅用于学习与参考,引用请注明版权和作者信息!/********************************************************************程序说明:1、所有IO口流水灯3次。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
S52开发实验板使用说明书
欢迎使用本公司的S52开发实验板
首先很感谢您选择本公司的这款产品,我们也尽量帮助你早日成为单片机高手,因为此板是根据多年经验;大量客户反馈而开发的学习实验板,部分模块独立,方便任意I/O口连接,大大增加了学习和应对实验电路的兼容性,真正学到一些知识。
当然这样的板也有弊端就是每实验独立模块要使用杜邦线连接,有些心急的买家可能会嫌麻烦;有部分对硬件不熟悉的客户可能感觉困难,但是在这里告诉大家,以后工作也会接触到硬件,与其以后用的时候发难还不如现在就接触这些东西,养成软硬一起抓的习惯,这对以后工作;或者独立开发项目都有很大的帮助。
声明:
手册只针对S52开发板,因为作者水平有限难免有错误或者疏漏之类,欢迎指正。
但光汇科技不承担任何的因为手册错误而造成的任何损失!
实验板已经安装了保险电阻,且有外接电源时自动切断USB供电电路,但这样也不能保证外接电源是保证100%没有问题,所以在这里建议尽量使用USB供电,实验板的电流最大电流在300MA左右,使用USB供电不会对电脑产生任何的不良。
实验板外接接口功能介绍:
P0插针:单片机P0口外接输出端,双排16位,没个I/O口都有两个外接插针板上丝印文字代表了单片机真实的脚位。
P1插针:单片机P1口外接输出端,双排16位,没个I/O口都有两个外接插针板上丝印文字代表了单片机真实的脚位。
P2插针:单片机P2口外接输出端,双排16位,没个I/O口都有两个外接插针板上丝印文字代表了单片机真实的脚位。
P3插针:单片机P3口外接输出端,双排16位,没个I/O口都有两个外接插针板上丝印文字代表了单片机真实的脚位。
P4插针:可以换晶震圆排母
P5插针: 电源输出端
P6插针: 单排8位LED发光管接口,
P7插针:AD电压实验内部电压外部电压选择端。
P8插针:D1302时钟芯片信号外接端
P9插针:步进电机信号输入端
P10插针:步进电机信号输入口,1脚对应输出脚的A,2脚B,3脚C,4脚D P11插针:51/AVR复位选择端
P12插针:ISP下载接口
P13插针:4位独立键盘接口
P14插针:18B20信号输出口
P15插针:红外遥控信号输出口
温心提示:
本板已经集成了USB转串口芯片PL2303,可以直接使用USB下载数据,不需要另外购买USB转232线等,也不需要外接电源,实验只需要一条USB线就可以同时给单片机供电下载数据两种功能。
另外也可以使用232接靠下载
1步单片机选择STC89C52
3步打开要下载单片机的HEX文件2步选择USB驱动的COM口
4步点下载
USB(PL2303)安装不成功常见问题:
程序安装不上:请更换USB端口,电脑重启,把杀毒软件关掉,包括360或者QQ管家等,安装购买电脑时的主板驱动.
安装成功,但是端口那里有个感叹号,硬件有冲突,关掉全部杀毒软件,助手等.
下载不成功有几下原因:
1:晶震没装
2:单片机装反,单片机的缺口(或者1脚)对着手柄位置.
3:手柄没有按下去
4:USB线插的时间长掉线了,重新拔插
5:安装后要电脑需要从启才可以使用.
6:USB端口有冲突,更换USB接口,遇见过3个USB接口只有一个可以使用的
7:STC是冷启动下载,点了下载软件后2秒钟左右再按下单片机的开关.
8:把最高波特率和最低波特率都调到1200
9:重新安装USB驱动.
实验效果观察:
按照下载文件里面的连线指难连接杜邦线方可看到效果.如果乱码等请检查是否连接正确,或者查看”C”或者”ASM”的原程序文本.
点工程---再点新建工程
接着就是为目标“TARGET 1 ”选择设备,选择“ATMEL”里面的89S52 ---点确定.
在TEXT1里面输入程序代码.以汇编为列
1步:选择晶震频率2步:点输出
进入另外一
个界面
全部打勾再点确定
1步:先点这个
2步:再右击这个
3步:点增加文件到组
找到刚才保存的文件
注意文件类型,我们刚才保存的是ASM
找到文件后点ADD,这个时候就可以看到闪烁全部发光管
到此准备工作完毕,点”工程”---点”从新构造所有目标”如果没有问题就会看到这样的图片:
到此一个程序汇编完成,把输出的HEX文件烧写到单片机就可以工作了.。