初学PIC笔记.docVIP

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
初学PIC笔记

初学PIC笔记 端口分析: PORTA(RA0~RA5)、PORTB(RB0~RB7)、PORTC(RC0~RC7)、PORTD(RD0~RD7)和PORTE(RE0~RE2) 端口A:端口A是一个6位双向端口。相应的数据方向寄存器TRISA,将TRISA的一位置1,把相应的引脚变为 输入,即把相应的输出驱动器置成高阻抗方式。对TRISA的一位清零,相应的引脚变为输出。 读端口A寄存器读的是引脚的状态,反之,写入端口将是写向端口寄存器。所有写操作都是先读后 写操作。RA4(T0CKI)RA2(AN2/VREF-)RA3(AN3/VREF+) 端口B: 端口B是一个8位双向端口。相应的数据方向寄存器TRISB,将TRISB的一位置1,把相应的引脚变为 输入,即把相应的输出驱动器置成高阻抗方式。对TRISB的一位清零,相应的引脚变为输出。 PORTB的3个引脚对于低电压编程功能。RB2/PGM,RB6/PGC和RB7/PGD是复用的。 端口B的每一个引脚都有一个内部弱上拉,一个单独控制位能够打开所有的弱上拉。这个可以通 过对RBPU(OPTION_REG7)位清零来实现。当端口设置为一个输出时弱上拉自动关闭。上拉不能 使用在上电复位。RB0/INT是一个外部中断输入引脚和通过使用INTEDG(option6)位来设置 端口C:端口A是一个6位双向端口。相应的数据方向寄存器TRISA,将TRISA的一位置1,把相应的引脚变为 输入,即把相应的输出驱动器置成高阻抗方式。对TRISA的一位清零,相应的引脚变为输出。 端口D:端口A是一个6位双向端口。相应的数据方向寄存器TRISA,将TRISA的一位置1,把相应的引脚变为 输入,即把相应的输出驱动器置成高阻抗方式。对TRISA的一位清零,相应的引脚变为输出。 Timer0: 8位定时器/计数器寄存器;内部或外部时钟选择;中断从FFH到00H溢出 通过对OPTION_REG5 T0CS清零可选择定时器方式,Timer0模块在每个指令周期加1(无预分频器),如果是在写入TMR0寄存器时,递增将会延迟两个指令周期发生。 通过对OPTION_REG5 T0CS置1可选择计数方式,Timer0在T0CK1引脚的每个上升/下降边沿递增加1,递增边沿通过Timer0源边沿选择位T0SE(OPTION_REG4)来决定,通过对T0SE清零来选择上升沿。 Timer0预分频器:PSA和PS0~PS2(OPTION3:0)决定了预分频器的分配对象和分频对象。当预分频器分配给Timer0时,所有写入Timer0寄存器的指令将使预分频器清零。当预分频器分配给WDT时,CLRWDT指令在对预分频器清零时,也对WDT清零。预分频器既不可读也不可写。 Timer1: Timer1模块由两个可读写的寄存器(TMR1H和TMR1L)组成的16位定时器/计数器。从0000H递增到FFFFH然后再回到0000H. 运行方式可通过时钟选择位TMR1CS(T1CON1)来决定。在定时器方式(T1CON=0)时,TIMER1在每个指令周期递增加1,在计数方式(T1CON=1)时,它在每个外部时钟输入的上升沿递增加1. Timer1可通过对控制位TMR1ON(T1CON0)置1和清零来确定中断使能或不使能 串口USART: TRSIC-----TRISC7(RX),TRISC6(TX),RC端口方向寄存器; SPBRG 对于波特率发生器产生波特率的定义值 SPBRG=17;//11.0592-9600 RCSTA-----SPEN RX9 SREN CREN CCP1M3 CCP1M2 CCP1M1 CCP1M0 SPEN=1,使能串口通讯位,CREN=1,允许接收位 TXSTA-----CSRC TX9 TXEN SYNC BRGH TRMT TX9D TXEN=1,发送使能 TXREG-----USART发送数据寄存器 RXREG-----USART接收数据寄存器 void init_usart() { TRISC=0X80; TXSTA=0X20; SPBRG=17; RCSTA=0X90; } void PWMint() { CCPR1L=0X7F; CCP1CON=0X3C; INTCON=0X00; PR2=0XFF; TRISC=0XFB; } OPTION_REG:选择寄存器,可读写,包括各种控制位用来设定TMR0/WDT预分频器,外部INT中断,TMR0和在 PORTB上的弱上拉 INTCON:中断控制寄存器,可读写,包括各种对于TM

您可能关注的文档

文档评论(0)

htfyzc + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档