PIC单片机练习题解答.docx
- 文档编号:2884733
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:14
- 大小:167.02KB
PIC单片机练习题解答.docx
《PIC单片机练习题解答.docx》由会员分享,可在线阅读,更多相关《PIC单片机练习题解答.docx(14页珍藏版)》请在冰豆网上搜索。
PIC单片机练习题解答
PIC单片机习题
第一次
一、选择题
(B)1、PIC单片机采用总线结构。
A、普林斯顿B、哈佛
2、PIC16F877单片机精简指令集系统共C条。
A、75B、133C、35D、111
3、PIC16F877单片机程序存储器和数据存储器的宽度是B和。
A、8,8B、14,8C、16,8D、16,16
4、PIC16F877单片机共C中断源。
A、5B、8C、14D、16
5、PIC16F877单片机共C端口。
A、3B、4C、5D、6
6、PIC16F877单片机共有C个定时/计数器
A、1B、2C、3D、4
7、PIC16F877单片机定时器1具有的特殊功能是D。
A、定时B、计数C、PWMD、CCP
8、若端口B接8个按键,则该端口的TRISB应初始化成
A、0x00B、0xFFC、0x0FD、0xF0
9、TMR0的位宽度为
A、8B、16C、32D、64
10、PIC16F877单片机外围接口区域包括RA,RB,RC,RD和RE5个端口,而每个端口均
有多条输入/输出可编程的引脚,合计5个端口共有__C____条引脚.
A.30B.34C.33D.31
11、PIC16F877单片机外围接口区域包括RA,RB,RC,RD和RE5个端口.在下列端口
中,____D_____并不具备8条引脚.
A..RA,RBB.RC,RDC.RB,RCD.RA,RE
二、问答题
1、如何确定I/O端口的输入和输出?
答:
根据方向控制TRIS确定,高电平做输出,低电平做输入。
2、在确定A、B、C、D、E端口的功能时,首先要执行什么操作?
答:
确定端口方向。
3、PIC16F877单片机有几个定时/计数器?
他们的区别是什么?
答:
TMR08位宽与WDT共用预分频器
TMR116位宽与CPP模块配合使用可实现捕捉和比较功能
TMR2只作定时;8位宽与PWM模块配合使用可实现脉宽调制输出功能
4、PIC单片机具有的优点有哪些?
答、1、哈佛总线结构;2、指令系统采用RISC技术;3、代码压缩率高;4、IO端口驱动负载能力较强及功耗低等。
三、程序设计题
1、电路如图所示,编程实现走马灯的运行效果,即D0-D7循环被依次点亮,但同一时刻只有一个灯亮。
单片机主频为4MHz。
2、电路如图所示,编程实现4个数码管显示数值5678。
单片机主频为4MHz。
3、电路如图所示为3个按键控制8只LED灯显示状态,其中3个按键开关组成独立式键盘,分别用key1键控制灯依次左移循环点亮,key2键控制灯右移循环点亮,key3键控制8灯闪烁。
第二次作业
1、假如PIC单片机的系统时钟振荡频率是4MHz,那么执行一条非转移类指令的真实
时间应该是__D___us
A.0.5B.2C.3D.1
2、在PIC单片机系统配置和程序设计中,采用很有特色的哈佛总线结构,其根本意义就
在于_______B___.
A.减少CPU的功耗B.数据存储器和程序存储器总线分离
C.提高端口的驱动能力C.可以方便进行在线调试
3、PIC单片机与其他单片机相比,具有以下这些明显的优点,但___C_____除外.
A.哈佛总线结构B.精减指令RISC结构
C.存储器大D.驱动能力强
4、在PIC16F877单片机系统配置中,特别引入A/D转换器(ADC),它具有_________个
模拟量输入通道.
A.5B.8C.10D.6
5、PIC16F877单片机的ADC转换器具有___A_____位的分辩率。
A.10B.12C.8D.14
6、PIC16F877单片机多数I/O引脚都设计有第2功能,甚至还有第3功能,RA端口中
可以承担A/D转换中负参考电压端(VREF-)的引脚是___B_____.
A.RA0B.RA2C.RA3D.RA4
7、在PIC16F877单片机ADC转换模块中,配置有8个模拟量输入通道,分别由_______
两个端口中的引脚承担.
A.RA和RCB.RC和RBC.RB和RDD.RA和RE
二、AD转换的中断程序设计
1、设计一个电子温度测量仪的雏形,温敏电阻(R2)感受外界温度变化,单片机实时采集RA0引脚的模拟量将其转化为数字量,通过端口C连接的一位LED数码管显示AD转换结果的高8位(要求画出程序流程图,写出相关中断程序)。
说明:
R2是一个温敏电阻,其电阻值随温度的变化而变化。
#include
__CONFIG(0x3B31);
intadcdata=0;//
constunsignedcharseg7[10]={0xC0,0xF9,0xA4,0xB0,0x99,
0x92,0x82,0xF8,0x80,0x90};//
VoidinterruptISR()
{if(ADIE&&ADIF)
{ADIF=0;//
adcdata=(((unsignedint)ADRESH)<<8)+ADRESL;//
ADGO=1;//
}
}
voiddelay(unsignedintms)
{unsignedinti,j;
for(i=ms;i>0;i--)
for(j=0;j<67;j++)
{;}
}
voiddisplay(unsignedintidata)
{unsignedchari,j;
//unsignedintt;
unsignedcharnumstr[5]={0,0,0,0,0};
//处理数据idata
numstr[1]=idata/1000;//千位数
numstr[2]=(idata%1000)/100;//百位数
numstr[3]=idata%100/10;//十位数
numstr[4]=idata%10;//个位数
for(i=0;i<10;i++)
{PORTD=0x01;
for(j=1;j<=4;j++)
{PORTC=seg7[numstr[j]];
delay(5);
PORTD=PORTD<<1;}
}
}
voidmain()
{chari;
intvoltage=0;
TRISA=0x01;//
TRISB=0x00;
TRISC=0x00;
TRISD=0x00;
//*
ADFM=1;//右对齐
PCFG3=0;PCFG2=0;PCFG1=0;PCFG0=0;//全为模拟引脚,参考电压为VDD,VSS
//*以上5条语句可以用ADCON1=0b00000000;
ADCS1=1;ADCS0=0;//使用内部RC振荡器作为时钟
CHS2=0;CHS1=0;CHS0=0;//选择AN0通道
ADON=1;//开启AD转换器
//*以上6条语句可以用ADCON0=0b11000001;
//*开中断
ADIE=1;ADIF=0;PEIE=1;GIE=1;
for(i=0;i<25;i++){;}//为了采用保持电路充电延时,超过25us即可
ADGO=1;//启动一次A/D转换,此位为GO/DONE
while
(1)
{
voltage=adcdata;//把当前测量的数字结果放入voltage中
voltage=((long)voltage*5000/1023);//数据处理
display(voltage);//调显示电阻值子程序
if(voltage>4900||voltage<100)//报警
{for(i=0;i<5;i++)
{delay
(1);RB0=!
RB0;}//发出500Hz的声音
}
}
第三次作业
一、选择题
1、A/D转换器将转换的10位数字量放入
A、ADRESHB、ADRESLC、ADCON0D、ADRESH和ADRESL
2、PIC单片机I/O端口驱动负载的能力较强,每这并不表示所有端口都同时具有这样的
功效.对整个单片机而言,所有输入/输出驱动小于____C____mA。
A.100B.150C.250D.200
3、预分频器最大的分配比是C
A、1:
64B、1:
128C、1:
256
4、TXSTA是B
A、接收状态控制寄存器B、发送状态控制寄存器
C、接收寄存器D、发送寄存器
5、PIC16F877单片机把要发送的数据放入
A、TXREGB、RCREGC、TXSTAD、RCSTA
6、PIC16F877单片机接收到一个数据,CPU自动将接收的数据放入
A、TXREGB、RCREGC、TXSTAD、RCSTA
二、判断题
1、PIC单片机采用哈佛总线结构,在芯片内部数据总线和指令总线分离,允许采用不同的字节宽度。
2、PIC16F877单片机的数据存储器共有512字节单元空间,即0000H-01FFH。
3、PIC16F877单片机的程序存储器共有8K×14位单元空间,即0000H-01FFH。
4、TIMER0与其他部件配合具有捕捉功能。
5、PIC16F877的三个定时器都是8位宽可编程定时器。
6、PIC16F877单片机的A/D转换器具有8个模拟输入通道。
7、PIC16F877单片机的A/D转换器具有8位分辨率。
8、PIC16F877单片机的RA端口全部能做A/D转换器功能引脚。
9、PIC16F877单片机的RB0端口除了作为一般IO口还可作外部中断输入端。
10、PIC16F877单片机端口RB引脚中,只有RB4-RB7具有电平变化中断功能。
11、PIC16F877单片机I/O端口驱动负载能力较弱。
12、INTF外部中断标志位是硬件置1,软件清0。
13、TXIF发送中断标志位和RCIF接收中断标志位都是硬件置1,软件清0。
14、波特率指的是每秒中传送的字节数。
15、异步通信是以帧为单位的。
16、SPBRG——波特率因子寄存器写入的是波特率。
17、PIC16F877单片机主要用PORTA、PORTB、PORTC、PORTD和PORTE5个寄存器与外界交换的信息。
18、OPTION寄存器的上电复位的初始状态为0xFF。
三、程序设计
1、下图为一个双机通信的线路图,2个单片机通过异步串行通信接口相连的方式为:
RX和TX交叉连接。
左边的单片机U1为发送,每按一下按键S1就发送一个数,从1开始发送,每送一个数,此数加1,(即0-9)。
发送的数同时在D口上输出显示。
读写其发送与接收程序,并补充相应的语句。
(两单片机主频都是4MHz)
//双方通信协议为:
波特率9600bps,数据格式:
8位数据位,无奇偶校验,1位停止位
//发送方串行通信U1,按一下发送键便发送一个数据,从1开始发送,随后按一下键数值自动加1,到9后以后循环从0开始发送。
#include
__CONFIG(0x3B31);
unsignedcharnum=0;//发送数据变量
constcharseg[10]=
{0x3F,0x06,0x5B,0x4F,0x66,
0x6D,0x7D,0x07,0x7F,0x6F};//显示数值笔段码
//延时子程序
voiddelay(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- PIC 单片机 练习题 解答