单片机串口通讯试验,单片机串口通讯的硬件电路图 51单片机有一个全双工的串行通讯口,所以单片机和电脑之间可以方便地进行串口通讯。进行串行通讯时要满足一定的条件,比如电脑的串口是RS232电平的,而单片机的串口是TTL电平的,两者之间必须有一个电平转换电路,我们采用了专用芯片MAX232进行转换,虽然也可以用几个三极管进行模拟转换,但是还是用专用芯片更简单可靠。我们采用了三线制连接串口,也就是说和电脑的9针串口只连接其中的3根线:第5脚... 2008-11-22 单片机串口通讯
单片机演奏音乐实验 利用单片机演奏音乐大概是单片机爱好者感兴趣的问题之一。这里我们用网站提供的实验板来做这个实验,并且了解单片机演奏音乐的基本原理,和相关的源程序。首先来完成必要的硬件部分,硬件部分比较简单,如下图:AT89C51单片机的P2.5口控制一个8550的三极管,三极管控制电磁蜂鸣器的电源通断。我们知道,声音的频谱范围约在几十到几千赫兹,若能利用程序来控制单处机某个... 2008-11-09 单片机演奏单片机发声机器音乐原理图程序
51单片机指令系统:指令寻址方式(4) 第二十二课:51单片机的寻址方式学习汇编程序设计,要先了解CPU的各种寻址法,才能有效的掌握各个命令的用途,寻址法是命令运算码找操作数的方法。指令的寻址方式MOVP1,#0FFH这条指令,第一个词MOV是命令动词,也就是决定做什么事情的,MOV是MOVE少写了一个E,所以就是“传递”,这就是指令,规定做什么事情,数据传递必须要有一个“源”也就是你要送什么数,必须要有一个“目的”,也就是你这个... 2008-11-04 单片机指令系统寻址方式电子设计
51单片机指令系统(2) 第二十课:汇编语言及汇编过程一、汇编程序功能汇编指令与机器码指令有一一对应的关系。汇编程序是一种翻译程序,将源程序翻译成目标程序。二、汇编程序的汇编过程汇编有两种方法:手工汇编、机器汇编。1、手工汇编:第一次汇编:确定地址,翻译成各条机器码,字符标号原样写出;第二次汇编:标号代真,将字符标号用所计算出的具体地址值或偏移量代换。源程序地址... 2008-11-04 单片机指令系统指令学习电子设计
51单片机指令系统(1) 第十九课:汇编语言基础所谓指令,就是规定计算机进行某种操作的命令。计算机按程序一条一条地依次执行指令,从而完成指定任务。一条指令只能完成有限的功能,为使计算机完成一定的或者复杂的功能,就需要一系列指令。一般来说,一台计算机的指令越丰富,寻址方式越多,且每条指令的执行速度越快,则它的总体功能就越强。程序设计语言:机器语言汇编语言高级语言我们学习的80C51单片机共有111条指令,这111条指令共有... 2008-11-04 单片机开发倒计时器倒计时设计电路设计
51单片机指令系统(3) 第二十一课:汇编程序的基本结构程序编写做到:占用存储空间少;运行时间短;程序的编制、调试及排错所需时间短;结构清晰,易读、易于移植。按结构化程序设计思想,任何复杂程序都可由顺序结构、分支结构、循环结构等构成。如图1所示。一、顺序程序举例例1、设在外RAM的60H单元存有1个字节代码,要求将其分解成两个4位字段,高4位存入原单元的低4位,其低4位存入61H单元的低4位,且要求这两个单元的高4位均为... 2008-11-04 单片机指令系统指令学习电子设计
单片机倒计时定时器 这里我们先要安装好51试验板上的两个轻触按钮开关,我们采用的是独立式按钮开关,也就是说将开关直接连接到电源的地和单片机的对应引脚之间,这里K1接到单片机的P3.6引脚,K2接到P3.7。正常情况下单片机的P3.6、P3.7都被程序初始化时置“1”当有按键按下时对应的单片机引脚被按钮开关下拉为“0”,这种方法比较直观,而且比较简单,在按键数量不多的场合下使用很广泛。因为机械开关开关时有抖... 2008-11-04 单片机开发倒计时器倒计时设计电路设计
51单片机指令系统:伪指令分析(10) 第二十八节:伪指令分析伪指令是告诉汇编程序,如何汇编源程序的指令。伪指令既不控制机器的操作,也不能被汇编成机器代码,故称为伪指令。1、设置起始地址ORG(用于规定目标程序段或数据块的起始地址,设置在程序开始处。)格式:ORGnn;nn是16位二进制数;nn给出了存放的超始地址值给程序起始地直或数据块的起始地址赋值。它总是出现在每段源程序或数据块的开始。在一个源程序中可以多次使用O... 2008-11-04 伪指令单片机指令系统
51单片机指令系统:布尔变量操作指令(9) 第二十七课:布尔变量操作指令分析布尔处理功能是MCS-51系列单片机的一个重要特征,这是出于实际应用需要而设置的。布尔变量也即开关变量,它是以位(bit)为单位进行操作的。在物理结构上,MCS-51单片机有一个布尔处理机,它以进位标志做为累加位,以内部RAM可寻址的128个为存储位。既然有布尔处理机功能,所以也就有相应的布尔操作指令集,下面我们分别谈论。[1].位传送指令(2条... 2008-11-04 单片机指令系统布尔变量操作指令
51单片机指令系统:控制转移类指令(8) 第二十六课:控制转移类指令分析控制转移指令用于控制程序的流向,所控制的范围即为程序存储器区间,MCS-51系列单片机的控制转移指令相对丰富,有可对64kB程序空间地址单元进行访问的长调用、长转移指令,也有可对2kB字节进行访问的绝对调用和绝对转移指令,还有在一页范围内短相对转移及其它无条件转移指令,这些指令的执行一般都不会对标志位有影响。[1].无条件转移指令(4条)这组指令执行完后,程序就会... 2008-11-04 单片机指令控制转移
51单片机指令系统:逻辑运算及移位(7) 第二十五课:逻辑运算及移位指令分析逻辑运算和移位指令共有25条,有与、或、异或、求反、左右移位、清0等逻辑操作,有直接、寄存器和寄存器间址等寻址方式。这类指令一般不影响程序状态字(PSW)标志。[1].循环移位指令(4条)这4条指令的作用是将累加器中的内容循环左或右移一位,后两条指令是连同进位位CY一起移位。RLA;累加器A中的内容左移一位RRA;累加器A中的内容右... 2008-11-04 单片机指令逻辑运算移位
51单片机指令系统(6) 第二十四课:算术运算类指令分析算术运算指令共有24条,算术运算主要是执行加、减、乘、除法四则运算。另外MCS-51指令系统中有相当一部分是进行加、减1操作,BCD码的运算和调整,我们都归类为运算指令。虽然MCS-51单片机的算术逻辑单元ALU仅能对8位无符号整数进行运算,但利用进位标志C,则可进行多字节无符号整数的运算。同时利用溢出标志,还可以对带符号数进行补码运算。需要指出的是,除加、减1指令... 2008-11-04 单片机指令系统数据传输方式电子设计
51单片机指令系统:数据传送(5) 第二十三课:数据传送类指令分析数据传送类指令的通用格式是:MOV,源操作数可以是:累加器A、通用寄存器Rn(n=0-7)、直接地址direct、间接地址和立即数;目的操作数可以是:累加器A、通用寄存器Rn(n=0-7)、直接地址direct和间接地址;数据传送指令共有29条,数据传送指令一般的操作是把源操作数传送到目的操作数,指令执行完成后,源操作数不变,目的操作数... 2008-11-04 单片机指令系统数据传输方式电子设计
单片机开发的6位数显频率计数器 1.实验任务 利用AT89S51单片机的T0、T1的定时计数器功能,来完成对输入的信号进行频率计数,计数的频率结果通过8位动态数码管显示出来。要求能够对0-250KHZ的信号频率进行准确计数,计数误差不超过±1HZ。2.电路原理图 图4.31.13.系统板上硬件连线(1).把“单片机系统”区域中的P0.0-P0.7与“动态数码显示”区域中的ABCDEFGH端口用8芯排... 2008-11-04 单片机89s51频率计数器设计
51单片机地址指针及其应用 51单片机外部RAM的地址空间为64K,地址总线为16位,访问外接RAM可执行如下4条指令:MOVXA,@DPTRMOVX@DPTR,AMOVXA,@RIMOVX@RI,A其中DPTR为16位地址寄存器,地址高8位存于DPH,地址低8位存于DPL;Ri(I=0,1)是8位寄存器,作为地址指针时仅存低8位地址。MCS-51执行上述指令时分为两个阶段:首先,是从... 2008-11-02 51单片机地址指针应用
MCS-51单片机I/O端口的存取 MCS-51单片机通常有4个8位I/O端口,向各端口的写数据均写入到对应端口的锁存器中,但对各端口的读操作却有两个方式:读锁存器和读引脚1读-修改-写操作Pn(指P0,P1,P2,P3)在51汇编语言中是特殊的标识符,既代表Pn端口引脚,又代表Pn锁存器(PnSFR)。在MCS-51指令系统中有些指令读锁存器的值,有些指令则读引脚上的值。读锁存器指令是从锁存器中读取一... 2008-11-02 51单片机地址指针应用
51单片机模拟SPI总线的方法 摘要:MCS-51系列单片机中由于部分型号不带SPI串行总线接口而限制了其在SPI总线接口器件的使用。文中介绍了SPI串行总线的特征和时序,并以串行E2PROM为例,给出了在51系列单片机上利用I/O口线实现SPI串行总线接口的方法和软件设计程序。关键词:单片机SPI串行总线总线接口1引言SPI(SerialPeripheralInterface--串行外设接口)... 2008-11-02 51单片机模拟spi总线方法
单片机串口通讯程序(C51) 自己用C51写的串口通讯程序/*定义为中断方式串口处理*/#defineINTERSENDSTR/*不为8032系列芯片*///#defineCHIP_8032#include#include#include#include"err.h"#ifdefINTERSENDSTRunsigned... 2008-11-02 单片机串口通讯程序
51单片机驱动步进电机电路及程序 在这里介绍一下用51单片机驱动步进电机的方法。这款步进电机的驱动电压12V,步进角为7.5度.一圈360度,需要48个脉冲完成!!!该步进电机有6根引线,排列次序如下:1:红色、2:红色、3:橙色、4:棕色、5:黄色、6:黑色。采用51驱动ULN2003的方法进行驱动。ULN2003的驱动直接用单片机系统的5V电压,可能力矩不是很大,大家可自行加大驱动电压到12V。... 2008-11-02 51单片机驱动步进电机电路程序
Proteus51汇编源码调试 proteus的调试器很有特色,使用很方便。网上有很多的仿真实例。有的调试的时候会出现源代码窗口。这是使用Proteus自带汇编器,如ASEM51时,它将产生SDI文件,所以当你单步调试时,源代码窗口就出现SDI文件。SDI文件是用Proteus里面ASEMDDX.exe生成,用来显示汇编源码。ASEMDDX.exe是个命令行程序。使用方法是先用ASEM51编译汇编程序,生成he... 2008-11-02 proteus调试单片机汇编语言
基于AT89C52单片机的SD卡读写设计 摘要:长期以来,以FlashMemory为存储体的SD卡因具备体积小、功耗低、可擦写以及非易失性等特点而被广泛应用于消费类电子产品中。特别是近年来,随着价格不断下降且存储容量不断提高,它的应用范围日益增广。当数据采集系统需要长时间地采集、记录海量数据时,选择SD卡作为存储媒质是开发者们一个很好的选择。在电能监测以及无功补偿系统中,要连续记录大量的电压、电流、有功功率、无功功率以及时间等参数,... 2008-11-01 单片机SD卡读写设计
单片机系统中PS/2键盘驱动程序的设计 在单片机系统中,经常使用的键盘都是专用键盘.此类键盘为单独设计制作的,成本高、使用硬件连接线多,且可靠性不高,这一状况在那些要求键盘按键较多的应用系统中更为突出.与此相比,在PC系统中广泛使用PS/2键盘具有价格低、通用可靠,且使用连接线少(仅使用2根信号线)的特点,并可满足多种系统的要求.因此在单片机系统中应用PS/2键盘是一种很好的选择.文中在介绍PS/2协议和PS/2键盘工... 2008-10-31 单片机键盘设计驱动程序设计
单片机编程经验 经验之一:用“软件陷阱+程序口令”对付PC指针的弹飞当CPU受到外界干扰,有时PC指针会飞到另一段程序中,或跳到空白段去。其实,如果PC指针飞到空白段去,倒也好处理。只要在空白段设立软件陷阱(拦截指令),将程序拦截到初始化段或程序错误处理段。但是,如果PC指针飞到另一段程序中去了,系统如何办?小匠在这里推荐一种方法——程序口令,思路如下:1、首先,程序必须模块化。每个模块(子程序)执行一个功能... 2008-10-31 单片机编程编程经验
51单片机汇编程序集 1、片内RAM初始化子程序2、片外RAM初始化子程序3、片外RAM初始化子程序(双字节个单元)4、内部RAM数据复制程序5、外部RAM数据复制程序6、外部RAM数据复制程序7、外部RAM数据复制到内部RAM程序8、限幅滤波程序9、中位值滤波程序10、N点算术平均滤波11、N点加权平均滤波12、一阶加权滞后滤波程序13、双字节取补程序14、N节取补程序15、双字节无符号数加法程序16、N字节无符号... 2008-10-31 单片机编程单片机汇编语言语法
51单片机8*8点阵LED显示原理及程序 在8X8点阵LED上显示柱形,让其先从左到右平滑移动三次,其次从右到左平滑移动三次,再次从上到下平滑移动三次,最后从下到上平滑移动三次,如此循环下去。1.程序设计内容8X8点阵LED工作原理说明:8X8点阵共需要64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一列置1电平,某一行置0电平,则相应的二极管就亮;因此要实现一根柱形的亮法,如图49... 2008-10-31 51单片机点阵显示原理点阵程序