Forum: Mikrocontroller und Digitale Elektronik pwm-werte mit exel berechnen?


von DennisK (Gast)


Lesenswert?

...oder wie macht ihr das?
ich möchte eine Reihe zb 1...50(dez) in hex umwandeln und gleich im
"0xAA, " format anzeigen lassen. Bei einer Dezimalzahl geht das
formatiern - nur bei der Hexadezimal nicht :-\
denn so könnte ich die werte gleich "fertig" in ein programm
kopieren.

aus 1 2 3
soll 0x01, 0x02, 0x03... werden

von D. W. (dave) Benutzerseite


Lesenswert?

Was haste gegen Dez?

von DennisK (Gast)


Angehängte Dateien:

Lesenswert?

mein programm will hex
...bin schon dabei zu suchen wie das mit dez geht...

von Bernhard (Gast)


Lesenswert?

= "0X" &DEZINHEX(A1)
A1 steht für die Zelle in der die umzuwandelnde Zahl ist.Das kann aber
auch je nach version z.B. auch DEC2HEX heisen einfach mal in ? nach hex
suchen.
@Dave wir haben nix gegen Dez aber unser Compiler.
Gruß BernhardT

von DennisK (Gast)


Lesenswert?

="0x" & DEZINHEX(A1) & ","
super sache ;)
danke

von Peter D. (peda)


Lesenswert?

Was ist das denn für ein komischer Compiler ?

Jeder C-Compiler kann oktal, dezimal und hexadezimal, manche können
auch dual.


Peter

von DennisK (Gast)


Angehängte Dateien:

Lesenswert?

mein programm ist in assembler geschrieben.
um die pwm einzustellen brauche ich jeweils den hi und low wert im
"0xFF, " format. ist es möglich das programm so zu schreiben, dass
ich die werte dez abspeichere und den compare registern übergebe?

von Hartmut Gröger (Gast)


Lesenswert?

Hi

In Exel gibt es eine Funftion mit der Du Ergebnisse in Hex ausgeben
kennst.


Mfg HG

von Peter D. (peda)


Lesenswert?

@DennisK

Der AVR Assembler kann binär, oktal, dezimal und hexadezimal.

In Tabellen kannst Du auch gleich 16Bit ablegen (.dw).
Der Assembler rechnet Ausdrücke bis 32 Bit, die einzelnen Bytes sind
dann mit byte1 .. byte4 aufteilbar.

Lies Dir ruhig mal die Assemblerbeschreibung durch.

Hier ein Beispiel (List-File):

          .list

                .dw     12345           ;dezimal
000000 3039
                .dw     0x3039
000001 3039
                .dw     030071          ;oktal
000002 3039
                .db     0x39, 0x30      ;low byte first
000003 3039

                .equ    test1 = 0x12345678
                .equ    test2 = 0b00010010001101000101011001111000
                .equ    test3 = 305419896

000004 e708             ldi     r16, byte1( test1 )
000005 e708             ldi     r16, byte1( test2 )
000006 e708             ldi     r16, byte1( test3 )
000007 e708             ldi     r16, 0x78
000008 e516             ldi     r17, byte2( test1 )
000009 e516             ldi     r17, byte2( test2 )
00000a e516             ldi     r17, byte2( test3 )
00000b e516             ldi     r17, 0x56
00000c e324             ldi     r18, byte3( test1 )
00000d e324             ldi     r18, byte3( test2 )
00000e e324             ldi     r18, byte3( test3 )
00000f e324             ldi     r18, 0x34
000010 e132             ldi     r19, byte4( test1 )
000011 e132             ldi     r19, byte4( test2 )
000012 e132             ldi     r19, byte4( test3 )
000013 e132             ldi     r19, 0x12


Peter

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
Noch kein Account? Hier anmelden.