PIC练习题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《PIC单片机》课外习题
题型:一、单项选择题二、填空题三、简答、编程设计题
一、选择题
1、下面关于单片机的说法正确的是(C)
A、单片机可以不需要输入和输出。
B、单片机不能进行定时和计数处理。
C、单片机又叫嵌入式微处理器。
2、下列不能进行PIC芯片复位的是(C)
A、芯片内部上电复位。
B、MCLR引脚置为低电平复位。
C、执行Sleep指令。
D、监视定时器WDT计数满溢出复位。
3、下列指令说明正确的是(B)
A、ANDW 10,1;将f10与W相与,结果送W
B、DECFSZ 10,0;将f10内容减1,结果存入W。如果结果为0,则跳过下一条指令不执
行,否则执行下一条指令。
C、MOVF 10,1;将f10送给本身,结果不会影响标志位。
D、执行NOP时,PC没有变化。
二、填空要点
1、哈佛总线、流水线技术、指令周期
2、数据存储器、程序存储器的特点;寻址方式、间接寻址方式用到的寄存器
3、中断技术:中断入口地址、外部中断源、中断标志等; PIC 中断的5个外部引脚
4、TMR0什么情况下做定时器,什么情况下做计数器; TMR0的主要特点:计数范围等; TMR2溢出周期的计算方法
5、AD转换结果存放位置
6、伪指令
7、指令系统
8、消除抖动方法
9、子程序返回指令 10、SSP、I2C所用的线、数据格式等
三、简答、设计知识点
▲A/D技术▲矩阵键盘扫描▲WDT原理▲EEPROM读/写▲程序分支跳转设计
▲定时/计数器▲中断技术▲间接寻址▲查表法
举例:
例1:中断技术
利用PIC 单片机的外部中断INT 设计一个报警系统。电路如下图,要求报警信号从RB0/INT 引脚输入,采用上升沿触发。RC2引脚接蜂鸣器,一旦有报警信号产生,则蜂鸣器马上鸣叫。
图 PIC 中断应用
list p=16f877A
include "p16f877A.inc"
count equ 23h;
org 0000h
nop
goto Main
;****************************************
; 中断子程序
org 0004h ;中断入口地址
goto INTbeep;
;*************************************
; 主程序
Main banksel TRISB ;设置数据寄存器体1
molw 00000001B ;将RB0/INT 设为输入状态
movwf TRISB
movlw 00000000B ;将C口设置为输出状态
movwf TRISC
bsf OPTION_REG , INTREG ;INT为上升沿有效
bsf INTCON , INTE ;允许INT中断
bsf INTCON , PEIE ;允许外设中断
bsf INTCON , GIE ;允许全局中断
bcf INTCON , INTF ;清外部INT中断标志位
banksel PORTC ;选择数据存储体0
clrf PORTC ;清C口
Loop goto Loop ;等待中断
;************************************************
; 中断服务子程序(报警)
INTbeep
movlw 09H;
movwf count;
beeploop bsf PORTC,2
call Delay
bcf PORTC,2
call Delay
decfsz count, F
goto beeploop
bcf INTCON , INTF
retfie ;中断结束标志
;************************************************
; 延时子程序
Delay
movlw 05Fh
movwf delay1
clrf delay2
Delayloop
decfsz delay2,1
goto Delayloop
decfsz delay1,1
goto Delayloop
return
end
▲思考
若INT、RB7~RB4共有5路中断源,RC7~RC4、RC0外接发光二极管,分别作为RB7~RB4、INT的报警信号。
;************************************************
; 中断服务子程序(报警)
INTsub
btfss INTCON,0
btfss INTCON,1
goto done
RC0亮
goto done
movf PORTB,0 ;B口数据读入放在W中
btfss PORTB,7
goto next1
RC7亮
goto done
next1 btfss PORTB,6
goto next2
RC6亮
goto done
next2 btfss PORTB,5
goto next3
RC5亮
goto done
next3 btfss PORTB,4
goto done
RC4亮
goto done
done bcf INTCON,INTF
bcf INTCON,RBIF
retfie ;中断结束标志
例2:键盘扫描方法
以上为4×4矩阵键盘,按键扫描原理
RB4~RB7为列线,RB0~RB3为行线。列线通过上拉电阻连接到电源;因此无键按下时,各列均为高电平。CPU不断轮流对行线置低电平,然后检查列线输入状态,确定按键情况。步骤如下: