用户登陆 用户注册
您的位置:首页>
技术文章>内容正文
PIC16C54单片机原理及应用
[正文]:美国microchip公司推出的pic系列8位单片机是业界率先采用精简指令集计算机(risc-reduced instruction set computer)结构,具有高性价比的嵌入式控制器。
pic系列单片机具有高速度,低工作电压,较大的输入输出直接驱动能力(可直接驱动led负载),低价一次性编程(otp-one time programmable)技术,低功耗,小体积等优点。
pic16c5x系列是pic系列的基础级产品,现在,介绍该系列的典型芯片pic16c54。
一、pic16c54概述:1)结构图:程序存储器eprom 定时器数据存储器ramcpu输入输出接口图1pic16c54主要资源:* 512×12位eprom* 25字节通用ram* 12根双向i/o线* tmr0定时器/计数器* 上电复位por电路* 复位定时器* 自振式看门狗wdt.2)指令周期:pic16c54采用8位宽的数据总线和12位宽指令总线相互独立的哈佛(harvard)结构,与其它一些单片机相比,程序代码更加紧凑,指令执行速度更快。
图(2) 所示的是 时钟/指令时序图
点击查看大图片
图2 如图2所示,从引脚osc1输入或振荡电路产生的时钟信号在内部经四分频产生四个不重叠的时钟 q1,q2,q3,q4。
程序计数器pc在每个q1节拍间加1,指令在q4节拍从程序存储器中取出并锁存于指令寄存器中,在下一指令周期被译码并执行。
因此,在程序执行过程中,取指令与执行指令可重迭进行,即当一条指令被执行时,下一条指令已从程序存储器中读出。
3)引脚功能说明
点击查看大图片
ra0-ra3:可位控4位双向i/o口,输入为ttl电平rb0-rb7:可位控8位双向i/o口,输入为ttl电平tocki:定时器/计数器tmr0的外部触发计数信号输入端。
软件定义tmr0为计数器时,此引脚上的信号上升沿或下降沿用于计数,可通过软件设置option寄存器相应的控制位选择触发边沿,当tmr0为内部时钟源时,该引脚当接vdd或vss,以减少功耗。
mclr:当为低电平时,单片机复位vss:地端vdd:电源电压osc1:振荡信号输入端osc2:振荡信号输出端二.应用实例如图4所示,pic16c54芯片处于睡眠状态,当任一按键按下,将唤醒pic16c54进行键盘处理。
本例中,按下sw1,点亮绿灯,按下sw2,点亮红灯。
进入睡眠时,应将键扫描输出线scan1,scan2置为低电平,进入睡眠后,电容c被充分充电,使mclr保持高电平。
当有按键按下时,电容c经电阻r2或r3放电,其两端电压迅速下降(下降时间约为1ms),从而使mclr下拉为低电平,进入复位。
唤醒pic16c54的复位时间(大约为18ms),也应更小于键按下的最小时间(大约为50-100ms)。
每次扫描即scan1,scan2为低电平的时间大约为10ms,当键处理程序完成后,程序对键盘循环扫描直至键释放,然后将scan1,scna2输出置为低电平,单片机重新进入睡眠。
图中所示的电阻r4-r8用来防止电容c放电产生的大电流,保护芯片。
点击查看大图片
图4程序清单: org 0start call init_port_b ;初始化b口 call delay ;延时 call scan_keys ;键盘扫描 movwf gp ;w->gp btfsc gp,sw1 ;按键sw1按下? bcf portb,grn_led ;点亮绿灯 btfsc gp,sw2 ;按键sw2按下? bcf portb,red_led ;点亮红灯chk_for_key call delay ;延时 call scan_keys ;键盘扫描 xorlw 0 ;键释放 go to chk_for_key ;继续扫描no_key_pressed bcf portb,scan1 ;置scan1为低电平 bcf portb,scan2 ;置scan2为低电平 sleep ;睡眠
点击查看大图片
图5
网站首页
培训课程
维修指南
技术文章
家电专栏
供应信息
求购信息
培训资讯
展会信息
电脑专栏
教程下载
资料下载
常用软件
PLC教程
PLC资料
变频伺服
低压电器
维修资料
人机界面
自控仪表
工控机类
文章标题:
中国工控资源网手机版 2012
电话:010-67577139 13811659603
培训咨询QQ:657167934 471895637 销售咨询QQ:623769457
联系邮箱:zggkzyw@163.com
京ICP备11002135号
报时(2026-04-06 13:09:53)