Đầu vào tương tự#
Giới thiệu#
Lớp analog_in được sử dụng để đọc tín hiệu đầu vào analog từ các thiết bị được kết nối với cổng 3 dây của VEX V5. Nó cung cấp quyền truy cập vào giá trị analog hiện tại và cho phép đăng ký các hàm gọi lại khi giá trị thay đổi.
Hàm tạo lớp#
analog_in(
triport::port &port );
Lớp Destructor#
Hủy đối tượng analog_in và giải phóng các tài nguyên liên quan.
~analog_in();
Thông số#
Tham số |
Kiểu |
Sự miêu tả |
|---|---|---|
|
|
Cổng 3 dây mà đầu vào tương tự được kết nối, được viết là |
Ví dụ#
// Create the analog_in instance on 3-Wire Port A
analog_in AnalogInA = analog_in(Brain.ThreeWirePort.A);
Chức năng thành viên#
Lớp analog_in bao gồm các hàm thành viên sau:
value— Trả về giá trị của thiết bị Đầu vào Tương tự.changed— Đăng ký một hàm gọi lại khi giá trị đầu vào tương tự thay đổi.
Trước khi gọi bất kỳ hàm thành viên nào của analog_in , cần phải tạo một thể hiện analog_in , như được hiển thị bên dưới:
/* This constructor is required to use an
Analog Input device. Replace the values
as needed. */
// Create the analog_in instance on 3-Wire Port A
analog_in AnalogInA = analog_in(Brain.ThreeWirePort.A);
value#
Trả về giá trị hiện tại của tín hiệu đầu vào tương tự.
Available Functionsint32_t value(
analogUnits units );
Tham số |
Kiểu |
Sự miêu tả |
|---|---|---|
|
|
Đơn vị biểu thị giá trị:
|
Hàm này trả về giá trị hiện tại của tín hiệu đầu vào tương tự.
Examples// Get the current value of the Analog Input
int32_t value = AnalogInA.value();
changed#
Đăng ký một hàm gọi lại để được gọi khi giá trị của đầu vào tương tự thay đổi.
Available Functionsvoid changed( void (* callback)(void) );
Tham số |
Kiểu |
Sự miêu tả |
|---|---|---|
|
|
Một hàm sẽ được gọi khi giá trị của tín hiệu đầu vào tương tự thay đổi. |
Hàm này không trả về giá trị nào.
ExamplesXác định hàm gọi lại (bên ngoài
int main())// Display a message when the input changes void AnalogInputChanged() { Brain.Screen.print("analog input changed"); }Đăng ký hàm gọi lại bên trong
int main()int main() { /* vexcodeInit() is only required when using VEXcode. Remove vexcodeInit() if compiling in VS Code. */ vexcodeInit(); // Run AnalogInputChanged when the value of the // Analog Input changes AnalogInA.changed(AnalogInputChanged); }