野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12089|回复: 2

关于IDR寄存器的问题

[复制链接]
发表于 2016-2-25 16:13:25 | 显示全部楼层 |阅读模式
IDR读取出来是几位的啊,为什么两次读取后要这样运算
  1. #define READ_FIFO_PIXEL(RGB565)           do{\
  2.                                           RGB565=0;\
  3.                                           FIFO_RCLK_L();\
  4.                                           RGB565 = (GPIOB->IDR) & 0xff00;\
  5.                                           FIFO_RCLK_H();\
  6.                                     FIFO_RCLK_L();\
  7.                                           RGB565 |= (GPIOB->IDR >>8) & 0x00ff;\
  8.                                           FIFO_RCLK_H();\
  9.                                     }while(0)
复制代码
回复

使用道具 举报

发表于 2016-2-25 18:31:58 | 显示全部楼层
摄像头只有8根线,每次IDR实际有效数据只有8位
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-2-26 15:13:07 | 显示全部楼层
flyleaf 发表于 2016-2-25 18:31
摄像头只有8根线,每次IDR实际有效数据只有8位

有效数据是八位,这个我大概知道,我在想是不是IDR寄存器里的是16位的数据,然后高八位有效啊?要不然为什么可以有16位的位运算啊?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-11-23 12:34 , Processed in 0.027168 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表