Technische Informatik; Hardwarenahe Programmierung

You are viewing an older revision! See the latest version

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 [[https://os.mbed.com/components/mbed-Application-Board|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