PIC16C64单片机外部功能特点

发布者:清新微笑最新更新时间:2011-02-24 手机看文章 扫描二维码
随时随地手机看文章
一、捕抓/比较/脉宽调制模块 
PICI6C64单片机的RC2/C CPI脚具有捕抓/比较/PWM输出的功能,对应于内部的捕抓/比较/PWM模块,简称CCPI模块。该模块内有一16位寄存器。(CCPR1)可由软件设置而作为捕抓寄存器,比较寄存器或PWM输出寄存器。由图工中的CCP1控制寄存器(CCP1CON)来选择模式。
(一)捕抓功能 
RC2/CCP 1脚作为捕抓功能时,应置为输入态。当有脉冲事件在CCP1脚上发生时,CCPR1即捕抓记录下此时TMR1(计数器1)的值,井产生捕抓发生中断请求.
例程1. BSF TRISC,2 ;CCP1脚置为输入 
MOVLW,XXXX0101;选CCP1为捕抓模式, 
每个上升沿有效 
MOVWF CCP1CON ;设置CCPP1控制寄存器

捕抓功能可用以计算外部脉冲宽度(频率)等。



0000:CCP1模式功能关闭(复位).
0100:捕抓模式,CCP1脚每个下降沿捕抓.
0101:捕抓模式,CCP1脚每个上升沿捕抓。
0110:捕抓模式,CCP1脚每4个上升沿捕抓。
0111:捕抓模式,CCP1脚每16个上升沿捕抓。
1000:比较模式,符合时CCP1脚置1。
1001:比较模式,符合时CCP1脚清0。
1010:比较模式,符合时CCCP1脚不变, 产生中断请求。
1011:比较模式:触发特殊事件发生。
11XX:PWM输出模式
(二)比较功能 RC2/CCP1脚此时应置为输出态。在比较模式下,CCPR1寄存器不停地和TMR1寄存器比较,当两者的值相等(匹配)时,可使RC2/CCP1脚出现下列情况。
(1)拉为高电平
(2)拉为低电平
(3)保持不变。
同时还会产生比较中断请求。
例程2. BCF TRISC,2 ;CCP1脚置为输出
MOVLW XXXX1000;选CCP1为比较模式 
匹配时CCP1脚置高电平 
MOVWF CCP1CON ;设置OCPI控制寄存器 比较功能常用来定时驱动某种部件。



(三)PWM 功能
此时RC2/CCP1脚应置为输出态,在PWM模式下,用户将8位频宽比(Duty Cycle)置人CCPR1的低8位字节CCPR1L,而高8位CCPR1H作为PWM寄存器。PWM产生的过程如图之所示:
PWM周期=[(PR2)十1」×4Tosc ×(TMR2预分频值)
PWM Dwty Cycle=DC1×Tosc×(TMR2预分频值)
其中DC1=CCPR1L和CCPR1CON(5:4)组成的10位值,所以PWM输出分辨率最高可达10位。 PWM频率和分辨率的关系(20 MHz振荡下、见表1.
表1 PWM频率和分辨率关系表



二、同步串行口(SSP) 
PICI6C64单片机具有同步串行口简称SSP,可用于与其他外围装置或微控制器通讯。外围装置可以是EEPROM、移位寄存器、显示驱动器,A/D转换器等。SSP模块可以由用户选择两种工作方式
(1)串行外部接口(SPI)
(2)I2C接口
(一)串行外部按口(SPI)方式 SPI方式可让8位数据同步传输和接收,用3个脚完成其通讯功能:
(1)串行数据出(SDO)
(2)串行数据人(SDI)
(3)串行时钟(SCK)
PICI6C64有一个SSP拉制寄存器SSP CON,用户可用软件对其进行设置,选择自己需要的工作方式。另一个SSP状态寄存器SSPSTAT则记录了SSP的各种工作状态。
通过设置SSPCON(5:0)位,就可使SPI 工作在下列方式。
(1)主控方式(SCK作时钟输出)
(2)从属方式(SCK作时钟输入)
(3)时钟极性(SCK上升/下降沿传输数据) 图3给出两个微处理器相连的典型例子.



主控器(微处理器1)通过SCK信号来开始传输数据。数据通过移位寄存器在各自的时钟边沿传送,并在下个边沿被锁存。两个处理器以相同的时钟极性进 行串行通讯,两个处理器即可同时发送与接收数据。
(二)I2C方式 
SSP在I2C模式下可完成所有从控器(Slave)的功能,并提供硬件支持主控制(Master)的软件实现。两个脚用于数据传输:RC3/SCK/SCL(时钟)和RC4/ SD1/SDA(数据),PICI6C64单片机的I2C串行通讯支持7位和10位寻址,可完成标准和快速方式的数据传输。
用户通过设置SSPCON(3:O)可使I2C操作工作在如下几种方式:
(1)I2C从控器模式(7位地址)。
(2)I2C从控器模式(10位地址)。
(3)I2C从控器模式(7位地址)并支持主控模式,
(4)I2C从控器模式(10位地址)并支持主控模式。
(5)I2C主控器模式,从控方式不用。 
SSPSTAT寄存器指出数据传输的状态,包括STABT和STOP位的检测,区别地址和数据,判别下一字节是否10位的地址及数据传送的方向。
关于I2C技术详述,读者可参阅PHILIPS公司的 有关资料。 
引用地址:PIC16C64单片机外部功能特点

上一篇:PIC16C74单片机SPI方式读写串行EEPROM程序
下一篇:PIC16系列单片机与PC机串行通信的软硬件实现

小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • ARM裸机篇--按键中断
    先看看GPOI的输入实验:按键电路图:GPF1管教的功能:EINT1要使用GPF1作为EINT1的功能时,只要将GPFCON的3:2位配置成10就可以了!GPF1先配 ...
  • 网上下的--ARM入门笔记
    简单的介绍打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方。为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所 ...
  • 学习ARM开发(23)
    三个任务准备与运行结果下来看看创建任务和任运的栈空间怎么样的,以及运行输出。Made in china by UCSDN(caijunsheng)Lichee 1 0 0 ...
  • 学习ARM开发(22)
    关闭中断与打开中断中断是一种高效的对话机制,但有时并不想程序运行的过程中中断运行,比如正在打印东西,但程序突然中断了,又让另外一个 ...
  • 学习ARM开发(21)
    先要声明任务指针,因为后面需要使用。 任务指针 volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • 学习ARM开发(20)
  • 学习ARM开发(19)
  • 学习ARM开发(14)
  • 学习ARM开发(15)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved