根据ADI官方的驱动,移植到STM32F103上,使用软I2C,得到如下数据:
一次读取寄存器内所有数据:
00 0x54
01 0x00
02 0x00
03 0x00
04 0x00
05 0x00
06 0x00
07 0x00
08 0x00
09 0x00
10 0x00
11 0x00
12 0x00
13 0x00
14 0x00
15 0x00
16 0x00
17 0x00
18 0x00
19 0x00
20 0x00
21 0x00
22 0x00
23 0x00
每次读取一个寄存器值:
00 0x50
01 0x52
02 0x54
03 0x54
04 0x54
05 0x54
06 0x54
07 0x54
08 0x55
09 0x55
10 0x50
11 0x50
12 0x50
13 0x50
14 0x50
15 0x50
16 0x52
17 0x54
18 0x54
19 0x54
20 0x54
21 0x54
22 0x54
23 0x55
测试了两片样板,发现读的出SN和ID相同,且数据不稳定。可能是软I2C及AD7150驱动写的有问题,正在继续调试中……
----------------------------------------------
Board2:
00 0x50
01 0xff
02 0xff
03 0xff
04 0xff
05 0xff
06 0xff
07 0xff
08 0xff
09 0xff
10 0xff
11 0xff
12 0xff
13 0xff
14 0xff
15 0xff
16 0xff
17 0xff
18 0xff
19 0xff
20 0xff
21 0xff
22 0xff
23 0xff
------------------------------------
00 0x50
01 0x5f
02 0x40
03 0x30
04 0x20
05 0x5f
06 0x21
07 0x30
08 0x7e
09 0x08
10 0x86
11 0x0b
12 0x08
13 0x86
14 0x0b
15 0x19
16 0x00
17 0xc0
18 0xc0
19 0x22
20 0x2e
21 0xc7
22 0xfe
23 0x08
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
修改了软I2C时序后,得到上面的数据。单地址读取的数据应该是正确的,但连续地址读取结果有误。
修改软I2C的读字节子程序自后得到如下数据;
00 0x54
01 0x5f
02 0x30
03 0x30
04 0x90
05 0x5f
06 0x34
07 0x30
08 0x9a
09 0x08
10 0x86
11 0x0b
12 0x08
13 0x86
14 0x0b
15 0x19
16 0x00
17 0xc0
18 0xc0
19 0x22
20 0x2e
21 0xc7
22 0xfe
23 0x08
------------------------------------
00 0x50
01 0x5f
02 0x30
03 0x30
04 0x90
05 0x5f
06 0x34
07 0x30
08 0x9a
09 0x08
10 0x86
11 0x0b
12 0x08
13 0x86
14 0x0b
15 0x19
16 0x00
17 0xc0
18 0xc0
19 0x22
20 0x2e
21 0xc7
22 0xfe
23 0x08
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
运行官方参考代码,得到结果:
Read Serial Number and Chip ID.
SN=0x22-2E-C7-FE ID=0x08
Read out CAPDACs.
CAPDAC1=0xC0 CAPDAC2=0xC0
Write 0xAA to CAPDACs and read back.
CAPDAC1=0xAA CAPDAC2=0xAA
Reset AD7150 via reset command and read out CAPDACs.
CAPDAC1=0xC0 CAPDAC2=0xC0
Write 0x55 to CAPDACs and read back.
CAPDAC1=0x40 CAPDAC2=0x40
Reset AD7150 via general call and read out CAPDACs.
CAPDAC1=0xC0 CAPDAC2=0xC0
至此AD7150基本调试通过。
共1条
1/1 1 跳转至页
一直用的STM32F103ZET6,之前的工程都是可以用Keil的逻辑分析仪仿真,而且不会自动进入SystemInit()子程序。但这两天的工程都没有办法仿真,
共1条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
【有奖活动】震撼来袭!这场直播将直击工程师的心灵! | |
“我想要一部加热台”活动,不花钱赢取开发好工具!活动开始了哦 | |
【有奖活动】伙伴们:您的“需求”解决了吗? | |
抽奖了,抽奖了,金升阳医疗电源 |
打赏帖 | |
---|---|
【换取手持数字示波器】+与同事对定时器输出相位可调PWM移相全桥控制分享被打赏50分 | |
【换取手持数字示波器】+LP-MSPM0L1306开发板试用体验+串口被打赏40分 | |
CC-RL编译器相关问题求助被打赏10分 | |
【换取手持数字示波器】+与同事对ESP-12开发调试经验分享被打赏50分 | |
【换取手持数字示波器】+同事tek示波器调试spi解析被打赏50分 | |
【换取手持数字示波器】+2.6寸墨水屏调试经验被打赏50分 | |
换取手持数字示波器+个人开关电源的设计经验被打赏50分 | |
【换取手持数字示波器】+【APT32F173测评】+URAT被打赏20分 | |
【换取手持数字示波器】CH32X035的定时器以及外部中断体验被打赏50分 | |
【换取手持数字示波器】CH32X035搭建开发环境(RISC-V)被打赏50分 |