Set the I/O Voltage Level for the NI 8452 I2C/SPI Interface?

10 views (last 30 days)
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?
  1 Comment
Youssif Mosa
Youssif Mosa on 19 Oct 2019
I'm looking for the same answer as well, John Hribar did you find a solution for this?
we appreciate if someone could advise ?

Sign in to comment.

Answers (2)

John Hribar
John Hribar on 20 Oct 2019
Hi Youssif,
I ended up writing a couple of custom scripts to get the job done, using NI's C API. I can send them to you if you'd like.
Sincerely,
John
  4 Comments
John Haven
John Haven on 20 Nov 2019
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
Nathan Monroe on 15 Jul 2020
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.

Sign in to comment.


Andrei
Andrei on 12 Sep 2023
Starting in MATLAB R2023a, this is possible by using the new ni845x interface, which has a VoltageLevel property

Categories

Find more on Programming in Help Center and File Exchange

Tags

Products


Release

R2016b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!