单片机的寄存器寄存器标志位问题

IRP bit7 也是RAM数据存储器体选位仅用于間接寻址 2.实现间接寻址的寄存器INDF和FSR 3.与程序计数器PC相关的寄存器PCL和PCLATH 4.电源控制寄存器PCON 位助记符 位 说明 BOR bit0 电源上电复位标志位 POR bit1 掉电锁定复位标志位 bit2~bit3 —— PIC单片机的寄存器的指令系统 PIC16F87X共有35条指令,均是长度为14位的单字节指令所有指令按操作对象的不同又分为3类:面向字节操作类(17条);面向位操作类(4条);常数操作和控制操作类(14条)。 PIC配置字的设置 PIC的配置字设置方法到目前我学到两种: 1. 两个“_”紧跟CONFIG后跟配置字設置后的数值; 2. 两个“_”紧跟CONFIG,后跟各配置字的位和状态其格式如下: INDF寄存器不是物理寄存器,对INDF寄存器寻址将导致间接寻址 使用INDF寄存器可以实现间接寻址。对任何INDF寄存器的指令实际上访问的是由指针寄存器FSR所指的寄存器间接读INDF寄存器本身会返回00H。而使用间接寻址对IDNF寄存器进行写操作将导致执行一个空操作(虽然可能会影响状态位)有效的9位地址是通过组合8位FSR寄存器和IRP位(STATUS)获得的。示例如下: TRISX寄存器的某位清零则将输出锁存器的内容锁存到指定的引脚。 RCSTA寄存器操作注意事项 在接收数据过程中如果将接收到的数据及时读出,那麼USART则会正常接收下一次发送过来的数据可是要是在接收时发生中断,或者其它打断接收的操作而延误了及时读取RCREG中的数据。此时移位寄存器将不会再向RCREG放入任何数据。在这种情况下即使有数据发送,RCIF标志位也不会被置位接收会因此而中断。如果不采取措施通信將会因此而彻底中断。 造成这个问题的原因是由于上述操作中断了接收而延误数据及时取出致使RCSTA寄存器中的溢出标志位OERR(RCSTA)置位。该标志位置位就会禁止移位寄存器将接收数据放入RCREG中从而无法继续接收。 解决这一问题的方法是清零OERR清零OERR不能直接对该标志位操作,必须通过清除允许连续接收位CREN(RCSTA)清除溢出错误标志OERR但是,清除允许连续接收位CREN(RCSTA)后必须再置位该位,否则只能接收到一个字节。

VIP专享文档是百度文库认证用户/机構上传的专业性文档文库VIP用户或购买VIP专享文档下载特权礼包的其他会员用户可用VIP专享文档下载特权免费下载VIP专享文档。只要带有以下“VIP專享文档”标识的文档便是该类文档

VIP免费文档是特定的一类共享文档,会员用户可以免费随意获取非会员用户需要消耗下载券/积分获取。只要带有以下“VIP免费文档”标识的文档便是该类文档

VIP专享8折文档是特定的一类付费文档,会员用户可以通过设定价的8折获取非会員用户需要原价获取。只要带有以下“VIP专享8折优惠”标识的文档便是该类文档

付费文档是百度文库认证用户/机构上传的专业性文档,需偠文库用户支付人民币获取具体价格由上传人自由设定。只要带有以下“付费文档”标识的文档便是该类文档

共享文档是百度文库用戶免费上传的可与其他用户免费共享的文档,具体共享方式由上传人自由设定只要带有以下“共享文档”标识的文档便是该类文档。

我要回帖

更多关于 单片机的寄存器 的文章

 

随机推荐