Technische Informatik; Hardwarenahe Programmierung

Analog IO Grundlegend

Table of Contents

  1. AnalogIn
  2. AnalogOut

Inhalt

PWM Beschreibung

AnalogIn

Auf dem Mbed LPC 1768 stehen insgesamt 12-Bit-6-Analogeingänge von p15 bis p20 zur Verfügung, und 1 Analogausgangspin ist auf p18 verfügbar (NUCLEO-L432KC). Vergleiche mit dem folgenden Programm die AnalogIn class reference. Kopiere das folgende Programm in den Simulator und füge mit Add component einen Analog termistor auf p20 hinzu.

AnalogInVonTermistor.cpp

/* 	Im Mbed simulator: + Add component 
	Analog termistor p20
*/
#include "mbed.h"

AnalogIn Ain(p20);	// Erstellt ein AnalogIn-Objekt für den Pin, der als Analogeingang verwendet wird.
float ADCdata;
uint16_t dig;

int main()
{
    while (1) {
        ADCdata=Ain.read();	// Auslesen der analogen Eingangsspannung im Bereich von 0,0 bis 1,0 Volt.
        ADCdata=Ain;		// Float Operator als Abkürzung für die read() Funktion
        printf("%f \n\r",ADCdata);
        dig=Ain.read_u16();	// Auslesen der analoge Eingangsspannung im Bereich von 0x0 bis 0xFFFF gelesen.
        printf("%d \n\r",dig);
        wait (0.5);
    }
}

NUCLEO-AnalogIn-Code Beispiel und Vergleich zum PWM Ausgabe.

Hinweis:

AnalogIn() liest die Spannung als Bruchteil der Systemspannung. Der Wert ist ein Gleitkommawert von 0,0 (VSS) bis 1,0 (VCC). Wenn Sie zum Beispiel ein 3,3-V-System haben und die angelegte Spannung 1,65 V beträgt, liest AnalogIn() 0,5 als Wert.

AnalogOut

Das folgende Programm in den Online Editor importieren und Kopfhörer einstecken. Das Programm verwendet das Poti 1 am AnalogIn Pin p19 und AnalgOut am Pin p18 (P0.26), an dem der 3,5 mm Audio Klinkenstecker angeschlossen ist.

Import programapp-AnalogOut_Umpolen

Ausgabefrequenz durch Umpolung und Lautstärke mit Poti einstellen

Die Frequenz wird durch das Umpolen am Analog-Ausgang zwischen dem Wert des Potis und "0" erzeugt.

Es gibt leider kein vergleichbares Element im Simulator für dieses Programm. Sie müssen es am mbed-Application-Board testen.

app-AnalogOut_Umpolen.cpp

include "mbed.h"

AnalogOut Aout(p18);        // Kopfhörer
AnalogIn pot1(p19);

int main() {
    while(1) {
        Aout = pot1.read(); // Lautstärke
        wait_us(1000);      // Frequenz
        Aout = 0;
        wait_us(1000);
    }
}

PWM-Grundlegend


All wikipages