版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
习题参考解答 ORG 0000H AJMP MAIN ORG 0100H MAIN: MOV 30H,#34H ;存第一个加数 MOV 31H,#12H MOV 40H,#78H ;存第二个加数 MOV 41H,#56H MOV A,#30H ADD A,#40H ;加低字节 MOV 50H,A ;保存结果 MOV A,#31H ADDC A,#41H ;加高字节 MOV 51H,A ;保存结果 END2-2编制完整的汇编语言程序实现如下功能:在内部RAM的60H单元中存放有一个无符号字节数据,求该数据对应的十进制数,将其百位、十位和个位上的十进制数字字符的ASCII码依次存入从61H开始的单元。例如,假设60H单元中存放的数据为7BH,表示的十进制数大小为123,执行程序后,将从61H单元开始依次存放1、2、3的ASCII码,即31H、32H和33H。程序如下: ORG 0000H AJMP MAIN ORG 0100HMAIN: MOV 60H,#7BH MOV A,60H MOV B,#10 DIV AB ORL B,#30H MOV 63H,B ;存个位代码的ASCII码 MOV B,#10 DIV AB ORL A,#30H ;存百位代码的ASCII码 MOV 61H,A ORL B,#30H MOV 62H,B ;存十位代码的ASCII码 END
第3章思考练习3-1填空题(1)在MCS-51单片机中,具有第二功能的并口是P3口。(2)在MCS-51单片机中,存在漏极开路问题的并口是P0口,在用作普通并口时,必须在单片机外部将该并口的各引脚接上拉电阻。(3)MCS-51单片机复位时,所有并口引脚都输出高电平。(4)为了使单片机的P1.7引脚输出低电平,可以使用指令CLRP1.7,为了使P1口的全部引脚输出高电平,可以用指令MOVP1,#0FFH实现。(5)已知P3=0FFH,则执行指令CPLP3.7后,P3.7引脚输出低电平,P3=7FH。(6)在位逻辑运算指令中,目的操作数必须是C。(7)已知某程序中JZLP指令汇编后的机器码为60H、0F0H,存放在ROM中0120H和0121H单元,则当A=00H时,执行该指令将跳转到地址为0112H的单元。(8)已知某程序中DJNZR7,LP指令汇编后的机器码为0DFH、20H,存放在ROM中011EH和011FH单元,则当R7=2和1时,执行该指令后将分别继续执行地址为0140H和0120H单元中存放的指令。40H0AH41H0BH42H00H43H02H40H0AH41H0BH42H00H43H02H44H04H图3-26RAM单元分配(10)已知SP=4AH,则执行LCALL指令后,SP=4CH。(11)已知SP=4AH,则执行RET指令后,SP=48H。(12)已知执行ACALLDLY指令后,内部RAM单元的分配情况如图3-26所示,并且当前栈顶为43H,则该子程序调用指令存放在ROM中地址为01FEH开始的单元。(13)在51单片机中,外部中断利用引脚P3.2或P3.3的第二功能引入单片机。(14)不管响应哪个中断请求,都必须用指令SETBEA开中断,为了响应外部中断0,还需要执行SETBEX0指令。(15)根据中断源所处的位置,51单片机的中断分为内部中断和外部中断两种。3-2选择题(1)在51单片机的4个并口中,具有第二功能的是(D) A.P0 B.P1 C.P2 D.P3(2)当并口用作普通输入口连接一个输入设备时,在程序中应先做的操作是(B) A.输出低电平 B.输出高电平 C.输出 D.开中断 (3)已知P1.7引脚上连接一个LED的阴极,则要点亮该LED,不能执行的指令是(A)。 A.CPL P1.7 B.MOV P1,#7FH C.CLRP1.7 D.ANLP1,#7FH (4)已知P2.0引脚连接了一个LED的阳极,则要点亮该LED,可以用指令(C)实现。 A.CPL P2.0 B.CLRP2.0 C.SETB0A0H D.XRLP2,#1 (5)执行指令CJNEA,#20H,NEXT时,不做的操作是(B)。 A.将A中的数据与常数20H进行比较 B.将A中的数据与20H相减,差存入A C.根据A和常数20H的相对大小,设置C标志位 D.如果A≠20H,则跳转到NEXT标号处(6)已知SP=50H,则执行3次入栈操作和1次出栈操作后,SP=(C)。 A.50H B.51H C.52H D.53H(7)已知SP=50H,则执行子程序中的RET指令后,SP=(D)。 A.50H B.49H C.4FH D.4EH(8)在51单片机中,外部中断1的中断服务程序必须从ROM的(C)单元开始存放。 A.0000H B.0003H C.0013H D.0100H3-3在图3-9中,已知LED-RED的参数如图3-27所示,计算限流电阻R1的阻值。图3-27LED的参数答:R1=(5-2.2)/10=280W3-4简述MCS-51单片机中当并口用作输入口时的基本操作步骤。答:当并口用作输入口时,应先通过并口输出高电平,之后才能读取并口引脚的状态。3-5在本章各案例中,都是用单片机的并口引脚控制LED的阴极电平。如果用并口控制LED的阳极,而将阴极通过限流电阻接地,能否正常控制LED的亮灭?电路(包括元件参数)和控制程序该如何修改?答:考虑到单片机复位时默认情况下各并口都输出高电平,因此在这种情况下,复位时LED将点亮。但在实际系统中,一般都希望刚开始运行时LED是熄灭状态。因此在程序中必须首先由并口引脚输出低电平。此外,单片机并口内部的上拉电阻是弱上拉(阻值只有20W左右),因此还必须外接限流电阻,以避免在点亮时由于电流过大烧毁LED。3-6写出实现下列功能的指令(假设LED都采用共阳极接法):(1)将P1口各引脚连接的所有LED亮灭切换一次;(2)将P1.7~P1.4口连接的4个LED熄灭,另外4个引脚连接的LED保持原来的亮灭状态;(3)要求用字节操作指令将P1.7引脚连接的LED点亮,而其余7个LED的亮灭状态保持不变。答:(1)XRLP1,#0FFH (2)ORLP1,#0F0H (3)ANLP1,#7FH3-7已知常数1000事先已经存入R6(低字节)和R7(高字节),分别分析如下两个循环程序实现的功能。假设单片机的时钟频率为6MHz,执行两个循环分别需要多少时间?(1)NEXT: CLR C ;1个机器周期 MOV A,R6 ;1个机器周期 SUBB A,#1 ;2个机器周期 MOV R6,A ;1个机器周期 MOV A,R7 ;1个机器周期 SUBB A,#0 ;2个机器周期 MOV R7,A ;1个机器周期 ORL A,R6 ;1个机器周期 JNZ NEXT ;2个机器周期(2) LP: MOV A,R7 DEC R7 MOV R2,0x06 ;2个机器周期 JNZ CON ;2个机器周期 DEC R6CON: ORL A,R2 JZ DONE ;2个机器周期 SJMP LP ;2个机器周期DONE: ……答:(1)上述循环实现1000次循环。每次循环需要的时间为(1*6+2*3)*2=24ms,因此循环执行完毕一共需要24*1000=24ms的时间。(2)上述循环实现1000次循环。循环执行完毕所需要的时间为[1000*(1+1+2+2+1+1+2+2)-0E7H-2*0FFH]*2≈22.5ms其中两项减运算是每次循环,当R7没有减到0时,不做DECR6的操作。3-8已知R6=10H,R7=20H,A=00H,SP=40H,执行如下程序段:41H00H42H10H41H00H42H10H43H20HPUSH 06HPUSH 07HPOP 06HPOP 07H(1)当执行完第3条指令后,画出堆栈的存储单元分配图;(2)当执行完上述程序段后,A=00H,R6=20H,R7=10H,SP=41H。3-9如下汇编语言程序段实现的功能是:将内部RAM从地址为30H开始的单元中存放的数据进行累加。当累加和刚超过200时,点亮LED(LED阴极接P1.0)。将程序补充完整,每处横线位置只能填一条指令。 SETB P1.0 ;初始熄灭LED CLR A MOV R0,#30HLP: ADD A,@R0 ;累加 INC R0 CJNE A,#200,NEXT ;累加和超过200?NEXT: JC LP ;否,则继续 CLR P1.0 ;是,则点亮LED3-10如下汇编语言程序段实现的功能是:将内部RAM中30H~37H单元的数据传送到34H开始的单元。将程序补充完整,每处横线位置只能填一条指令。 MOV R0,#37H ;设置目的和源起始地址 MOV R1,#3BH MOV R7,#8 ;设置数据个数LP: MOV A,@R0 ;传送一个字节 MOV @R1,A DEC R0 ;修改地址 DEC R1 DJNZ R7,LP ;循环综合设计3-1编写完整的汇编语言程序实现如下功能(要求加上必要的注释):(1)子程序DISP实现如下功能:根据R0入口参数中的字节数据点亮或熄灭相应的LED灯。例如,假设调用该子程序时R0=0F0H,则点亮L1~L4灯并熄灭L5~L8灯,其中8个LED分别采用共阳极接法与单片机的P2.0~P2.7相连接。(2)主程序中调用上述子程序,从P1口读入开关数据并点亮相应的LED。参见文件p3_1.asm。3-2在ROM中从0200H单元开始存放有20个有符号数,编制完整的汇编语言程序实现如下功能(要求加上必要的注释):(1)统计其中非负数的个数(提示:默认情况下,有符号数在单片机中都用补码表示,负数补码的最高位为1);(2)将统计结果转换为BCD码,并用8个LED显示。假设LED采用共阳极接法与P1相连接。参见文件p3_2.asm。3-3编写子程序实现一个通用延时子程序,延时的时间由子程序的入口参数确定。在主程序中调用该子程序,控制一个LED以不同的时间间隔进行闪烁。例如,亮1s、灭2s、亮1s、……。参见文件p3_3.asm。3-4在51单片机系统中,有两个LED灯L1和L2分别连接在P1.0和P1.1引脚,用两个按钮B1和B2分别作为两个外部中断INT0和INT1,采用中断方式控制两个LED的闪烁。要求初始两个灯都点亮。当按动B1时,L1闪烁,直到按动B2;当按动B2时,L2闪烁,直到按钮B1。(1)画出单片机与LED和按钮的连接电路;(2)编制主程序和中断服务程序。(1)电路原理图参见文件p3_4.pdsprj。(2)程序参见文件p3_4.asm。
第4章思考练习4-1填空题(1)7段共阴极数码管内部由7个LED构成,其阴极接在一起并接com引脚。(2)用共阴极数码管显示某字符所需的字段码为2AH,要在共阳极数码管上显示该字符,需要送入的字段码为0D5H。(3)8位共阳极数码管与单片机并口的连接如图所示,为了在最左侧数码管上显示字符“5”,单片机应该送出的字段码为49H,位选码为10000000B。(4)当74LS48的DCBA端输入0011B时,QG~QA端输出的字段码为1001111B。(5)已知C=0,A=0F0H,执行RLA指令后,A=0E1H,执行RLCA指令后,A=0E0H。(6)对矩阵键盘,通过全扫描按断有无按键按下,通过列扫描实现按键识别。(7)通过列扫描识别按键后,必须等到按键释放才能进行后续操作。(8)在LCD1602液晶显示器中,为了在第1行和第2行的第3列(首列为第1列)分别显示两个字符,在将这两个字符的ASCII码写入之前,必须分别先发送命令字082H和0C2H。(9)在LCD1602中,利用RS信号来区分是写入的命令还是显示数据。(10)设置LCD12864显示以16´16点阵显示字符,要将某字符显示到LCD12864右半屏第2字符行、第3字符列(首行为第0行、首列为第0列),应该发送的页设置命令字为0BCH,列设置命令为70H。4-2选择题(1)要将A中的无符号数除以2,可以选用的指令是(D)。 A.RLA B.RLCA C.RRA D.RRCA(2)指令MOVCA,@A+PC访问的单元在(A)存储区。 A.ROM B.内部RAM C.外部RAM D.不确定(3)指令MOVCA,@A+DPTR中,操作数的寻址方式为(C)。 A.寄存器寻址 B.直接寻址 C.变址寻址 D.寄存器间接寻址(4)在某系统中,8个共阴极数码管的字段码和位选码输入端分别接在P1口和P2口,为了使数码管全部熄灭,可以选用的指令是(B)。 A.ANLP2,#0FFH B.ANLP1,#0 C.XRLP2,#0 D.ORLP1,#0FFH(5)某2×8矩阵键盘中,从左向右8根列线C1~C8依次接在P3.7~P3.0引脚,则为了识别按键是否在C2列,由P3口送出的列扫描码应为(A)。 A.0BFH B.7FH C.40H D.80H4-3在4.1.3节中介绍点阵显示器显示的基本原理类似于数码管的动态扫描显示,其中行码相当于字段码,列码相当于位选码。对图4-14所示8´8点阵显示器,分析说明能否用与数码管类似的静态显示方法进行显示控制。答:行码相当于数码管的字段码,每个字节的行码控制一列点阵的显示,而所有列对应的行码都通过点阵显示器的同一组行线送入,也就是通过单片机的同一个并口送来,因此如果采用静态显示,各列点阵将显示完全相同的图形。而对于实际需要显示的字符或图形,各列所需的行码是各不相同的,必须采用动态扫描显示。4-4有如下循环程序:MAIN: MOV R7,#4 MOV R0,#8 CLR A MOV B,ALP: MOV A,R0 ADD A,#2 MOVC A,@A+PC ADD A,B MOV B,A INC R0 DJNZ R7,LP SJMP $TAB: DB 1,-2,3,-4,-5,6,7,-8(1)分析执行完循环后A、B、R0和R7中的结果分别为多少?(2)分析概括上述程序段实现的功能。(3)如果要求将程序中的MOVCA,@A+PC指令替换为MOVCA,@A+DPTR,修改上述程序实现同样的功能。答:(1)A=0F8H,B=0F8H,R0=0CH,R7=00H(2)实现的功能是将TAB表中第2~5个有符号数进行累加。(3)修改的程序如下:MAIN: MOV R7,#4 CLR A MOV B,A MOV DPTR,#TABLP: MOV A,#1 MOVC A,@A+DPTR ADD A,B MOV B,A INC DPTR DJNZ R7,LP SJMP $TAB: DB 1,-2,3,-4,-5,6,7,-84-5编制程序段实现如下功能。(只需要写出实现具体功能的部分代码!)(1)将内部30H和31H单元中存放的16位无符号数除以2,假设30H单元存放的是高8位,31H单元存放的是低8位。要求用移位指令实现,不使用DIV指令,不考虑余数。 CLR C ;清除C标志位 MOV A,30H RRC A ;高8位除以2,余数存入C MOV 30H,A MOV A,31H RRC A ;低8位除以2 MOV 31H,A (2)将内部RAM的30H单元中的无符号数除以8,并放回原位置。要求用移位指令实现,不使用DIV指令,不考虑余数。 MOV R7,#3 ;设置循环次数 MOV A,30HLP: CLR C RRC A ;每循环一次,除以2 DJNZ R7,LP MOV 30H,A ;保存结果(3)在内部RAM的40H单元中存放有一个字节数据,统计其中有多少个1码和0码,结果分别存入R0和R1。 MOV R0,#0 ;1码的个数初始化为0 MOV R1,#0 ;0码的个数初始化为0 MOV A,40H ;数据存入A RLC A JNC ZERO ;检测到一位0码,则跳转 INC R0 ;否则,1码个数加1 SJMP DONE ZERO: INC R1 ;0码个数加1DONE: SJMP LP综合设计4-18个共阴极数码管上的段选端与单片机的P1口相连接,位选码接P3口。编写程序实现将同一个字符每隔20ms从左向右循环滚动显示。原理图如图所示:完整的汇编语言程序只需要在案例程序p4.1_2.asm的基础上改动得到,参见文反面p4_1.asm。4-2矩阵键盘也可以采用中断方式进行扫描。具体步骤是:有任一键按下时,向单片机发出中断请求。单片机响应后,在中断服务程序中实现列扫描和按键识别。对图4-12所示4´4键盘,要求其行线和列线分别与P1口的高四位和低四位相连接,键盘的中断请求信号由P3.3引脚送入单片机。(1)画出单片机与键盘的连接线路图;(2)编制主程序和中断服务程序,将从键盘输入的各按键键码滚动存入内部RAM中30H开始的键盘输入缓冲区。原理图如下,程序参见文件p4_2.asm。图4-318´16点阵显示器图4-318´16点阵显示器答:两个8´8点阵显示器的行线接在一起,并与单片机的P1相连接;列线分别与单片机P3和P2相连接。程序参见文件p4_3.asm。4-4根据图4-26所示电路连接,编写一个通用子程序DISP,实现在LCD12864的任意位置(第几行、第几列)以8(宽)´16(高)点阵显示指定的0~9数字字符,并在主程序调用。参见文件p4_4.asm
第5章思考练习5-1填空题(1)MCS-51单片机的P3.5工作在第二功能时称为T1信号引脚,用于输入定时/计数器所需的计数脉冲。(2)MCS-51单片机的P3.2工作在第二功能时称为INT0信号引脚,通过该引脚输入的信号可以作为定时/计数器的门控信号。(3)要设置定时/计数器T0工作在方式1的计数方式,允许门控;设置定时/计数器T1工作在方式2的定时方式,禁止门控,相应的指令为MOVTMOD,#00101101B。(4)在程序中,指令JNBTF1,$实现的功能是等待定时/计数器T1出现计数溢出。(5)已知单片机的时钟频率为6MHz,设置TMOD=01000000B,要用定时/计数器T0实现2ms定时,则应设置TH0=0E0H,TL0=18H。(6)已知串口每秒传送1000个字符,每个字符由1位起始位、8位数据位和1位停止位构成,则波特率为10kbit/s,传输一位二进制所需的时间为0.1ms。(7)利用串口进行数据的收发时,发送和接收的数据都在SBUF中。(8)通过串口发送数据之前,必须用指令将TI位复位,否则无法发送数据。当数据发送完毕,该位会自动置位。(9)51单片机从串口读走接收到的数据后,必须用指令将RI位复位。当串口接收到下一个数据时,该位会自动被置位。(10)当单片机需要通过串口接收数据时,必须在初始化时将REN位置位。(11)RS-232C串行通信接口标准采用负逻辑电平,即逻辑1用-3V~-15V电平表示,逻辑0用+3V~+15V表示。(12)51子系列单片机有2个外部中断和3个内部中断。(13)在51单片机中,不管要使用哪个中断,都必须用指令SETBEA开中断。(14)51单片机将所有中断的优先级分为两组,即高优先级和低优先级。5-2选择题(1)要使定时/计数器T0停止计数,可以选用的指令是(D)。 A.CLRIT0 B.CLRTF0 C.CLRIE0 D.CLRTR0(2)定时/计数器T1用作计数功能时,计数脉冲由(A)提供。 A.P3.5引脚 B.P3.4引脚 C.P0.0引脚 D.内部时钟电路(3)已知51单片机时钟频率为12MHz,要利用定时/计数器工作在方式1实现1ms定时,所需的计数初值为(B)。 A.03E8H B.0FC18H C.0FCH D.18H(4)要允许用启动定时/计数器T0的计数,则必须将TMOD中的(C)。 A.位置位 B.位复位 C.GATE位置位 D.GATE位复位(5)要利用SETBTR0启动定时/计数器T0的计数,必须将TMOD中的(A)。 A.位置位 B.位复位 C.GATE位置位 D.GATE位复位(6)采用查询方式检测到定时/计数器T0计数溢出时,计数溢出标志位TF0应(D)。 A.由硬件自动复位 B.由硬件自动置位 C.用程序指令置位 D.用程序指令复位(7)当定时/计数器T1计数溢出时,TF1=(B)。 A.0 B.1 C.0FFH D.当前计数值(8)要从串口读入接收到的数据,可以选用的指令是(C)。 A.MOVA,DPTR B.MOVA,SCON C.MOVA,SBUF D.MOVA,TCON(9)51单片机串口发送数据的顺序是(A)。 ①数据送SBUF ②硬件自动将TI置位 ③通过P3.1引脚串行发送一帧数据完毕 ④用软件将TI复位 A.①③②④ B.①②③④ C.④③①② D.③④①②(10)51单片机串口接收数据的顺序是(B)。 ①从P3.0接收一帧数据后,硬件将RI置位 ②用软件将RI复位 ③从SBUF读取接收到的数据 ④REN位置位 A.①②③④ B.④①②③ C.④③①② D.③④①②(11)串口工作在方式0时,P3.1引脚传送的是(C)。 A.发送的数据 B.接收的数据 C.同步时钟 D.空闲(12)51单片机串口适合用于点点双机通信的工作方式是(B)。 A.方式0 B.方式1 C.方式2 D.方式3(13)下面有关串口功能的描述,错误的是(D)。 A.将发送的并行数据转换为串行数据 B.在发送的串行数据中自动人添加起始位和停止位 C.一帧数据接收完毕将RI置位 D.接收到的数据由CPU读走后,自动将TI复位(14)51单片机复位后,下列中断源中默认优先级最低的是(B)。 A.外部中断 B.串口中断 C.定时/计数器T0中断 D.定时/计数器T1中断(15)当CPU相应定时/计数器T0中断时,PC中自动装入的值是(B)。 A.0003H B.000BH C.0013H D.001BH(16)下面有关中断优先级的描述,错误的是(C)。 A.每个中断源都有两个优先级B.低优先级的中断处理可以被高优先级打断C.相同优先级的中断,可以按照默认优先级实现嵌套处理D.复位后,所有中断都属于低优先级5-3简述定时和计数功能的主要区别。答:何一个计数器都可以实现计数和定时功能,二者基本的区别在于计数脉冲是已知频率和周期的,还是频率和周期未知或者不确定的。如果计数脉冲是频率恒定的时钟脉冲,则一般用于实现定时。如果计数脉冲的频率或周期是未知的,或者不断变化的,则一般称为计数。5-4简述51单片机定时/计数器查询方式实现定时功能时程序的基本流程。答:(1)设置TMOD,其中C/T位必须复位;(2)计算计数初值,并存入TH和TL;(3)TR位置位,启动定时;(4)通过查询TF位是否为1确定定时是否到;(5)定时到,实现期望的功能,同时将TF复位;(6)重装计数初值,重复(4)、(5)。5-5简述51单片机中定时/计数器方式2与方式0和1的主要区别。答:方式2与方式0和1的主要区别有两点:(1)计数位数不同,方式2是8位计数,方式0和1分别为13位和16位计数;(2)重装初值;方式2在计数溢出时自动重装初值,而方式0和1必须用指令将计数初值重新装入TH0和TL0。5-6简述51单片机中用串口扩展并口的基本原理和方法。答:串口工作在方式0时,配合外部的移位寄存器可以为单片机扩展并口。此时P3.0引脚用于串行传送数据,单片机通过P3.1引脚发出同步时钟脉冲。如果将P3.0和P3.1分别接到串入/并出移位寄存器的数据输入端和时钟输入端,该移位寄存器就可以实现并行输出口的功能;如果将P3.0和P3.1分别接到并入/串出移位寄存器的数据输入端和时钟输入端,该移位寄存器就可以实现并行输入口的功能。5-7总结51单片机的串口方式1、2、3之间的主要区别,完成表5-5。表5-5串口各种方式的主要区别工作方式数据帧波特率典型应用方式18位数据位、1位起始位、1位停止位、由SMOD位和T1的计数初值决定双机点-点通信方式28位数据位、1位起始位、1位停止位、1位校验位固定为时钟频率的1/32或1/64串行通信中的奇偶校验、多机主从式通信方式38位数据位、1位起始位、1位停止位、1位校验位由SMOD位和T1的计数初值决定串行通信中的奇偶校验、多机主从式通信5-8简述串口工作在方式1时的初始化流程。答:(1)通过SCON设置工作方式1;(2)根据要求的波特率确定定时/计数器T1的计数初值,并将计数初值写入TL1和TH1;(3)启动定时/计数器T1计数,以产生波特率时钟。5-9简述51单片机中中断优先级的管理规则。答:在51单片机中,可以将各中断源的中断优先级关系归纳为下面3条基本规则:(1)CPU同时接收到几个中断请求时,首先响应优先级最高的中断请求;(2)正在进行的中断过程不能被新的同级或低优先级的中断请求所中断,一直到该中断服务程序结束,返回了主程序且执行了主程序中的一条指令后,CPU才能响应新的中断请求;(3)新来的高优先级装入请求能够打断正在进行的低优先级中断服务,从而实现两级中断嵌套。5-10执行指令MOVIP,#1CH后,分析说明各中断的优先级顺序。答:各中断的优先级顺序为:外部中断1、定时/计数器T1中断、串行口中断、外部中断0、定时/计数器T0中断、定时/计数器T2中断。综合设计原理图和程序参见电子版附件。5-1已知51单片机时钟频率为12MHz,要求通过P1.7口输出高电平和低电平持续时间分别为10ms和20ms的周期矩形波,编写汇编语言程序。5-2将实践案例5-2改为用中断方式实现,每定时1ms,响应一次中断。在中断服务程序中测量和显示待测脉冲的频率。5-3利用串口和并入/串出芯片74165为单片机扩展一个输入并口,实现8个开关状态的检测。画出连接线路图,并编写相应的汇编语言程序。5-4将实践案例5-4中的接收机改为用中断方式接收数据,编写接收机的控制程序。
第6章思考练习6-1填空题(1)某RAM芯片有8根数据线和12根地址线,则该芯片的存储容量为4KB。要为51单片机扩展32KB的外部RAM,需要8个这样的芯片,需要8个片选信号。(2)为了解决CPU与低速设备之间的速度匹配问题,在并行输出接口中必须要有锁存器。为了避免总线冲突,在并行输入接口中必须要有缓冲器。(3)锁存器内部主要是利用触发器实现数据的稳定锁存,缓冲器内部是利用三态门实现数据通路的通断控制。(4)在并行扩展时,地址总线由P0口和P2口共同形成,数据总线由P0口提供。(5)在为51单片机扩展外部存储器时,RAM和ROM芯片的OE引脚一般分别与51单片机的P3.7和PSEN引脚相连接。(6)51单片机P0口输出低8位地址必须经过锁存后送到地址总线上,锁存器所需的锁存信号由单片机的ALE引脚提供。(7)访问外部存储器时,首先必须通过片选选中相应的芯片,然后选中芯片中指定的单元。(8)8155内部除3个并行I/O端口外,还有256字节的SRAM和一个14位的递减计数器。(9)要允许8155的PA端口在收到外部设备送来的数据时向单片机发出中断请求,必须在初始化时将命令字中的IEA位置位。(10)要通过8155内部的计数器产生周期方波或周期的负脉冲,应将其计数初值的最高两位设置为01或11。6-2选择题(1)某RAM芯片的容量为16KB,则P2口中需要有(C)位引脚与该芯片的地址引脚相连。 A.1 B.2 C.6 D.7(2)某RAM芯片的容量为16KB,在51单片机系统中采用线选法进行地址译码,则最多可以选用(A)片这样的芯片。 A.2 B.4 C.8 D.16(3)某RAM芯片的容量为16KB,在51单片机系统中采用全译码法进行地址译码,则最多可以选用(B)片这样的芯片。 A.2 B.4 C.8 D.16(4)在总线控制方式下,外部RAM和扩展并口的数据都是通过单片机的(A)传送的。 A.P0口 B.P1口 C.P2口 D.P3口(5)下面有关系统总线的描述,错误的是(D)。 A.系统总线包括三组,即地址总线AB、数据总线DB和控制总线CB。B.数据既可以由单片机送往外部,也可以由外部部件送入单片机,因此DB是双向的。C.地址只能由单片机送往外部,因此AB是单向的。D.控制命令有些是由单片机送往外部,有些是由外部送入单片机,因此CB是双向的。(6)下面有关51单片机外部扩展并口的描述,错误的是(B)。 A.扩展并口占用的是片外RAM单元的地址空间。B.单片机只能通过系统总线访问和控制扩展并口。C.使用MOVX指令从扩展并口读入数据时,单片机会通过P3.7引脚自动发出信号。D.使用MOVX指令将数据输出到扩展并口时,单片机会通过P3.6引脚自动发出信号。(7)在通过系统总线访问片外扩展存储器和并口时,下列不能用于提供地址的是(B)。 A.R0 B.R7 C.PC D.DPTR6-3简述ROM芯片和RAM芯片在51单片机系统存储器扩展中的主要区别。答:在正常工作时,ROM中的程序代码只能读出,不能写入修改,因此芯片上只有OE引脚,一般将其与单片机的PSEN直接相连接。RAM中存放的数据技能读出也能写入,因此芯片上都有WR和OE引脚,一般分别与单片机的WR和RD连接。6-4在扩展并行接口时,简述锁存器的作用。答:锁存器(Latch)一般用于实现并行输出口的扩展。输出并口用于连接LED、数码管这样的输出设备,这些外部设备的工作速度远低于单片机和CPU以及系统总线的速度,一般需要通过锁存器才能连接到系统总线上,并进一步接收CPU通过子系统总线送来的数据。6-52764是容量为8KB的EPROM芯片,在51单片机系统中为该芯片设计的地址译码电路如图6-21所示。图6-212764的地址译码电路(1)分析写出该片2764中各单元的地址范围。(2)分析说明采用的地址译码方法,以及是否存在地址重叠。(3)要从该芯片中读出第2个单元的数据到累加器A中,写出相应的程序段。答:(1)2764容量为8KB,因此片内单元选择的地址线需要A12~A0共13根,剩下的高位地址中,A13没有用,当A14=0,A15=1时,译码电路输出有效的低电平片选信号,选中该芯片,因此其地址范围为8000H~9FFFH或0A000H~0BFFFH。(2)由于16位地址总线中的A13没有参与译码,因此属于部分译码法,存在地址重叠。(3)EPROM芯片用于扩展外部ROM,因此访问其中的单元必须用MOVC指令。具体程序段如下: MOV A,#2 MOV DPTR,#8000H MOVC A,@A+DPTR6-6分析如下程序段实现的功能。(1) (2) MOV DPTR,#7FFFH MOV P2,#7FH MOV R0,#48H MOV R0,#00H MOVX A,@DPTR MOV R1,#10H MOV @R0,A MOVX A,@R0MOVX @R1,A答:(1)将外部RAM地址为7FFFH单元中的数据存入内部RAM地址为48H的单元。(2)将外部RAM地址为7F00H中的数据存入地址为7F10H的外部RAM单元。6-7简述ALT4方式下,通过8155的PB端口实现中断方式数据输出的过程。答:(1)单片机向PB端口输出一个数据,立即使BF(PC4)信号变为高电平,通知外部设备从8155读取数据。(2)外部设备将数据读取后,STB(PC5)信号变为低电平,同时INTR信号变为高电平,向单片机发出中断请求。(3)单片机响应中断后,可以向8155端口输出下一个数据,并重复上述过程。6-8已知8155的地址为0BFFFH,编写启动内部计数器计数的程序段。答:程序段如下:MOV A,#0C0HMOV DPTR,#0BFFCHMOVX @DPTR,A综合设计6-162256是容量为32KB的SRAM芯片,某AT89C52单片机系统用这样的芯片扩展64KB的外部RAM。(1)一共需要多少片62256?(2)画出62256芯片与单片机连接的主要电路示意图;(3)编制程序首先将0~99共100个数据写入1#芯片中前面100个单元,之后再从1#芯片顺序搬移到2#芯片的最后100个单元。答:(1)64KB/32KB=2片(2)电路如图所示。1#622561#62256D7~D0D7~D0A14~A0A14~A0CEA15WEOEP3.6P3.7D7~D0A14~A0CEWEOE2#62256(3)根据上述电路连接,两片62256的单元地址范围分别为0000H~7FFFH、8000H~0FFFFH,1#芯片前面100个单元和2#芯片最后100个单元的地址范围为0000H~0063H、0FF9C~0FFFFH。据此编写程序如下: ORG 0000H AJMP MAIN ORG 0100HMAIN: MOV R7,#100 ;将0~100装入1#芯片 MOV R0,#0 MOV A,#0 MOV P2,A ;输出高8位地址00HLP0: MOV A,R0 MOVX @R0,A ;写一个单元 INC R0 DJNZ R7,LP0 MOV R7,#100 ;传送到2#芯片 MOV R0,#0 MOV R1,#9CHLP: MOV P2,#0 MOVX A,@R0 ;读1#芯片 MOV P2,#0FFH ;输出2#芯片的高8位地址 MOVX @R1,A ;写2#芯片 INC R0 INC R1 DJNZ R7,LP END6-2用两片74HC373为51单片机扩展两个输出口,并用于8位7段数码管的显示控制。(1)画出主要电路原理图。(2)将内部RAM中30H开始的8个单元初始化设置任意十进制字符数据,采用动态扫描方式将其显示到数码管上,编写汇编语言程序。参见电子版教辅资源。6-3用一片8155扩展并口,对4×4键盘进行管理。要求8155的PA端口地址为4001H,PC3~0作为键盘的列扫描线,PA3~0作为行回读线。单片机采用无条件方式与8255A进行数据传送。(1)画出8155与单片机和键盘的连接线路;(2)编写键盘全扫描和列扫描子程序;(3)编写主程序,调用上述子程序,将从键盘上连续输入的字符重复存入单片机内部RAM的30H开始的8个单元。参见电子版教辅资源。
第7章思考练习7-1填空题(1)I2C是一种两线接口标准,利用SDA和SCL两根线与单片机进行连接和数据传送。(2)I2C器件的地址由8位组成,包括4位固定位、3位可编程位和1位读写方向位。(3)每次I2C总线的数据传送过程都以S信号开始,以P信号结束。(4)在I2C总线中,器件地址和子地址都是由主器件送往从器件,从器件接收到后,必须向主器件发送一个A信号。(5)I2C总线中的主器件作为接收器件时,在接收数据完成后,必须向从器件发送NA信号。(6)单片机需要为每个SPI从器件提供片选信号,因此硬件上比I2C系统要稍微复杂一些。(7)挂接在I2C总线和1-Wire总线上的所有从器件都有一个器件地址,传送数据之前,必须由主器件发送到从器件,以选择当前需要进行通信的从器件。(8)单线总线器件有复位、置位、读和写这4种基本操作,所有的器件操作都通过反复调用这些基本操作实现。(9)AT24C02具有页写能力,一次最多可以写入8个字节数据。(10)MCP23S08采用SPI总线接口,当通过该芯片实现外部设备的输入时,单片机是从SO数据线逐位读取输入数据。(11)DS18B20采用单线总线接口,所有命令和数据都通过DQ引脚传送。(12)设置DS18B20的转换位数为12位,则温度为+10℃和-10℃时,转换得到的温度数据分别为00A0H和0FF60H。7-2选择题(1)下面有关I2C总线器件的器件地址,说法错误的是(A)。 A.挂在同一条I2C总线上的所有器件都有一个唯一的器件地址。 B.每个I2C器件的器件地址都是8位二进制。 C.每个I2C从器件都有两个不同的器件地址。 D.读器件地址一定为奇数,而写器件地址一定为偶数。(2)下面有挂I2C总线信号的说法,错误的是(B)。 A.开始信号S和停止信号P都是由主器件发往从器件。 B.主器件从从器件接收完指定个数的数据后,必须给从器件发一个ACK信号。 C.主器件作为接收器时,每接收到一个数据,都将发出应答信号A。 D.在进行多字节数据传输时,数据的收发方向需要发生切换,主器件必须发送Sr信号。(3)在SPI总线系统中,用于串行同步时钟的信号线是(D)。 A. B.MISO C.MOSI D.SCK(4)在SPI串行扩展系统中,主机与从机的每次数据传送都必须从的(B)期间进行。 A.高电平 B.低电平 C.正跳变 D.负跳变(5)下面不属于单线总线基本操作的是(C)。 A.复位 B.读一位数据 C.读一字节数据 D.向从器件写一位0码或1码(6)AT24C02页写方式下,每次最多可以写入(D)字节数据。 A.1 B.2 C.4 D.8(7)MCP23S08作为带SPI总线的并口扩展芯片,通过(D)引脚连接并行外部设备。 A.SCK B.SI C.SO D.GP7~0(8)设置DS18B20的转换位数为10位,某时刻在内部高速缓存中的第1和第2个单元保存的温度数据为0FC32H,则表示当前温度为(A)。 A.+12.5℃ B.-12.5℃ C.+12.25℃ D.-12.25℃7-3简述I2C协议中主器件、从器件、发送器和接收器的概念及其相互关系。答:主控器件又称为主器件,在I2C总线结构中控制总线的存取,产生串行时钟SCL信号、启动传送及结束传送信号等,I2C总线结构中必须有一个主控器件对总线进行控制。从控器件又称从器件,是被主控器件寻址的器件,从器件根据主器件的命令来接收和发送数据。发送器指的是将命令或者数据发送到I2C总线上的器件,接收器指的是从总线上接收命令或者数据的器件。总线上的主器件和从器件都可能成为发送器和接收器。对任何一次数据或命令的传送过程来说,可以是主发送到从接收(主器件发送数据,从器件接收数据)或者从发送到主接收(从器件发送数据,主器件接收数据)。7-4总结I2C总线上传送的有哪些总线控制信号,分别起什么作用。答:I2总线上传送的总线控制信号有S、P、A、NA。其中S信号为起始信号,P信号称为终止信号,分别用于启动和结束一次I2C总线数据传送过程。每传输一字节数据,接收器都要向发送器发送应答信号A。当主器件作为接收器接收完指定个数的数据后,必须给从器件发一个非应答信号NACK,简称NA信号。7-5已知单片机的时钟频率为6MHz,采用I2C总线与某从器件进行数据传送。其中有如下程序段:MACK: CLR SDA NOP SETB SCL NOP NOP CLR SCL NOP RET(1)分析上述程序段的功能。(2)简要说明程序中各NOP指令的作用。答:(1)上述程序段在SDA为低电平期间,发送一个SCL脉冲,因此是主器件向从器件发送的应答信号。(2)由于单片机的时钟频率为6MHz,因此机器周期为2ms。程序中中间的2条NOP指令执行所需时间为4ms,从而确保SCL脉冲的宽度足够宽。7-6当1-Wire总线上有一个和多个DS18B20时,总结操作访问上的区别。答:如果系统中有多片DS18B20,当主机(单片机)需要对其中的某片进行操作时,首先通过发送代码为33H的读ROM命令读出各片的序列号,之后发出匹配ROM命令(55H),并发出64位的器件ROM码,从而寻址到指定的DS18B20芯片进行操作访问。如果系统中只有一片DS18B20,则不需要读取ROM编码以及匹配ROM编码,此时只需要向DS18B20发送一个“跳过ROM”(0CCH)命令,之后即可利用RAM命令启动温度转换和读取转换结果。综合设计原理图和程序参见电子版附件。7-1在实践案例7-1的基础上,如果需要将0~255依次写入AT24C02内部256个字节单元,编写实现该功能的主程序。7-2用MCP23S08的GP0引脚连接一个按钮。单片机采用中断方式读取按钮状态并统计按钮按动的次数,按动次数存入R0。画出电路连接图,并参考MCP23S08芯片手册编写汇编语言程序。7-3在图7-14的基础上,添加如下功能:当温度超过50℃时,点亮P1.7上接的LED;当温度降下来后再将其熄灭。给出添加的部分功能代码。
第8章思考练习8-1填空题(1)在图8-2中,已知VREF=+5V,当输入数字量D=80H时,V0=-2.5V。(2)已知某8位DAC的分辨率为1LSB=9.77mV,则当输入数字量为0FFH时,输出模拟电压为2.49V,满量程电压为2.5V。(3)已知8位ADC的最大输入电压为5V,则当输入电压不超过19.5mV时,输出为00H;当输入电压超过4.98V时,输出为0FFH。(4)DAC0832内部的数字量需要依次通过两个寄存器才能送到D/A转换器进行转换,这两个寄存器分别是输入寄存器和DAC寄存器。(5)ADC0809在START信号的下降沿启动转换,在转换过程中EOC保持为低电平,转换结束后变为高电平,再用OE信号的正脉冲读出转换结果。(6)为了使51单片机采用中断方式读取ADC0809的转换结果,可以将EOC信号反相后向单片机发出外部中断请求。(7)MAX1241是带有SPI总线接口的12位A/D转换器,引脚上的3根SPI总线分别是CS、SCLK和DOUT。(8)在A/D转换和读取转换结果的过程中,MAX1241的引脚必须保持为低电平,转换结束时,DOUT引脚输出高电平。(9)PCF8591带I2C总线接口,同时具有8位A/D和D/A转换功能。(10)PCF8591中的ADC有4个模拟量输入通道,通过控制字的最低两位进行选择。8-2选择题(1)下列型号的芯片中,(C)是ADC,(D)是DAC。 A.74LS373 B.74HC245 C.ADC0809 D.DAC0832(2)下面有关DAC0832的描述,错误的是(A)。 A.DAC0832是一个8位电压输出型数/模转换器 B.内部包括一个输入锁存器、一个DAC寄存器和一个D/A转换器 C.D/A转换输出结果决定于参考电压、输入数字量和内部电阻网络 D.可以有直通、单缓冲和双缓冲三种工作方式(3)当DAC0832的引脚ILE接电源,、、和都接地时,工作在(A)。 A.直通方式 B.单缓冲方式 C.双缓冲方式 D.中断方式(4)下面有关ADC0809工作过程的描述,正确的是(B)。 ①EOC引脚上产生负跳变,并保持低电平到转换结束 ②转换结束后EOC引脚输出正跳变 ③START引脚输入脉冲的正跳变启动A/D转换 ④OE引脚上的正跳变输出转换结果,CPU读取转换结果后OE变为低电平 A.①③②④ B.③①②④ C.①④③② D.③④①②(5)下面不属于ADC0809工作方式的是(D)。 A.延时方式 B.查询方式 C.中断方式 D.并口控制方式8-3简述单片机对ADC和DAC两种控制方式的主要区别。总线控制方式是将DAC和ADC中的数字量寄存器视为可写的外部RAM单元,从而采用与外部RAM单元的访问一样的方法,通过执行MOVX指令进行控制和访问,所需的各种控制信号由总线信号产生。并口控制方式是单片机与DAC和ADC之间数字量的输入和输出通过普通的并口进行,程序中利用MOV指令或者SETB、CLR等位操作指令实现,所需的应答联络和控制信号也都通过并口引脚进行传送。8-4简述DAC0832三种工作方式的主要特点。答:直通方式下,数字量的输入和D/A转换不受单片机的控制,数字量送来后立即进行转换。单缓冲方式下,单片机通过总线或并口控制数字量的输入和D/A转换,数字量输入后,直接送入D/A转换;双缓冲方式下,数字量需要分两步才能送入D/A转换。8-5单片机可以采用3种方式读取ADC0809转换结果,总结这3种方式读取过程的主要区别。答:无条件传送方式下,需要任何联络控制信号,单片机在启动A/D转换后,经过适当延时直接读取转换结果。查询方式下,单片机通过查询ADC0809的EOC信号,等待A/D转换结束后再读取转换结果。中断方式下,ADC0809转换结束后,利用EOC信号向单片机发出中断请求,单片机响应中断后读取转换结果。8-6已知DAC0832采用总线控制单缓冲方式,地址为0BFFFH,要求将单片机内部RAM中从40H开始的10个单元中存放的数字量依次转换为模拟电压输出。简要说明电路连接,并编写实现主要功能的程序段。答:(1)电路连接(答案不唯一)将DAC0832的数据线与单片机的数据总线(即P0口)相连接。在5个控制信号中,ILE接电源使其始终有效;CS接地址总线的A14;WR1、WR2和XFER接在一起,并与单片机的控制总线WR(P3.6)相连接。(2)程序段 MOV R0,#40H MOV R7,#10 MOV DPTR,#0BFFFHLP: MOV A,@R0 ;从内部RAM取一个数字量 MOVX @DPTR,A ;输出到DAC0832转换 ACALL DELAY ;适当延时 INC R0 ;修改数字量地址指针 DJNZ R7,LP8-7在图8-6所示原理图中,假设在IN0~IN7端分别接入一个模拟电压,要求将这8个模拟电压在某个时刻的幅度转换为数字量,单片机采用查询方式读取并依次存入单片机中从40H开始的内部RAM单元,编写相应的程序段。答:程序段如下: MOV R0,#40H MOV R7,#8 MOV DPTR,#7FF8H ;DPTR初始指向IN0 SETB P3.2 ;P3.2初始化输出高电平,以便正确输入LP: MOVX @DPTR,A ;启动ADC转换 JB P3.2,$ ;等待高电平结束 JNB P3.2,$ ;等待重新变为高电平,转换结束 MOVX A,@DPTR ;读取转换结果 MOV @R0,A ;存入内部RAM单元 ACALL DELAY ;延时 INC R0 ;修改RAM单元地址指针 INC DPTR ;修改ADC通道号 DJNZ R7,LP8-8PCF8591可以同时作为ADC和DAC,总结两种转换的工作时序。答:(1)ADC时序当通过I2C总线向PCF8591发送写器件地址(方向位为1)后即可启动A/D转换。一旦触发了一个转换周期,当前所选通道的输入电压就被转换为相应的8位二进制代码并存储在ADC数据寄存器中,同时读出上一次转换结果。之后,单片机发送一个非应答信号令PCF8591释放总线,再发送P信号结束读操作时序。(2)DAC时序向PCF8591发送数字量之前,首先需要向其发送写器件地址(方向位为0),再发送一个字节的控制命令以设置允许模拟量输出。等到PCF8591应答后,再将数字量发送并存入内部的DAC数据寄存器,再使用片上的D/A转换器转换为相应的模拟电压。综合设计8-1用图8-4所示电路产生锯齿波,要求锯齿波的周期用定时/计数器中断实现定时,编写汇编语言程序。参见电子版文件p8_1.asm8-2利用一片ADC0809轮流采集8路模拟电压。要求单片机采用中断方式读取每路模拟电压的转换结果,并顺序存入内部RAM中40H开始的单元;8个模拟电压采集完毕后,又从第一路开始重新采集,并放回同样的单元。(1)画出电路连接原理图;(2)编写汇编语言程序。参见电子版文件p8_2.asm、p8_2.pdsprj8-3在图8-31所示原理图的基础上,改写程序,将MAX1241的一次转换结果存入单片机内部RAM的40H(低字节)和41H(高字节)单元。答:主要改动(1)删除与LCD1602相关的语句;(2)在程序前面定义如下常量:ADCBUF DATA 40H (3)主程序和ADC子程序分别做如下修改: ORG 0100HMAIN: MOV SP,#20HLP: ACALL ADC ;ADC转换,读取结果并显示 SJMP $ ;运行一次,ADC转换一次,暂停后便于观察结果;ADC子程序ADC: MOV R0,#ADCBUF MOV @R0,#0 INC R0 MOV @R0,#0 ;缓冲区清零 DEC R0 CLR SCLK SETBCS CLR CS ;启动ADC转换 JNB DOUT,$ ;等待ADC转换结束 SETB SCLK MOV R7,#12 ;设置读取位数LRD: CLR SCLK NOP SETB SCLK MOV C,DOUT MOV A,@R0 RLC A ;读取一位存入缓冲区的最低位 MOV @R0,A INC R0 MOV A,@R0 RLC A ;内部RAM中保存的16位转换结果数据左移一位 MOV @R0,A DEC R0 DJNZ R7,LRD SETB CS ;读取完毕,CS恢复为高电平 RET 启动运行后,稍等一会暂停程序,打开8051内部寄存器窗口,观察运行结果:
第9章思考练习9-1填空题(1)一个完整的单片机应用系统由单片机最小应用系统、前向通道、后向通道、人机交互通道和网络通道组成。(2)ADC一般位于单片机系统中的反向通道,DAC一般位于前向通道。(3)在单片机系统的开关量前向通道中,为防止现场强电磁于扰或工频电压反串到测控系统中,常用的是光电隔离技术。(4)在单片机系统中,对于低电压开关量,可以采用三极管、OC(集电极开路)门或运算放大器等器件进行驱动,对于大功率被控对象设备可以采用继电器、可控硅等驱动。(5)国内常用的是51系列、PIC系列和AVR系列单片机,其中Intel公司的MCS-51系列单片机是一款设计成功、易于掌握并在世界范围得到广泛使用的机型。9-2简述什么是单片机系统中的前向通道和反向通道。答:在单片机应用系统中,前向通道是单片机实现控制信息输出的通道。单片机通过前向通道对外部被控对象的运行和工作状态实施控制。对于单片机测控系统,反向通道又称为反馈通道。反向通道是单片机实现外部信息输入的通道,单片机通过反向通道对外部的现场数据等进行采集和处理,以了解被控对象的工作状态、各种所需的现场实时数据等。9-3简述在单片机系统设计中,硬件和软件功能如何取舍。答:原则上,只要软件能做到且能满足性能要求,就不用硬件。硬件多不但增加成本,而且系统故障率也会提高。以软代硬的实质是以时间换空间,软件执行过程需要消耗时间,因此带来的问题就是实时性下降。在实时性要求不高的场合,以软代硬是很合算的。综合设计9-1在工程ex9_1.pdsprj中,修改硬件和程序,实现每路电压以3位小数的精度显示。运行观察分析测量精度。答:电路和程序参见电子版附件。几个典型的测量值如下表所示:探针显示精确值/V数码管显示测量值/V误差/%探针显示精确值/V数码管显示测量值/V误差/%0.9503690.937-1.412.499932.480-0.801.050371.0540.352.949752.929-0.801.200361.191-0.783.699563.691-0.232.250042.246-0.184.499674.472-0.61由表中计算结果可知,大多数测量点误差都在1%以内,这些误差主要都是由ADC转换位数和分辨率造成的。为了提高测量精度,可以增加ADC的位数。9-2在工程ex9_2.pdsprj中,设计电路实现4片DS18B20的ROM码的读取,并保存到单片机的内部RAM中,编写相应的控制程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农经博士笔试题库及答案(电子版)
- 2026中国物流人才需求变化与教育培训体系优化
- 2026民用无人机适航认证体系完善进程与行业准入门槛变化预测报告
- 2026欧洲电子指纹锁销售渠道文化差异市场营销策略运营利润评估规划
- 2026中国无人驾驶测试车生产制造技术发展分析
- 2026中国文化演出行业市场规模及商业模式创新及行业发展趋势报告
- 2026中国新能源汽车换了电池回收利用产业政策调研与发展投资的评估报告
- 2026中国体育行业市场发展分析及发展趋势与投资前景研究报告
- 2026人工智能教育行业市场研究发展路径投资策略发展报告
- 2026皮革制品生产领域市场发展趋势研究及产业发展规划分析
- 2026年全国保密教育线上培训考试试题库及参考答案【完整版】
- 2026福建漳州闽投华阳发电有限公司招聘43人笔试参考题库及答案详解
- GB/T 47655-2026电力电子装备和系统的构网性能要求及试验方法
- GA/T 1466.1-2026智能手机型移动警务终端第1部分:技术要求
- 中信建投:未来产业投资地图系列之“可控核聚变”
- 检验科生物安全培训内容及记录
- 2025广东省深圳市中考历史真题(解析版)
- 门诊一站式服务流程建设方案
- 浙江省食用农产品批发市场食品安全主体责任清单与技术评审指南(2023版)
- 注册安全工程师考试金属冶炼(中级)安全生产专业实务复习难点详解
- 大型赛事活动安保服务方案投标文件(技术标)
评论
0/150
提交评论