完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
先读读别的寄存器看能读对不
|
|
|
|
读控制寄存器也是错误的,可是我看了感觉时序什么的都是对的 以下是我写控制寄存器的程序: void WriteREG(unsigned long int puke) //0x209022激活自校准模式 this sub function is to write 24bit data to register { unsigned int flag = 0; unsigned int ShiftFlag = 0x0080; unsigned int High8 = 0, Low16 = 0, ShiftData = 0; int i = 0; High8 = (puke & 0x00FF0000)>>16; Low16 = puke & 0x0000FFFF; *P_IOA_Buffer = *P_IOA_Buffer & 0xFFFE; //set SCLK low *P_IOA_Buffer = *P_IOA_Buffer | 0x0010; //set TFS high *P_IOA_Buffer = *P_IOA_Buffer | 0x0008; //RFS taken high *P_IOA_Dir = *P_IOA_Dir | 0x0002; //to configure SDATA as ouput *P_IOA_Attrib = *P_IOA_Attrib | 0x0002; //start to write data to control register *P_IOA_Buffer = *P_IOA_Buffer & 0xFFDF; // A0 set LOW,write control reg Delay1us(); *P_IOA_Buffer = *P_IOA_Buffer & 0xFFEF; // TFS set low for(i = 0; i<24; i++) { if(0 == i) //deal with the high 8 bit { ShiftFlag = 0x0080; ShiftData = High8; } else if(8 == i) //deal with the low 16 bit { ShiftFlag = 0x8000; ShiftData = Low16; } flag = ShiftData & ShiftFlag; if(flag) { *P_IOA_Buffer = *P_IOA_Buffer | 0x0002;//SDATA=1 0010 // asm("INT OFF"); // Delay1us(); // asm("INT IRQ"); *P_IOA_Buffer = *P_IOA_Buffer | 0x0001;//SLCK a rising edge // asm("INT OFF"); Delay1us(); // asm("INT IRQ"); *P_IOA_Buffer = *P_IOA_Buffer & 0xFFFE;//SLCK a down edge Delay1us(); } else { *P_IOA_Buffer = *P_IOA_Buffer & 0xFFFD; //SDATA=0 // asm("INT OFF"); // Delay1us(); // asm("INT IRQ"); *P_IOA_Buffer = *P_IOA_Buffer | 0x0001; //give SCLK a rising edge // asm("INT OFF"); Delay1us(); // asm("INT IRQ"); *P_IOA_Buffer = *P_IOA_Buffer & 0xFFFE; Delay1us(); } ShiftFlag = ShiftFlag >> 1; } *P_IOA_Buffer = *P_IOA_Buffer | 0x0010; //set TFS high *P_IOA_Buffer = *P_IOA_Buffer | 0x0020; //set A0 high } |
|
|
|
jingfu888 发表于 2018-9-29 07:01 问一下,检查过IO的电平适配么 还有SPI的极性是否正确 么 |
|
|
|
检查了下,IO口配置好像有点问题,还在调,有进展跟您保持交流 ~很感谢 |
|
|
|
只有小组成员才能发言,加入小组>>
ADP5092 SYS端口为2.09V,但是REG_OUT为0是什么原因?
1677 浏览 1 评论
ad7193差分输入ain1与ain2差是正值时,读到电压与实际值误差小,但为负值值,误差就变的很大
4071 浏览 2 评论
8782 浏览 1 评论
3002 浏览 1 评论
6906 浏览 2 评论
ADC3442采集,分析数据出现有规则毛刺,请问是哪方面的问题啊?
1111浏览 3评论
AD7190状态寄存器一直是0x80,连续转换模式下RDY不拉低
1422浏览 2评论
1334浏览 2评论
1103浏览 1评论
979浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-7 01:59 , Processed in 0.812522 second(s), Total 54, Slave 48 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191