Set the I/O Voltage Level for the NI 8452 I2C/SPI Interface?
2 次查看(过去 30 天)
显示 更早的评论
In LabView there is a way to set the 8452's I/O Voltage Level to values between 3.3 and 1.2V. Is there a way to access this in MATLAB?
回答(2 个)
John Hribar
2019-10-20
4 个评论
John Haven
2019-11-20
Hi John,
Thank you very much. I'll give this a try and let you know if I have any issues. This saves me a lot of time!
Thanks again,
John
Nathan Monroe
2020-7-15
Thanks John, for this wonderfully helpful resource. After a few frustrating days of fiddling with it, thought I'd add a few notes for future people who come upon this page.
In my 64 bit Windows system, the above loadlibrary command fails. I resolved this by editing the ni845x.h file in the above to add the following lines:
#include <stdio.h> // Include file for printf
#include <stdlib.h> // Include file for strtol
#include <conio.h> // Include file for _getch
#include <string.h>
#include <windows.h> // Include file for Win32 time functions
These were taken from one of NI's example scripts. It's possible not all of them are necessary, but it works. On top of that, there seems to be some issue where Matlab compiles the code for a 32 bit system when really my system is 64 bit. As a result, there is a datatype error with the DeviceHandle, relating to 32 bit vs 64 bit unsigned integers. To resolve this, I added to the ni845x.h file the following:
#define WIN64
I admittedly don't fully understand the nuances of it, but this resolves my issues and allows John's above code to work.
Andrei
2023-9-12
Starting in MATLAB R2023a, this is possible by using the new ni845x interface, which has a VoltageLevel property
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Call C from MATLAB 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!