关于c51单片机的问题
宏错了,去掉等于号
1、徐汉斌版单片机微型计算机原理教材P144上说“中断服务程序最后一条指令必须是中断返回指令RETI”,
这句话是不是错了?
如果最后一句话是跳转指令不是也可以么,只不过程序不会回到断点处罢了,PC也会填充跳转处PC地址
--写跳转指令、或者写其它什么指令,都行,随你便。单片机都会执行。
--只是,单片机没有执行 RETI 指令,中断程序就没有结束。
--如果,你不写 RETI,中断后,单片机就永远处于中断程序之内。
2、在方式0定时器T0的初值为1E0CH,则TH0,TL0的初值分别为()
这题答案给的居然是F0H、0CH,我觉得分明是1EH、0CH啊,是不是答案错了
--写成二进制:1E0CH = 0001 1110 0000 1100B
--取其低 13 位,写成高八位、低五位:11110000、01100
--方式0的初值,就应该是:F0、0C。
3、”MCS 51的程序计数器PC不能被用户使用,因为他没有地址“,
首先,不能被用户使用指的收拾什么?其次,它没有地址那他到底在哪?
--PC 的数值,时时刻刻,在自动加一,这个特点,用户对其,不可控制。
--但是,用户,可以用 JMP 指令,改变 PC 的数值。
--说 PC 不能被用户使用,实际上是他不会用。
--51 单片机里面,确实没有 PC 的地址,因为,谁都不需要这个地址。
4、MOV 20H,@DPTR 这个语句错了是因为DPTR只能用于片外寻址么
--这个指令,并不存在。
DPTR只能用于片外寻址么
--查一下指令表,就知道了。
5、”80C51单片机子程序调用时能自动保护断点和现场“,
这句话错了是不是因为只能自动保护断点不能自动保护现场?
--中断时,51 单片机,采用压栈的方法,自动的保护断点地址。
--保护现场 ?
--单片机,不知道你的现场是什么。
--把单片机和保护现场联系在一起,就是狗戴嚼子,胡勒!
6、MOV A,#33H 是把33H当成无符号数吧?那么如果我想移入一个带符号数呢
就写上负号即可。
MOV A, #-33H
这就行了。
7、向前转移的偏移量为什么等于(目的地址+0100H)-(原地址+3),0100H是什么?
--编写程序,现在都用编译软件来进行编译。
--编译软件,会自动计算程序中的偏移量。
--编程人,根本不用讨论偏移量的计算,以及推导公式。
--有些教材,作者的思维,还停留在人工编译的阶段,抱残守缺,不用理他。
--0100H,是256。
位操作中将某位设置为1--置位;在某种进制下的运算时,对应为的运算结果超出此进制上限向上一高位递增1--进位
51系列单片机分为传统的AT89C51系列的单片机,这类单片机需要的最小系统连接如下:
1:电源,也就是你所说的20脚GND,40脚VCC,注意40脚接上去耦电容。
2:时钟电路,18脚和19脚连接无缘晶体(常用12Mhz,11.0592Mhz)
3:复位电路,9脚接电阻电容。
4:(可选)储存选择电路,EA引脚通过上拉电阻连接到VCC。
5:(可选)P0.0到P0.7接上拉电阻到VCC。
如果是现代的单片机,例如STC公司生产的STC15W系列,那么只需要接:
电源,18,19脚接GND和VCC,注意VCC接上去耦电容,即可。
51单片机C51语言的几个问题。
因此,sbit a=PP^2;是完全正确的。问题3:bit是单片机中的一个关键字,用于声明位变量。它的作用和bool类型相似,都是为了进行两种状态的判断,并且节省存储空间。因此,可以将bit理解为bool的另一种形式。
关于C51单片机单片机的几个问题
1、徐汉斌版单片机微型计算机原理教材P144上说“中断服务程序最后一条指令必须是中断返回指令RETI”,这句话是不是错了?如果最后一句话是跳转指令不是也可以么,只不过程序不会回到断点处罢了,PC也会填充跳转处PC地址 --写跳转指令、或者写其它什么指令,都行,随你便。单片机都会执行。--只是,单...
51单片机C51语言的几个问题。
sbit在问题1中说的很清楚了,就是为某一位起别名,sfr 这个关键字在reg52.h头文件中出现很多 它是单片机开发商把特殊功能寄存器的物理地址映射到一个宏上面,这样的话就可以对寄存器操作了,你自己可以改动,比如reg52.h中的sfr P0 = 0x80;你改为sfr PP=0X80; 那么单片机上的P1口(起名P1口...
关于c51单片机的,问题是第一个按一下计数一次,第二个按键根据第一个按键...
是你的按键没有去抖动造成的,只要在按键是否按下语句后加上“while(P2==0xfe);”语句即可:if(P2==0xfe){ while(P2==0xfe);j=baocun;j++;baocun=j;}
C51 单片机问题求解答
P3=0X78;P2=0X80;P1=0X90;
单片机 C51的一段程序问题
sbit CKPIN=P0^0; \/\/检测引脚 void main(void){ unsigned char buf;while(1){ buf=P3; \/\/读P3的值到buf中 if(CKPIN)P1=buf&0x0f;\/\/如果P0.0等于1,则P1的低4位置为buf的值,高4位为零 else P1=buf; \/\/如果P0.0等于1,则P1=buf } } \/\/1.P1的低四位=P3的低四...
请问C51单片机的这道选择题怎么做?
1)要对外部信号电平持续时间进行计数,就需要到内部计数脉冲信号,所以 C\/T=0;2)要用外部信号来启动定时\/计数器,就要令 GATE=1;3)因此从给出的选项看,只有 80 和 09 符号要求;80 是启动 定时器1,方式0,13位计时计数器 (8192)09 是启动定时器0;方式1,16位计时计数器 (65536)...
C51单片机入门编程问题
1、你不要想它怎么关联的,它就是一种固定的写法,语法就这样。你只能这样写,也当你写成这样的时候,编译器会认得出来它代表什么的,写成其它的话,编译就会报错了。所以不要再纠结这个问题。语法这样定的,遵守就行了。2、0xfe不是什么地址,就是个简单的赋值,OutData就是等于0xfe。OutData要是...
51单片机 的一点问题
提供一点思路:汉字取模:可以按竖着取,每一列1byte,作为数据线,把所有个列的数据存成数据表;列的控制作为地址线;根据汉字个数和刷频率设定地址线的刷新速度并把相应的数据送到数据线上去;至于滚动么无非就是改变地址线和数据线的对应关系;L的翻转和倒置:(1)存四个方向的四个字库,对按键...
51单片机的编程问题?
C51语句: P0_0 = 1;P0_0声明为sbit,因此编译成:setb 80h,这将把位地址空间的0x80地址的bit的值置1。这个位正是P0口的bit0,执行后,P0.0将输出高阻态。而P0.1-.7不会变化。2:C51为什么要嵌套汇编 51单片机一个显著优点就是指令执行时间固定,因此可以适应时序要求严格的场合。例如符合...
金骨乳酸: 置位就是把某位设为1,进位就是加法结果向高位进一
宁夏回族自治区13629328197: 关于c51单片机的问题 - ?
金骨乳酸: 不用的引脚可以悬空,实现LED点亮,可以用一个IO口就可以了,比如P1.0接LED接一个限流电阻再接电源正就可以.
宁夏回族自治区13629328197: c51单片机中各个周期的问题 - ?
金骨乳酸: 用C写延时程序不好计算的,计算出的也只是一个近似值,误差比较大,如果不是精确延时,可以用计算一次循环的指令周期数.用汇编可以做精确的延时:12MHZ下一个机器周期是1us,一个指令周期一般是1--4个us. delay:MOV R3,#XXH...
宁夏回族自治区13629328197: 单片机C51编程中bdata的问题 - ?
金骨乳酸: 在51中的位变量包含2类,一类是特殊功能寄存器中的可位寻址的位,比如EA,TR0等;这部分位在C中通过sbit来特殊声明,比如sbit Beep=P1^0; ;另一种即为bdata存储模式的位变量. bdata是布尔变量的存储方式,表示位变量存储在位于单...
宁夏回族自治区13629328197: c51单片机问题??
金骨乳酸: 首先看看你用的是pnp型三极管还是npn型三极管.pnp的是b极接单片机输出口,e极接扬声器的负极,扬声器正极接电源,c极接地.npn的b极一样,c极接扬声器负极,e接地.
宁夏回族自治区13629328197: C51单片机C语言编程的问题 - ?
金骨乳酸: 问题出现编译器把计算后的值直接送到P1了,a值没有更新 你程序的还有个问题在于更新P1口后需要延时至少0.5秒,否则你是不可能看到LED有闪烁的修改办法,2种 1把a声明成全局变量 2把while全改成for
宁夏回族自治区13629328197: 关于C51单片机的计数问题 - ?
金骨乳酸: 不知道你的计数依据是什么!一个16位的变量最多计数65536,要记到100万,可以定义15个16位变量(在RAM允许的情况下),当一次计数触发,从第一个变量开始计数,当记到最大即65536时,该变量清零,下一个变量开始计数,当记到...
宁夏回族自治区13629328197: C51单片机学习板的问题 - ?
金骨乳酸: 是的,学习板做实验时是写到外面的EEPROM或FLASH中,而没有写到单片机里,因为单片机擦写几百到几千次就不行了.
宁夏回族自治区13629328197: 关于C51单片机的汇编程序的中断产生问题 - ?
金骨乳酸: 雨过晴天二世,你好: 1.设低电平触发与边沿触发有什么不同? 答:外部中断INT0 和INT1 可根据寄存器TCON 中的IT0 和IT1 位状态分别设置为电平或者边沿触发实际产生的中断标志是TCON 中的位IE0 和IE1 当产生外部中断时如果是边沿触发...
宁夏回族自治区13629328197: C51单片机程序问题 - ?
金骨乳酸: 详细点的就是说,比如你用P0和P2来扩展外部ram(就是用P0和P2与62256对应的管脚相连接),假设你的P2.7接WR,P2.6接RD,P2.5接CS,那么就可以确定个外部RAM的一个地址,想往外部RAM的一个地址写一个字节时,地址可以定为...