A. 430单片机时钟问题
2417和149的区别可以到相关网站上查看它们的资料,比较全。
软件模拟spi和i2c,首先要了解它们的协议,比如spi会用到哪些线,到时候可以通过编程来模拟时序图中时钟线和片选线的上升和下降,在上升沿和下降沿中进行写DIN脚和读DOUT脚等操作。
B. 求单片机试题答案
21-25:ADBCC(或上0f,肯定是高4位不变,低4位变F)
26:B(工作在方式2,肯定不会选C)
27:D(JB 为1时转移,记数满后TF0置1)
28:D(T1中断地址)
29:C(开总中断,开外部中断0)
30:C(抄的楼上的,我忘了怎么算)
31:B
32:B(用作地址指针)
33:B
34:D(LCALL调用子程序,要保护现场,子程序完成后再返回,会影响SP)
35:C(SJMP无条件,LCALL,ACALL不是跳转,是调用子程序,DJNZ要有条件)
36:D(或上0b1000000,最高位为1,其它不变)
37:A
38:A(响应外部中断0后PC为外部中断0的入口地址0x0003)
39:A(EA为总中断,置1时开总中断)
40:外部中断0和1
C. 单片机试题,高分求助大侠们帮帮忙吧,急用..........
2、× 4、× 5、×6、对7、错 8、× 9、对 10、对 11、对 12、错 13、对 15、对
D. 单片机试题
1、C. MOV A,R0
2、B. 拍 (单片机工作是在统一的时钟脉冲控制下一拍一拍地进行的。)
3、D.一个能自动加1计数的ROM(PC用来存放下一条要执行的指令地址。取指时,PC会自动加一,即指向下一条指令。)
4、B.OV(溢出标识) A.CY(进位标识)
5、C.13 (8k=8*1024=2*³2¹º =2¹³)
6、B.TMOD(工作方式控制寄存器,用来设定定时器/计数器T0、T1的工作方式。)
7、A.关中断,保护现场,开中断,中断服务,关中断,恢复现场,开中断,中断返回
8、D.下降沿(RST由高电平下降为低电平后,系统从0000H地址开始执行程序。)
9、C.EPROM (UV-EPROM[紫外线擦除可编程],人们常把UV-EPROM称为EPROM 。)
10、C.SETB TR0(执行TRO=1后,定时器0开始定时。)
11、A. 掩膜ROM(其中X是程序存储器形式选择,当X=0时,选择Mask ROM[掩膜ROM],当X=7时,选择EPROM[紫外线可擦除ROM]。)
12、C.循环程序
13、A.0 (串行口工作方式0下,串行口昨晚同步以为寄存器使用。移位数据的发送和接受以8位为一帧,不设起始位和停止位,低位在前高位在后。)
14、 B. A (变址寻址,即基址寄存器加变址寄存器间接寻址方式,它以为程序计数器PC或数据指针DPTR作为基址寄存器,以累加器A作为变址寄存器,这二者内容之和为有效地址。)
15、C. 13(与题5重复。)
16、 D. PUSH A(格式:PUSH direct 。在指令系统中累加器的助记符为A,作为直接地址时助记符为ACC。)
17、B.分支程序(分支程序有两种结构,if 和 switch 。)
18、A.0000H(PC复位状态0000H)
E. 单片机试题
10、完成某种操作可以采用几条指令构成的指令序列实现,试写出完成以下每种操作的指令序列。
(1)将R0的内容传送到R1;
MOV A,R0
MOV R1,A
(2)内部RAM单元60H的内容传送到寄存器R2;
MOV R2,60H
(3)外部RAM单元1000H的内容传送到内部RAM单元60H;
MOV DPTR,#1000H
MOVX A,@DPTR
MOV 60H,A
(4)外部RAM单元1000H的内容传送到寄存器R2;
MOV DPTR,#1000H
MOVX A,@DPTR
MOV R2,A
(5)外部RAM单元1000H的内容传送到外部RAM单元2000H。
MOV DPTR,#1000H
MOVX A,@DPTR
MOV DPTR,#2000H
MOVX @DPTR,A
11、若(R1)=30H,(A)=40H,(30H)=60H,(40H)=08H。试分析执行下列程序段后上述各单元内容的变化。
MOV A,@R1 ;(A)=60H 其余不变
MOV @R1,40H ;(30H)=40H 其余不变
MOV 40H,A ; (40H) =60H 其余不变
MOV R1,#7FH ;(R1)=7FH 其余不变
12、若(A)=E8H,(R0)=40H,(R1)=20H,(R4)=3AH,(40H)=2CH,(20H)=0FH,试写出下列各指令独立执行后有关寄存器和存储单元的内容?若该指令影响标志位,试指出CY、AC、和OV的值。
(1)MOV A,@R0 ; (A)=2CH 其余不变
(2)ANL 40H,#0FH ;(40H)=0CH
(3)ADD A,R4; AC=1,OV=0,CY=1,(A)=22H
(4)SWAP A ;(A)=8EH
(5)DEC @R1 ; (20H)=0EH
(6)XCHD A,@R1 ;(A)=EFH,(20H)=08H
13、若(50H)=40H,试写出执行以下程序段后累加器A、寄存器R0及内部RAM的40H、41H、42H单元中的内容各为多少?
MOV A,50H ;(A)=40H
MOV R0,A ;(R0)=40H
MOV A,#00H ;(A)=00H
MOV @R0,A ;(40H)=00H
MOV A,3BH ;?是不是写错了?应该是#3BH吧,如果是#3BH的话,就是(A)=3BH
MOV 41H,A;同上#3BH的话,(41H) =3BH
MOV 42H,41H ;类推(42H)=3BH
为什么说布尔处理功能是80C51单片机的重要特点?
80C51单片机有哪几种寻址方式?各寻址方式所对应的寄存器或存储器空间如何?
答:布尔处理功能对位地址空间具有丰富的位操作指令。使数据的使用和传送更为方便快捷了。
1。立即寻址 对应的是立即数
2。直接寻址 对应的寻址范围仅限于片内RAM
3。寄存器寻址 对应的寻址范围包括4个寄存器组共32个通用寄存器和部分特殊功能寄存器
4。寄存器间接寻址 对应的寻址范围包括片内RAM低128单元,片外RAM64KB和堆栈区
5。相对寻址 由指令中给出的操作数决定
6。变址寻址 只能对程序存储器进行寻址
F. 430单片机知识
Io配置的知识:
推挽输出与开漏输出的区别:
>>推挽输出:可以输出高,低电平,连接数字器件。
输出 0 时,N-MOS 导通,P-MOS 高阻 ,输出0。
输出 1 时,N-MOS 高阻,P-MOS 导通,输出1(不需要外部上拉电路)。
>>开漏输出:输出端相当于三极管的集电极. 要得到高电平状态需要上拉电阻才行. 适合于做电流型的驱动,其吸收电流的能力相对强(一般20ma以内).
输出 0 时,N-MOS 导通,P-MOS 不被激活,输出0。
输出 1 时,N-MOS 高阻, P-MOS 不被激活,
输出1(需要外部上拉电路);此模式可以把端口作为双向IO使用。
G. 一个关于430单片机,程序语句的问题,请各位多多指教
这个问题,我也曾经是很难理解,这里牵涉到两个概念
1,|= 和 = 的基本区别
2,UCSCTL4 在上面的两个方式下会发生什么不一样的变化
这样回答你把,可能比较好理解
1,对于 |= 和 = 的基本区别
直接等于的话,是会把原来的UCSCTL4 的值给抹掉,然后再赋给一个全新的值,就是说和原来的值没有任何关系了。
但是|= 呢,和原来的值有直接的关系,只是拉高了 等于 号后面对应位为1的值,而等于号后面位原来为0的值还是0,原来为1的值还是1,举个例子
UCSCTL4 = 0x1F; // (0b1000 1111)
UCSCTL4 = 0x11;
上面的那句话执行之后,就和开始的值为0x1F值没有任何关系了,最后得到的值就是 0x11;
UCSCTL4 = 0x8F;
UCSCTL4 = 0x11; //(0b0001 0001)
这个执行之后,就和原来的0x1F有关系,实际上就做了一个位运算
0b1000 1111
0b0001 0001 ,拉高最后一位,以及倒数第5位和倒数第8位
-----------------
0b1001 1111
最后的值是 0x1F,原来的倒数第8,3,2位,因为和0一起运算,所以本身是1,最后还是1;
2,UCSCTL4 在上面的两个方式下会发生什么不一样的变化,现在你大概能够明白了把,如果把(SELA__XT1CLK+SELS__XT1CLK + SELM__XT1CL)看成我们上面例子的0x11 的话,那么最后的结果,对于两种运算方式来说,一种是和原来的值有关系,一种是和原来的值没有关系。
H. 430单片机编程
用P口的几个IO帧控制步进电机就可以啊,速度和步进电机输入脉冲频率有关系,只要设置一个定时器周期改变IO口输出正反即可,修改定时器的定时时间就能改变步进电机的速度了。