根据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 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
【换取逻辑分析仪】自制底板并驱动ArduinoNanoRP2040ConnectLCD扩展板被打赏47分 | |
【分享评测,赢取加热台】RISC-V GCC 内嵌汇编使用被打赏38分 | |
【换取逻辑分析仪】-基于ADI单片机MAX78000的简易MP3音乐播放器被打赏48分 | |
我想要一部加热台+树莓派PICO驱动AHT10被打赏38分 | |
【换取逻辑分析仪】-硬件SPI驱动OLED屏幕被打赏36分 | |
换逻辑分析仪+上下拉与多路选择器被打赏29分 | |
Let'sdo第3期任务合集被打赏50分 | |
换逻辑分析仪+Verilog三态门被打赏27分 | |
换逻辑分析仪+Verilog多输出门被打赏24分 | |
【分享评测,赢取加热台】使用8051单片机驱动WS2812被打赏40分 |