MCS-51单片计算机内部设置的两个16位可编程的定时器/计数器T0和T1,它们均有定时和计数功能。T0和T1的工作方式功能选择、定时时间、启动方式等均可以通过编程对相应特殊功能寄存器TMOD和TCON的设置来实现的,计数器值也由软件命令设置于16位的计数寄存器中(TH0、TL0或TH1、TL1),计数器的工作是加1
在单片机系统中主要有两类数据传送操作,一类是单片机和存储器之间的数据读写操作;另一类则是单片机和其它设备之间的数据输入/输出(I/O)操作。单片机和存储器之间的连接十分简单,主要包括地址线、数据线、读写选通信号。 单片机与控制对象或外部设备之间的数据传
1、外部程序存储器的扩展原理及时序MCS-51单片机扩展外部程序存储器的硬件电路如图所示。从图中可以看出,在进行系统扩展时采用的是总线结构。数据总线是由P0口提供;地址总线由P0口和P2口共同提供;控制总线用专用的控制信号。 MCS-51单片机访问外部程序存储器所使用的控制信号有:ALE和PSEN。其中ALE是
1、串行口方式0 在方式0下,串行口为同步移位寄存器方式,波特率固定为 /12。这时的数据传送,无论是输入还是输出,均由RxD(P3.0)端完成,而由TxD(P3.1)端输出移位时钟脉冲。发送和接收一帧的数据为8位二进制,不设起始位和停止位,低位在前,高位在后。一般用于I/O口扩展。 2、串行口方式1 在方
1、时间太长,记不清在哪个项目里遇到的,指向code区数组的指针也要加 code 关键字声明。比如 unsigned char code arr[30]; 数组,要用指针指向它,要把指针也声明成 unsigned charcode*p;后来使用发现其它很多地方使用是不需要这样声明的,只要 unsigned char *p;就行了,但是清楚地记得那次确实是要加 code
在8031单片机应用系统中,静态RAM是最常见的,由于这种存储器的设计无需考虑刷新问题,因而它与微处理器的接口很简单。最常用的静态RAM芯片有6116(2kB×8)、6264(8kB×8)、62128(16kB×8)、62256(32kB×8)等多种,它们都用单一+5V供电,双列直插封装,6116为24引脚封装,6264、62128、62256为28引脚封装
MCS-51单片机的典型芯片是8031、8051、8751。8051内部有4 KB ROM,8751内部有4KB EPROM,8031内部无ROM;除此之外,三者的内部结构及引脚完全相同。因此,以8051为例,说明本系列单片机的内部组成及信号引脚。 1) 中央处理器(CPU) &nbs
1、串行口的结构MCS-51串行口结构框图示于图。由图可见 MCS-51单片机串行口主要由两个物理上独立的串行数据缓冲寄存器SBUF、发送控制器、接收控制器、输入移位寄存器和输出控制门组成。两个特殊功能寄存器SCON和PCON用来控制串行口的工作方式和波特率。发送缓冲寄存器SBUF只能写,不能读;接收缓冲寄存器SBUF
中断响应:1.响应条件CPU响应中断的条件有:①有中断源发出中断请求;②中断总允许位EA=1,即CPU开中断;③申请中断的中断源的中断允许位为1;满足以上条件,CPU响应中断;如果中断受阻,CPU不会响应中断。2.响应过程单片机一旦响应中断,首先置位响应的优先级触发器,然后执行一个硬件子程序调用,把断点地址