Ja ist es aber selber legt man sich ja seinen Ablauf fest und wenn die Sachen schon mal funktioniert haben kann man sie auch als erstes hinschreiben bzw aktivieren...
> zu Punkt 4.1) Wie führe ich Messungen durch? Ich dachte diese geschieht indem ich ADC initialisiere?
das ist nur die Vorbereitung das der ADC eingestellt/aktiviert ist. Außer ich habe nur einen Messkanal dann kann man den Free Running Mode nutzen...
> ; ADC für eine Einzelwandlung starten
> Main:
> sbi ADCsRA, ADSC
da steht Einzelwandlung starten d.h. ADSC (StartConversion) aber nur bis die Wandlung fertig ist und wenn sie beendet ist bleib sie das auch.
Um immer wieder eine neue Messung zu starten, für nur EINEN Messkanal, wäre es Sinnvoll den FREE RUNNING MODE zu nutzen, wenn EINE Messung aber über die SingleConversion gemacht werden soll, dann muss das ADSC-Bit immer wieder neu gesetzt werden um die Wandlung anzustoßen.
Warum gibs das ?? Ganz einfach, es gibt nur ein ADC aber mehrere Messkanäle, die man nutzen möchte/könnte/will und die Umschaltung kann nur gemacht werden wenn kein Wandlung gestartet wurde/ist.
Hoffe das es soweit verständlich ist. Ab und an das Datenblatt nutzen, denn dort steht ne janze Menge drin....
> zu Punkt 4.2) Ist dies mit zahlenwerte wandeln gemeint?
mmhh überleg mal kannst du sofort auf dem LCD den Hex oder Bin oder Octawert richtig interpretieren???? Die meisten eher weniger, also nimmt man eine Zahlsystemwandlung, von xxSystem zum dezimalen System vor.
Hinweis um Quellcode zum posten, rechts unten mal auf erweitert klicken, dann kann auch Quellcode lesbarer eingestellt werden... UND GANZ WICHTIG immer den kompletten Code einstellen weil sonst keiner die Zusammenhänge erkennt, es ist ziemlich umständlich sonst zu lesen.... is ja keine Klatschpresse hier
D....
Kurze Init als Hilfe... auf das Zeichen # klicken und dann den Text einfügen
Code:
;.device ATtiny26
;.nolist <<<<kann man weg lassen
.include "tn26def.inc"
;.list <<<<<kann man weg lassen
;Deklarationen
.def mp =R16 ;allgemeine Register
.def adhigh =R17 ;Ergebnis vom ADC Achtung der ADC HAT ADCH:ADCL-Register
.def mp1 =R18
.def mp2 =R19
.def mp3 =R20
;RS auf PA4
;E auf PA5
;PB4..PB5 auf PA1..PA2
;PB6..PB7 auf PA6..PA7
.equ LCD_PORT=PORTA
.equ LCD_DDR=PORTA
.equ PIN_E=5
.equ PIN_RS=4
;Stackpointer initialisiern
ldi mp, RAMEND
out SP, mp
racll lcd_init ;init
rcall clear_lcd
rcall adc_init
Loop:
;und hier steht dein Hauptprogramm
rjmp loop
Frage: Wann hast du angefangen zu programmiern mit Assembler??
Lesezeichen