I2C驱动上拉下拉问题?

MEIDANZON 2011-04-15 05:06:11
GPBPUD 位描述
GPB[n] [2n+1:2n]
n=0~6
00=禁止上拉/下拉
01=下拉使能
10=上拉使能
11=保留
可是我看I2C初始化的时候确是这样写的
void InitializeGPIOPort(void)
{
// set SCL
g_pGPIOReg->GPBCON = (g_pGPIOReg->GPBCON & ~(0xf<<20)) | (0x2<<20);

// set SDA
g_pGPIOReg->GPBCON = (g_pGPIOReg->GPBCON & ~(0xf<<24)) | (0x2<<24);

// set SCL pull-up
g_pGPIOReg->GPBPUD = (g_pGPIOReg->GPBPUD & ~(0x3<<10)) | (0x0<<10);

// set SDA pull-up
g_pGPIOReg->GPBPUD = (g_pGPIOReg->GPBPUD & ~(0x3<<12)) | (0x0<<12);
}
这明明是是写的00呀,但是程序注释确是写的上拉,不过I2C从硬件上讲确实是应该有上拉的,迷糊了.....
...全文
262 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
MEIDANZON 2011-04-18
  • 打赏
  • 举报
回复
可是这是三星自己写的驱动,而且测试过,是好的,做事还是较真一下好
当我遇上-你 2011-04-15
  • 打赏
  • 举报
回复
[Quote=引用楼主 meidanzon 的回复:]
GPBPUD 位描述
GPB[n] [2n+1:2n]
n=0~6
00=禁止上拉/下拉
01=下拉使能
10=上拉使能
11=保留
可是我看I2C初始化的时候确是这样写的
void InitializeGPIOPort(void)
{
// set SCL
g_pGPIOReg->GPBCON = (g_pGPIOReg->GPBCON & ~(0xf<<2……
[/Quote]
安装手册来,不就可以了
MEIDANZON 2011-04-15
  • 打赏
  • 举报
回复
没分了........
还有2个问题
DisableThreadLibraryCalls()函数是不是禁止线程调用,我看他的注释的理解是,只能被第一个线程调用,别的线程无法调用他,防止驱动出现问题。
DEBUGREGISTER()函数,MSN上是说为一个进程或者DLL注册调试区设置,设置什么?搞不懂,感觉跟没说一样.........是我相关知识太少,理解不了,高人给通俗的讲一下吧。

19,504

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧