Hallo! Ich hätt mal eine Frage zur ADC beim PIC16F88: Wie kann ich in Assembler die Werte von ADRESH und ADRESL zusammenführen (zB. bei left justified)? Steh grerade auf der Leitung! MfG Mario
Bin zwar aus dem AVR Lager, aber ich bezweifel, dass ein PIC den Inhalt von zwei 8Bit registern in eines zusammenpacken kann. Du muss Dir eine 16Bit Arithmetik besorgen oder ausdenken. Dann kannst Du mit dem ganzen Messwert rechnen.
Hallo, der C18 Compiler von Microchip kann das in einem Befehl machen. ReadADC(); Beispiele: Wert_Anzeigen(ReadADC()); Balkenanzeige(ReadADC()); Wenn Du noch ein Bespiel benötigst kannst du Dich gerne per Mail an info@schwabenplan.com melden. VG Ingo
Der C18 bringt ihm doch garnichts Vor dem Problem stand ich auch schon. Hab dann aber letztendlich nur 8 bit verwendet..
Mario schrieb: > Wie kann ich in Assembler die Werte von ADRESH und ADRESL zusammenführen Was verstehst du eigentlich unter "zusammenführen"? Ich nehme mal an, daß du alle 10 Bit verwenden willst und daß du sie also in einer 16 Bit-Variablen speichern willst, die logischerweise 2 Bytes Speicherplatz belegt. Also speicherst du ADRESH im höherwertigen Byte und ADRESL im niederwertigen Byte. Ist doch absolut easy. Wie du mit 16 Bit Integer in Assembler rechnest, ist eine andere Angelegenheit. Da mußt du dir erstmal überlegen, was du mit dem ADC-Ergebnis überhaupt anfangen willst. Aber das mußt du mit jedem uC und in jeder Programmiersprache tun. W.S.
Ich habe daze auch eine Frage. Wie rechnet man denn 16 Bit in Assembler.Der hat nur 8 bit register, also muss man zwei register verwenden.Und was dann? Wenn ich zum Beispiel ADRESH in eine variable speichere und ADRESL in andere. Wie kann ich das Ergebnis dann als eine Balke auf dem LCD anzeigen? Ich habe schon eine Lib, die eine Balke anzeigen kann, aber die kann nur einen 8 bit Wert anzeigen.Wie kann man also einen 16 bit Wert damit anzeigen?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.