OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 10536|回复: 8

STM32 IIC没有ACK信息回送

[复制链接]

6

主题

18

帖子

0

精华

初级会员

Rank: 2

积分
62
金钱
62
注册时间
2014-7-29
在线时间
0 小时
发表于 2014-9-19 12:09:33 | 显示全部楼层 |阅读模式
请教原子哥,STM32的ACK这个信号我一直收不到是为什么呢,我是硬件IIC1,读PCF8563芯片,但是没有办法收到那个ACK信号
void I2C_Mode_config(void)
{

I2C_InitTypeDef I2C_InitStructure;//?¨??I2C?á????

//?ò??I2C1?±??
RCC_APB1PeriphClockCmd(RCC_APB1Periph_I2C1,ENABLE);


I2C_InitStructure.I2C_Mode = I2C_Mode_I2C;//????I2C??I2C????

I2C_InitStructure.I2C_DutyCycle = I2C_DutyCycle_2;//?????????ì???¤×÷?????????§

I2C_InitStructure.I2C_OwnAddress1 =0x0A;//???è???·

I2C_InitStructure.I2C_Ack = I2C_Ack_Enable ;//????????

I2C_InitStructure.I2C_AcknowledgedAddress = I2C_AcknowledgedAddress_7bit;//ATC24C02???·??7??

I2C_InitStructure.I2C_ClockSpeed = 400000;//×?????400KHz

I2C_Cmd(I2C1, ENABLE);//????I2C

I2C_Init(I2C1, &I2C_InitStructure);
}


unsigned char i2c_write_n_bytes(unsigned char SLA_W, unsigned int ADDR,unsigned int N, unsigned char *DAT)
{
unsigned int i;

I2C_GenerateSTART(I2C1, ENABLE);//?ú?ú??????
while(!I2C_CheckEvent(I2C1, I2C_EVENT_MASTER_MODE_SELECT)); //

I2C_Send7bitAddress(I2C1, SLA_W, I2C_Direction_Transmitter);//

I2C_EE_WaitEepromStandbyState();

while(!I2C_CheckEvent(I2C1,I2C_EVENT_MASTER_TRANSMITTER_MODE_SELECTED));

I2C_SendData(I2C1, (unsigned char)ADDR); //

while(! I2C_CheckEvent(I2C1, I2C_EVENT_MASTER_BYTE_TRANSMITTED));//
for(i=0;i<N;i++)
{

I2C_SendData(I2C1, *(DAT+i));

while(! I2C_CheckEvent(I2C1, I2C_EVENT_MASTER_BYTE_TRANSMITTED));//

}

I2C_GenerateSTOP(I2C1, ENABLE);//
return 1;
}

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

120

主题

7877

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12010
金钱
12010
注册时间
2013-9-10
在线时间
427 小时
发表于 2014-9-19 13:03:11 | 显示全部楼层
没用过硬件的,所以。。。
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2014-9-19 23:01:53 | 显示全部楼层
硬件IIC已经被我抛弃了,所以,楼主慢慢解决吧。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

28

主题

1489

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1656
金钱
1656
注册时间
2013-7-24
在线时间
1 小时
发表于 2014-9-20 20:39:24 | 显示全部楼层
回复【3楼】正点原子:
---------------------------------
F3/F4的没必要弃之不用吧。
于20150522停用该账号:http://www.microstar.club
回复 支持 反对

使用道具 举报

28

主题

1489

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1656
金钱
1656
注册时间
2013-7-24
在线时间
1 小时
发表于 2014-9-20 20:42:58 | 显示全部楼层
楼主如果有设备,请测出波形。数据流正常情况下,有可能是8563的问题。
于20150522停用该账号:http://www.microstar.club
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2014-9-20 23:00:13 | 显示全部楼层
回复【4楼】styleno1:
---------------------------------
不打算折腾,来简单的,呵呵。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

6

主题

18

帖子

0

精华

初级会员

Rank: 2

积分
62
金钱
62
注册时间
2014-7-29
在线时间
0 小时
 楼主| 发表于 2014-9-21 14:24:24 | 显示全部楼层
那请教原子哥,我用示波器看过波形了,一个脚是正弦32768,一个脚是直流600mV,我想问下这样算是晶振起振了么,他的那个晶振是不是只有起振的时候才能写数据进去呢,那个晶振是程序控制他起振还是说上电就起振的呢,这是我板子的原理图

回复 支持 反对

使用道具 举报

6

主题

18

帖子

0

精华

初级会员

Rank: 2

积分
62
金钱
62
注册时间
2014-7-29
在线时间
0 小时
 楼主| 发表于 2014-9-21 14:32:11 | 显示全部楼层
原子哥,我现在改成软件模拟IIC了,但是我现在写入PCF8563芯片的时钟初值有问题,我的写操作只能执行6次,然后就会出错,我想问下原子哥这是为什么呢
 write_CFGbyte(0x00,0x20);//????8563

 write_CFGbyte(0x02,c8563_Store[0]);
 write_CFGbyte(0x03,c8563_Store[1]);//这里写操作会出错
 write_CFGbyte(0x04,c8563_Store[2]);



void write_CFGbyte(unsigned char CFG_add,unsigned char CFG_data)
{          

IIC_Start();               
IIC_Send_Byte(write_ADD);       
IIC_Wait_Ack();
  if(F0 == 1)

SystemError = 1;
    return;   
}


IIC_Send_Byte(CFG_add);   
IIC_Wait_Ack();               
  if(F0 == 1)

SystemError = 1;
return; 
}


  IIC_Send_Byte(CFG_data);      
IIC_Wait_Ack();              
  if(F0 == 1)

SystemError = 1;
return;  
}


IIC_Stop();  

}
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2014-9-21 22:46:01 | 显示全部楼层
回复【8楼】misszhongy:
---------------------------------
这我也不太清楚,你慢慢找找问题吧。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 22:54

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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