完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
宽度 :
我用AD7787作为AD芯片 AIN1频道没问题 但是AIN2失败了 守则如下: ad7787_init (); (1) 与(1) { { { /阅读AD7787校准数据 = AD7787_Read(AD7787_CH1);/ad7787_ch1=0011 000 000 hal_delay( 10) ; = AD7787_Read(AD7787_CH2);/ad7787_ch2=0011 1001 hal_delay( 10) ; 时 时 无效的 AD7787_ Init( 撤销) { bint8_t 命令; 5⁄8_ t dat[4] 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF}; ad7787_cs_low; hal_delay(1); 命令=0x00; HAL_SPI_ Transmit( hspi2, 命令, 1, 100); hal_delay(1); HAL_SPI_ Transmit( hspi2, dat, 4, 100);// 写入 32bit 1 重置 hal_delay(1); //write 模式登记簿 命令=0x10; HAL_SPI_ Transmit( hspi2, 命令, 1, 100); hal_delay(1); 命令=0x06; HAL_SPI_ Transmit( hspi2, 命令, 1, 100); // 设置 U/ B 到单极 hal_delay(1); ad7787_cs_high; HAL_GPIO_WritePin(GPIOB,GPIO_PIN_15,GPIO_PIN_SET); hal_delay( 10) ; } viint32_t AD7787_Read( int8_ t 命令) { 5int32_t 缓冲=0; 5⁄8_t dat[3,0]; i; i; unt8_t i; i; yint8_t i; i; yint8_t i; i; yint8_t i; i; ad7787_cs_low; hal_delay( 10) ; HAL_SPI_ Transmit( hspi2, 命令, 1, 100); hal_delay( 10) ; HAL_SPI_ 收到( hspi2, dat, 3, 100);/ MSB 首 24 位 hal_delay( 10) ; ad7787_cs_high; HAL_GPIO_WritePin(GPIOB,GPIO_PIN_15,GPIO_PIN_SET); for(i=0; i<3; i++) { buffer = (buffer << 8) + dat[i]; } AD7787_uvoltage =(uint32_t)(((float)buffer * VREF7787 / (1ul << 24))); 返回 AD7787 - 压强; } |
|
相关推荐
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
229 浏览 0 评论
工业现场经常用到的 RS485 通信,原来它的收发机制是这样的
974 浏览 0 评论
电路小知识 | 电源选型要点、电路图的解读方法、LED及其应用示例
851 浏览 0 评论
1278 浏览 0 评论
1186 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-28 23:13 , Processed in 0.533844 second(s), Total 72, Slave 54 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号