用C语言进行MCS51系列单片机程序设计是单片机开发和应用的必然趋势。Keil公司的C51编译器支持经典8051和8051派生产品的版本,通称为Cx51。应该说,Cx51是C语言在MCS51单片机上的扩展,既有C语言的共性,又有它自己的特点。本文介绍的是Cx51程序设计时堆栈的计算方法。
基于MCS51设计的概念版的信号发生器
在此利用廉价的MCS51单片机设计了包含常用传感器、数据采集模块与USB通信接口的LabVIEW 实验教学系统。该系统使用USB接口与上位机通信并提供电源,而上位机编程直接调用VISA驱动USB接口,大大降低了数据采集程序设计的难度。该系统可以满足大学虚拟仪器实验教学的需要,性价比高,具有良好的推广前景。
MCS51单片机标准构成只有一组全双工UART串行口,P3.0-RXD收、P3.1-TXD发,如果要完成多路串口收发,一般使用外部扩展芯片,例如:GM8123/25,完成一扩多路串口,但是,由于增加扩展芯片,造成硬件成本增加,PCB板面增大,抗干扰性下降等不良因素,因此能尽量使用现有串口,利用分时切换技术,完成串行口不同类型,不同端口的数据传送是优先选择。
16位数据传送指令(1条)这是89C51单片机唯一的一条16位立即数传递指令,其功能是将一个16位的立即数送入数据指针DPTR中去。其中高8位送入DPH,低8位送入DPL。MOV DPTR,#data16;#dataH→(DPH),#dataL→(DPL)16位
在此利用廉价的MCS51单片机设计了包含常用传感器、数据采集模块与USB通信接口的LabVIEW 实验教学系统。该系统使用USB接口与上位机通信并提供电源,而上位机编程直接调用VISA驱动USB接口,大大降低了数据采集程序设计
方式1是16位计数结构的工作方式,计数器由TH0全部8位和TL0全部8位构成。与工作方式0基本相同,区别仅在于工作方式1的计数器TL1和TH1组成16位计数器,从而比工作方式0有更宽的定时/计数范围。当为计数工作方式时,计数
算术运算指令共有24条,算术运算主要是执行加、减、乘、除法四则运算。另外MCS-51指令系统中有相当一部分是进行加、减1操作,BCD码的运算和调整,我们都归类为运算指令。虽然MCS-51单片机的算术逻辑单元ALU仅能对8位
1、 算术逻辑单元(ALU)2、 累加器A,B寄存器、暂存器3、 程序状态字(PSW):C AC FO RS1 RS0 OV - P4、 十进制调整电路、布尔处理器它们功能包括: 加、减、乘、除算术运算加1、减1运算十进制数调整 位操作置1、清
交换指令(5条)这5条指令的功能是把累加器A中的内容与源操作数所指的数据相互交换。XCH A,Rn;(A)←→(Rn)累加器与工作寄存器Rn中的内容互换XCH A,@Ri;(A)←→((Ri))累加器与工作寄存器Ri所指的存储单元中
MSC-51 3字节和4字节浮点数计算程序,主要用于数据采集及上传,经过IEEE转换,在上位机直接显示.;这是本人使用的MSC-51 3字节和4字节浮点数计算程序,主要用于数据采集及上传,经过IEEE转换,在上位机直接显示。;本人
单片机的复位操作使单片机进入初始化状态,其中包括使程序计数器PC=0000H,这表明程序从0000H地址单元开始执行。单片机冷启动后,片内RAM为随机值,运行中的复位操作不改变片内RAM区中的内容,21个特殊功能寄存器复
2个8位方式。工作方式3只适用于定时器0。如果使定时器1为工作方式3,则定时器1将处于关闭状态。当T0为工作方式3时,THo和TL0分成2个独立的8位计数器。其中,TL0既可用作定时器,又可用作计数器,并使用原T0的所有控制
指令总数:111条操作码:255个助记符:48个表3-1 MCS-51指令分类数据传送指令(29)数据处理指令(48)位操作指令(12)程序控制指令(22)1)内部传送(16)2)外部传送(4)3)查表(2)4)交换(5)5)栈操作(2)1)算术运算(24)2)逻辑运
堆栈操作类指令(2条)这4类指令的作用是把直接寻址单元的内容传送到堆栈指针SP所指的单元中,以及把SP所指单元的内容送到直接寻址单元中。这类指令只有两条,下述的第一条常称为入栈操作指令,第二条称为出栈操作指
以寄存器Rn为目的操作数的指令(3条)这3条指令的功能是把源操作数指定的内容送到所选定的工作寄存器Rn中,源操作数不变。有直接、立即和寄存器寻址方式:MOV Rn,data ;(data)→(Rn) 直接寻址单元中的内容送到寄
我们平常老是讲8051,又有什么8031,现在又有89C51,89s51它们之间究竟是什么关系?MCS51是指由美国INTEL公司(生产CPU的英特尔)生产的一系列单片机的总称,这一系列单片机包括了好些品种,如8031,8051,8751,8032
查表指令(2条)这组指令的功能是对存放于程序存储器中的数据表格进行查找传送,使用变址寻址方式:MOVC A,@A+DPTR;((A))+(DPTR)→(A) 表格地址单元中的内容送到累加器A中MOVC A,@A+PC;((PC))+1→(A),
;闪烁显示等待键入子程序;功能:R1指向闪烁位地址,等待键入,并返回键值;占用:A,B,R0,R5;入口:R1出口:AORG0150HCURSOR:MOVR0,#3FH;R0指向显示缓冲区CUR_0:MOVB,@R1;R1指向闪烁位地址CUR_1:MOV@R1,BJNCCUR_3MO
LCALLaddr16;长调用ACALLaddr11;绝对调用1.LCALLaddr16;转移范围64KB,不影响标志位。执行中自动完成如下过程:(PC)(PC)+ 3(SP)(SP)+ 1((SP))(PC7 ~ 0), 保护断点地址低字节;(SP)(SP)+ 2((