| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1046 人关注过本帖
标题:一个头文件IOMACROS.H,希望有硬件开发大神过来看看
只看楼主 加入收藏
_Dennis_h
Rank: 2
等 级:论坛游民
帖 子:37
专家分:15
注 册:2015-3-6
结帖率:90.91%
收藏
 问题点数:0 回复次数:1 
一个头文件IOMACROS.H,希望有硬件开发大神过来看看
/*
*  DESCRIPTION for iomacros.h
*      Read/Write macros for memory mapped I/O
*/

#ifndef _IOMACROS_H
#define _IOMACROS_H
#include "type.h"
/****************************************************************************
                        Constants Definitions
****************************************************************************/
#define IO_READ8(p)      (Uint8)(*(volatile Uint8 *)(p))
#define IO_WRITE8(p,c)   (*((volatile Uint8 *)(p)) = ((Uint8)(c)))

#define IO_READ16(p)     (Uint16)(*(volatile Uint16 *)(p))
#define IO_WRITE16(p,v)  (*((volatile Uint16 *)(p)) = (Uint16)(v))

#define IO_READ32(p)     (Uint32)(*(volatile Uint32 *)(p))
#define IO_WRITE32(p,v)  (*((volatile Uint32 *)(p)) = (Uint32)(v))

//#define R32(p)     (Uint32)(*(volatile Uint32 *)(p))
//#define WR32(p,v)  (*((volatile Uint32 *)(p)) = (Uint32)(v))

#define W8(p,c)   (*((volatile Uint8 *)(p)) = ((Uint8)(c)))
#define W16(p,v)  (*((volatile Uint16 *)(p)) = (Uint16)(v))
#define W32(p,v)  (*((volatile Uint32 *)(p)) = (Uint32)(v))

#define R8(p,data)  (Uint8)(data = *(volatile Uint8 *)(p))
#define R16(p,data)  (Uint16)(data = *(volatile Uint16 *)(p))
#define R32(p,data)  (Uint32)(data = *(volatile Uint32 *)(p))
#endif
搜索更多相关主题的帖子: include memory 开发 硬件 
2015-03-09 14:07
_Dennis_h
Rank: 2
等 级:论坛游民
帖 子:37
专家分:15
注 册:2015-3-6
收藏
得分:0 
貌似是某芯片的IO口的读/写地址指针的宏定义。。。有高手能解读一下吗?
2015-03-09 14:09
快速回复:一个头文件IOMACROS.H,希望有硬件开发大神过来看看
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017694 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved