标准的C语言中没有空语句。但在单片机的C语言编程中,经常需要用几个空指令产生短延时的效果。这在汇编语言中很容易实现,写几个nop就行了。在keil C51中,直接调用库函数:#include // 声明了void _nop_(void);_nop_(); // 产生一条NOP指令作用:对于延时很短的,要求在us级的,采用“_nop_”函[详细]
我说的是单片机C,书上的延时是这样的,如: void delay02() { unsigned char i,j,k; for(i=2;i>0;i--) for(j=200;j>0;j--) for(k=250;k>0;k--); } 它的时间是:2usX250X200X2=200 000us=0.5s 而这个时间是不精确的,我在家[详细]
C程序中可使用不同类型的变量来进行延时设计。经实验测试,使用unsigned char类型具有比unsigned int更优化的代码,在使用时应该使用unsigned char作为延时变量。 以某晶振为12MHz的单片机为例,晶振为12MHz即一个机器周期为1us。一. 500ms延时子程序程序:void delay500ms(void){unsigned char i,j,k;fo[详细]
I2C和SPI各有什么特点?答:I2C总线是二线制,采用器件地址的硬件设置方法,通过软件寻址完全避免了器件的片选线寻址方法,从而使硬件系统具有简单灵活的扩展方法。I2C总线简单,结构紧凑,易于实现模块化和标准化。SPI是Motorola公司推出的一种同步串行通讯方式,是一种三线同步总线。有多个SPI接口的单片机时[详细]
什么是寻址方式?答:指令给出参与运算的数据方式称为寻址方式。换句话说,寻址方式就是寻找确定参与操作的数的真正地址。MCS-51单片机共有哪几种寻址方式?答:在MCS-51系列单片机的指令系统中寻址方式共有7种,如表4-1所示。表4-1 MCS-51系列单片机指令系统的寻址方式 [详细]
UCSRC寄存器结构:UBRRH寄存器结构:AVR单片机UART的UCSRC和UBRRH两个寄存器是共用地址的,通过最高位的URSEL来选择更新哪个数据。比如写UCSRC=0x86,那么0x86的最高位Bit7=1,所以这组数据会更新UCSRC的值写UBRRH=0x01,那么0x01的最高位Bit7=0,所以这组数据会更新UBRRH的值无需专门更新URSEL的值。如[详细]
工作寄存器有4组,每组都是8个工作寄存器R0~R7,通过PSW中的RS1、RS0两位来选择使用哪一组,如果不选,默认是选择第0组。RS1RS0组合为00时,选中第0组工作寄存器,R0~R7地址为00H~07H;RS1RS0组合为01时,选中第1组工作寄存器,R0~R7地址为08H~0FH;RS1RS0组合为10时,选中第2组工作寄存器,R0~R7地址为10H~17[详细]
一、数据类型我们51单片机使用的C语言的数据类型分为以下几种:图 1图1中例出了C51所有的基本类型,可供大家参考。二、储存器类型我们51单片机使用的C语言的存储器类型分为以下几种:图 2图2例举出了C51所有的存储器类型,可供大家参考。 [详细]
MCS-51的存储器可分为四类:程序存储器一个微处理器能够聪明地执行某种任务,除了它们强大的硬件外,还需要它们运行的软件,其实微处理器并不聪明,它们只是完全按照人们预先编写的程序而执行之。那么设计人员编写的程序就存放在微处理器的程序存储器中,俗称只读程序存储器(ROM)。程序相当于给微处理器处理问[详细]
特点:哈佛结构,程序存储器与数据存储器分开,两者各有一个相互独立的64K(0x0000 ~ 0xFFFF)的寻址空间(准确地说,内部数据存储器与外部数据存储器不是一回事)。程序存储器:① 用于存放程序(可执行的二进制代码映像文件,包括程序中的数据信息),还包括初始化代码等固件。② 为只读存储器。注意,这里的&[详细]

扫码关注我们
0755-82591179
邮箱:ivy@yingtexin.net
地址:深圳市南山区桃源街道平山社区平山一路2号南山云谷创业园二期11栋410-411

Copyright © 2014-2026 颖特新科技有限公司 All Rights Reserved. 粤ICP备14043402号-4