-
Thread
Denon X2000 Avr
Hallo liebe Communitiy, ich möchte mein Handy (Samsung Galaxy S2) und meinen Laptop von Asus an meinen Avr anschließen, um so Musik abzuspielen. Jedoch habe ich keine Ahnung mit welchen Kabeln ich diese Geräte anschließen kann.Und an welche Anschlüsse des Avrs ich diese dann anschließen müsste. Die Airplay Funktion geht leider nicht da ich kein Internetanschluss in diesem Raum habe. Hoffe auf einige Antworten Schonmal vielen Dank im vorraus :D
-
Thread
SRAM auslesen der von einer anderen CPU genutzt wird
Jens schrieb im Beitrag #7324572: > 0x2000 bis 0x7FFF = 0x2000 bis 0x7FFF EPROM ja ab EPROM:0x2000 stehen entsprechende Interrupt Handler das sieht richtig aus. > 0xA000 bis 0xFFFF = 0x0000 bis 0x7FFF EPROM das dürfte dann irgend was gespiegeltes
Die Konsequenz ist das 0x000..0x1FFF des Eproms erst mal nicht für die > CPU sichtbar ist. Ab 0x2000 wird das externe Eprom dann "sichtbar". > 0x2000..0x7FFF des Eproms liegen für die CPU auch bei 0x2000..0x7FFF. > > Bei der CPU Adresse 0x8000 gibts einen Überlauf da das Eprom kein A15 > hat
-
Thread
Mehrdimensionale char-arrays
grad die Krise: Er soll sich ja das Programm Hex File vom PC reinziehen und das wird dann auf 0x2000 lokiert sein, da das RAM da anfängt. Nach dem Reinladen soll er dann auf 0x2000 springen und das RAM ausführen. Hoffe mal da gibt es keine Probleme bei mit den ganzen Segmenten, Inits usw. >>
Nun alles Linken echo "Linking....." sdcc -mz80 --no-std-crt0 --vc --code-loc 0x0100 --data-loc 0x2000 crt0.rel main.rel
-
Thread
Z80/UA880D mit 28C64 startet nicht
a,0xA5 0002 32 00 00 LD (0x0000),a 0005 32 00 20 LD (0x2000),a 0008 3E 5A LD a,0x5A 000A 32 00 00 LD (0x0000),a 000D 32 00 20 LD (0x2000),a 0010 ; a bit of delay
a,0xA5 > 0002 32 00 00 LD (0x0000),a > 0005 32 00 20 LD (0x2000),a > 0008 3E 5A LD a,0x5A > 000A 32 00 00 LD (0x0000),a > 000D 32 00 20 LD (0x2000),a > 0010 ; a bit of delay
-
Thread
2xAA + Elektronik -> Batterielebensdauer
Rick schrieb im Beitrag #7930095: > Die Kapazität beträgt ca. 2x 2000 mAh, damit kommt man theoretisch auf > 13 Jahre Nutzungsdauer. Nein, die Kapazität beträgt 1x 2000mA. Verdoppeln kannst du nur eine Größe, entweder die Spannung (bei Serienschaltung) ODER die
Rainer W. schrieb im Beitrag #7930114: > Rick schrieb: >> Die Kapazität beträgt ca. 2x 2000 mAh, damit kommt man theoretisch auf >> 13 Jahre Nutzungsdauer. > > Nein, die Kapazität beträgt 1x 2000mA. Steht bereits im Kommentar über deinem. > Die Selbstentladung hängt zu allem Ärger
-
Thread
GCC Compiler + ATXMEGA E = Schrott?
from I/O location 00000070 IN R29,0x3E In from I/O location if (a) 00000071 LDS R24,0x2000 Load direct from data space 00000073 TST R24 Test for Zero or Minus 00000074 BREQ PC+0x08 Branch if equal a=0; 00000075 STS 0x2000,R1 Store direct to data space
de b7 in r29, 0x3e ; 62 while (1) { if (a) e2: 80 91 00 20 lds r24, 0x2000 e6: 88 23 and r24, r24 e8: 39 f0 breq .+14 ; 0xf8 <main+0x1e> { a=0; ea: 10 92 00 20 sts 0x2000, r1 PORTA.OUTTGL=0b00000001; // LED blinken
-
Thread
Wo bekommt man so einen Entstörfilter?
liegen und die 2x2000 pF parallel geschaltet sind?
-------+-----------o grün 0,06 µF PE o---------------------------o gelb/grün 2x2000 pF [/pre] Sehe ich das richtig, daß da intern jeweils 2000 pF von Netz (grün und schwarz) gegen PE verschaltet sind, die 0,02 µF rot/grün gegen schwarz und die 0,06 µF grün auch gegen schwarz?
-
Thread
dpi angabe bei bildern
> > a) Das Bild hat 3000x2000 Pixel > > Bei der Angabe hab ich aber keine Möglichkeit wieder auf die 15x10xm zu > kommen ohne die DPI Anzahl zu kennen... Aber ja doch. Die dpi-Zahl berechnet sich als Quotient aus Größe und
und > Pixelzahl. Wie groß ist denn eines der 3000x2000 Pixel des Bildes auf dem Drucker?
-
Thread
[V] KOSMOS Experimentierkästen
Auf dem X2000 is immerhin Daniel Duesentrieb bei. Da entwickeln und bauen wir in 5 Stunden eine Weltraumrakete zum Nulltarif :D Nur der Treibstoff is nich dabei aus Platzgruenden hehe ;)
auch vor etlichen Jahren gehabt. Was haben solche Kästen eigendlich damals neu gekostet? Z.B. der X2000 ?
-
Thread
STM32F0x2 ADC ohne HAL Funktionen
0x2000'0160 0xe0 I32DivModFast.o [3] .text ro code 0x2000'0240 0x2 IntDivZer.o [3] .text ro code 0x2000'0242 0x2 vector_table_M.o [3] .text ro code 0x2000'0244 0x1e
.text ro code 0x2000'0290 0xc cstartup_M.o [3] .text ro code 0x2000'029c 0x4 SYSTICK.o [1] - 0x2000'02a0 0x260 [/code]
-
Thread
High-accuracy time auf DCF39, DCF49 und HGA22
. 0x2000 : 47 BB B8 FA 74 EF 31 52 21 4F 53 1D 0F F7 06 E3 28-01-2022 10:10:14: Addr. 0x2000 : A2 E8 B6 67 39 22 D4 40 37 D9 8F 17 E7 52 B9 81 28-01-2022 10:12:14: Addr. 0x2000 : 10 AD 78 34 C2 40 9E E5 7F CE A6 5B 90 46 6D D9 28-01-2022 10:14:14: Addr. 0x2000 : 41 48 2F 78 D3 03 D8 0B B9 E2 DC D8 BB 59 38 42 28-01-2022 10:16:14: Addr. 0x2000 : 08 10 49 75 D9 0B 8E 03 A8 86 79 12 FF 27 E9 67 [/code] Der Inhalt der Telegramme ist 16 Byte lang und sehr
-
Thread
Retro Fieber: Z80 oder 68000 ?
fürs RAM an 0x2040 genauso. Du kannst den RAM Code exakt so bauen wie den ROM Code. Nur eben ab 0x2000 statt 0x0000. Einzig NMIs und die RST-Befehle fallen flach.
Konkret: [pre] sdcc -mz80 --verbose --no-std-crt0 -Wl-u --code-loc 0x0100 --data-loc 0x2000 crt0.rel main.rel [/pre] Und dann schau dir die *.rst-Dateien an.
-
Thread
DDR Schach-Computer Chess Master Diamond reparieren (Dauerton)
ab 8000H. Ist der 16k gespiegelt? Wäre real ja nur 0x0000 - 0x3FFF, ROM1 bis 0x1FFF und ROM2 ab 0x2000. Gruß aus Berlin Michael
als 27256 aus und schau ob es Daten gibt. Müßten beim ersten auf 0x0000 - 0x1FFF und beim 2. von 0x2000 - 0x3FFF auftauchen. Dein Hinweis mit den Spannungswerten war gut, hatte ich schon fast vergessen, alles unter 3V als H-Pegel kommt mir da sehr komisch vor. Gruß aus Berlin Michael
-
Thread
ARM-GCC: stderr
,s); 8001538: f240 4348 movw r3, #1096 ; 0x448 800153c: f2c2 0300 movt r3, #8192 ; 0x2000 8001540: 681b ldr r3, [r3, #0] 8001542: 689a ldr r2, [r3, #8] 8001544: 89fb ldrh r3, [r7, #14] 8001546: 4610 mov r0, r2 8001548: f245 618c movw r1,
,4); 8001582: f240 4348 movw r3, #1096 ; 0x448 8001586: f2c2 0300 movt r3, #8192 ; 0x2000 800158a: 681b ldr r3, [r3, #0] 800158c: 689b ldr r3, [r3, #8] 800158e: 4618 mov r0, r3 8001590: f245 61b4 movw r1, #22196 ; 0x56b4 8001594: f6c0 0100 movt
-
Thread
Externes flashen mit OpenOCD+wiggler+arm7
) erase state unknown, protected #4: 0x00008000 (0x2000kB) erase state unknown, protected #5: 0x0000a000 (0x2000kB) erase state unknown, protected #6: 0x0000c000 (0x2000kB) erase state unknown, protected #7: 0x0000e000 (0x2000kB
) erase state unknown, protected #14: 0x00038000 (0x2000kB) erase state unknown, protected #15: 0x0003a000 (0x2000kB) erase state unknown, protected #16: 0x0003c000 (0x2000kB) erase state unknown, protected #17: 0x0003e000 (0x2000kB
-
Thread
Holzregal für Keller gesucht
billiger. Für eine Einheit braucht man 5 von diesen Latten: http://www.hornbach.de/shop/Latte-24x48x2000-mm-Fichte-Tanne/1000664/artikel.html Das wären 3,20€. Bei Ikea wären es 2 von diesen: http://www.ikea.com/de/de/catalog/products/00286677/ Das sind schon mal 6€. Und das Selbstbauregal
eine OSB-Platte ...der gelbe Vielzweckplatte? http://www.hornbach.de/shop/Vielzweckplatte-20x500x2000-mm-Fichte-mit-Kantenschutz/1006720/artikel.html Je nach Lagergut kann auch aufgelegter PVC-Fußbodenbelag ein glatte, gut abwischbare Oberfläche bieten, falls Schalbretter benutzt wurden.
-
Thread
Sonoff flashen funktioniert nicht
\" durch "-p /dev/cu.usbserial-A50285BI \" ersetzt (hier natürlich deinen eigenen einsetzen c) "0x2000 ./firmware/Sonoff_$POWERON_STATE.bin" durch "0x2000 desktop/sonoff/firmware/Sonoff_ON.bin" ersetzt (oder durch die Off-Datei, je nachdem was du oben gewählt hast). 5. den Text ab esptool.py kopieren
firmware/rboot.bin \ 0x1000 desktop/sonoff/firmware/blank_config.bin \ 0x2000 desktop/sonoff/firmware/Sonoff_$POWERON_STATE.bin Walta
-
Thread
ARM image in QEMU starten
Sprünge). Ah, ok, klar. Ja das System hat RAM und zwar einmal 64 Kbyte internes SRAM ab Adresse 0x2000 0000 - 0x2000 FFFF und einmal 128 MByte externes SD-RAM ab Adresse 0x8000 0000. > Wenn am Anfang des Images noch eine Exception-Tabelle oder so steht Ja, da ist der ARM Typische Block mit 0x20
bislang ermittelt habe müsste so aussehen: [code] 0x0000 0000 - 0x01FF FFFF = 32 MB External Flash 0x2000 0000 - 0x2000 FFFF = internal SRAM of OMAP 0x8000 0000 - 0xEFFF FFFF = external SDRAM 0xFFFE 0000 - 0xFFFF FFFF = Memory mapped registers [/code]
-
Thread
Signed korrektes Rechtsschieben
Wert -32768. Nach der Division ist er -8192, was dann 0xE000 entspricht. Eigentlich sollte aber 0x2000 rauskommen.
Division ein schnelles Shift macht, dann halt so. [c] int x = ADC_Wert; x >>= 2; if (x & 0x2000) x |= 0xC000; [/c]
-
Thread
openocd LPC2148 flash mit 13 KB Firmware schlägt fehl
) erase state unknown, protected #4: 0x00008000 (0x2000kB) erase state unknown, protected #5: 0x0000a000 (0x2000kB) erase state unknown, protected #6: 0x0000c000 (0x2000kB) erase state unknown, protected #7: 0x0000e000 (0x2000kB
) erase state unknown, protected #14: 0x00038000 (0x2000kB) erase state unknown, protected #15: 0x0003a000 (0x2000kB) erase state unknown, protected #16: 0x0003c000 (0x2000kB) erase state unknown, protected #17: 0x0003e000 (0x2000kB
-
Thread
CAN: Timing Probleme
Hallo, ich habe ein Steuergerät für ein Rennauto, was CAN spricht. Dieses sendet Can IDs 0x2000 bis 0x2005 mit wahlweise 10, 20 oder 50Hz Diese Daten möchte ich mit einem Arduino Mega 2560 und dem Sparkfun CanShield loggen. Daten werden empfangen, aber die ids 2003 und 2004 kommen deutlich
) rxId = CAN0.getCanId(); // Get message ID if (rxId == 0x2000) { for (int i = 0; i < len; i++) { if (rxBuf[i] < 0x10) { data2000 = data2000 + "0"; } data2000 = data2000 + rxBuf[i];
-
Thread
Reverse Engineering eines LIN Bus
der Meinung der Payload wäre: [cur_lo][cur_hi][volt][chk] Strom-Berechnungsformel: I = (raw16 − 0x2000) × 0.02441 Wobei negative Werte = Entladung, positive = Ladung seien. Die Spannung meint er wäre: U = volt × 0.060
Die korrekte Stromformel wäre: [code] # Nullpunkt bei 0x2000, 10 mA/Einheit I [mA] = ((b[1]<<8 | b[0]) − 0x2000) * 10 [/code] Die korrekte Spannungsformel: [code] # Maximal 16V darstellbar, 4-Bit Nachkommastelle (ergibt ca. 0,1 V Auflösung) V = b[2] /
-
Thread
VDI nachrichten RECRUITING TAG - Ein Zerrbild der Gesellschaft
Frank Petelka schrieb im Beitrag #3888610: > Ach moment: 16 Bundesländer x 2000 Landesweite = 320.000 Stellen im > Bund. Jetzt stimmt's wieder. Äh, ich glaub eher 32000 sollten bei deiner Rechnung rauskommen.
Beitrag #3888665: > Frank Petelka schrieb im Beitrag #3888610: >> Ach moment: 16 Bundesländer x 2000 Landesweite = 320.000 Stellen im >> Bund. Jetzt stimmt's wieder. > > Äh, ich glaub eher 32000 sollten bei deiner Rechnung rauskommen. Ach du meine Güte, was Sarksmus ist, hast du noch nicht
-
Thread
EEPROM verkleinern
Danke schon mal für die schnelle Antwort. a) Im makefile ist die Range des EEPROMs mit 0x2000 - 0xF9FF angegeben. b) Wir sprechen das EEPROM auch mit einer seriellen Schnittstelle an. Nein ist ein EEPROM genaue Bezeichnung M93C86WMN6. MfG Max
Speicherbereich frei sein. Ist aber über die FW zu prüfen. >Im makefile ist die Range des EEPROMs mit 0x2000 - 0xF9FF angegeben. Huch, das solltes Du aber nochmals genauer prüfen was das sein soll. rgds
-
Thread
Firmware aus MC9S12 per BDM clonen
unteren Bereich wirklich nur mit RAM zu tun habe und habe daher die Speicherstellen 0x0400, 0x1FFF, 0x2000 mittels der Intialize-Funktion von USBDM mit Daten befüllt: (400,44),(1FFF,AA),(2000,55) Der Readout hat gezeigt das bis auf die Speicherstelle 0x2000 alle anderen mit meinen Daten gefüllt waren.
Adressbereich 0x0000-0x1FFF ("sichtbar" davon sind 0x0400-0x1FFF). Somit wäre der Adressbereich 0x2000-0x3FFF frei verfügbar. Ich habe also mittel Initialize das EEPROM auf 0x2000 (INITEE = 0x21) gelegt: (12,21) Das EEPROM ist ja nur 2KB groß, müsste sich also von 0x2000-0x27FF erstrecken. Aber der
-
Thread
China 18V 18650 Akku: Mehr vorsätzlicher Betrug geht nicht
geht China Betrug: 4 x Fake beim 18V Akku 1. Auf dem Aussengehäuse steht 5500mAh, drin sind (1x) 2000mAh 2. Normal wären es 2 x 5 Akkus parallel und in Reihe geschaltet. Angeschlossen sind nur 1 x 5 Akkus (?) 3. Die anderen 1x5 Zellen sind alle ohne Herstelleraufdruck und sind tote Dummy-Zellen
China Betrug: 4 x Fake beim 18V Akku > > 1. Auf dem Aussengehäuse steht 5500mAh, drin sind (1x) 2000mAh Hui, jetzt bin ich aber von den Socken. Falsche Angaben bei der Kapazität..nein sowas🤔 Sachen gibt’s.
-
Thread
EmBitz: Ignorierte Includes und Probleme beim NVIC/GPIO
Probleme mit Includes und Defines gehabt habe (man sieht es im Code, wo plötzlich z.B ((uint16_t)0x2000)) anstatt GPIO_Bit_13 steht - da musste ich dem Präprozessor seine Arbeit abnehmen und direkt das eintippen, was in den entsprechenden, eigentlich eingebundenen Dateien stand. In einem anderen Projekt
char led = 0; void TIM7_IRQHandler(){ if(led){ GPIO_WriteBit(GPIOC, ((uint16_t)0x2000), Bit_SET); //PIN13 led = 0; }else{ GPIO_WriteBit(GPIOC, ((uint16_t)0x2000), Bit_RESET); led = 1; } TIM_ClearITPendingBit(TIM7, TIM_IT_Update)
-
Thread
Tipps zur Speicheranalyse gesucht
estack_core0 = ORIGIN(RAM) + LENGTH(RAM); /* 0x20080000 */ _estack_core1 = _estack_core0 - 0x2000; /* 8 KB darunter = 0x2007E000 */ _stack_low_core0 = _estack_core0 - 0x2000; /* untere Grenze */ _stack_low_core1 = _estack_core1 - 0x2000; [/pre] und per so etwa in die CMakeLists.txt
Habe mal im MAP-File ein wenig geschaut und ein paar RAM-Adressen notiert. [pre] bis: 0x2000de5c - vorhandener, lauffähiger Code. Nutzt keine dynamische Alloc. bis: 0x2001169c - 14400kB, mehrere neu hinzugefügte Buffer 0x2001169c - .bss.heap_end.0 bis: 0x2001EBF8 - 9608kB me->window
-
Thread
P80C51 gibt weder /WR noch /RD aus ?
Peter D. schrieb im Beitrag #5904762: > Schreib das Programm einfach an 0x2000. Dann wird der leere Flash (0xFF) > durchlaufen und dann das externe Programm ausgeführt. Opcode 0xFF wäre zwar MOV R7, A aber der bräuchte wie ein NOP auch nur einen Maschinenzyklus, und wenn man seine Register zu Programmbeginn passend initialisiert, macht's auch nix, wenn der vorher 0x2000 Mal den gleichen Wert ins gleiche Register kopiert hat. Es sei denn, man hat eines der Exemplare, bei denen die Register bei Schreibzugriffen einem gewissen Verschleiß unterliegen. ;-)
-
Thread
.elf explorer
möchte ich aus der generierten .elf Datei folgenden Output extrahieren können: c1.value1.real;int;0x2000.. c1.value1.imag;int;0x2000.. c1.value2.real;int;0x2000.. c1.value2.imag;int;0x2000.. c1.phi;float;0x2000.. omega;float;0x2000.. Diese Information ist in der .elf Datei (im Dwarf Teil) auf
-
Thread
Struktur kopieren
0x10 Bytes groß. channel_t *newp; Dieser Pointer zeige nun auf eine Struktur an der Adresse 0x2000. Wohin zeigt dann (newp + 1)? NEIN, es zeigt NICHT auf die Adresse 0x2001, sondern auf die Adresse 0x2010.
wieso nicht? *(newp + 1) --> *(0x2000 + 1) -->*(0x2001) !!! Was ergibt dann deiner Meinung nach 0x2000 + 1 ?? 0x2010??
-
Thread
16 Bit CTC: OCR3AH wird nicht beschrieben, OCR3AL schon
weil der compiler folgendes daraus macht: [code] OCR3AH=0x20; //Zählgrenze=8192 --> 0d8192=0x2000 112: 80 e2 ldi r24, 0x20 ; 32 114: 80 93 99 00 sts 0x0099, r24 OCR3AL=0xFF; //16Bit-Zähler --> 2*8Bit-Register nutzen (L,H) 118: 8f ef ldi r24, 0xFF ; 255 11a:
Quatsch, das macht doch schon der CTC-Modus. > [c] > OCR3AH=0x20; //Zählgrenze=8192 --> 0d8192=0x2000 > OCR3AL=0xFF; //16Bit-Zähler --> 2*8Bit-Register nutzen (L,H) > [/c] Warum schreibst Du es so umständlich, rechnest Du so gerne in Hex um? Außerdem ist es falsch: 0x2000 - 1 = 0x1FFF und
-
Thread
ESP32-S3-ZERO debugging
esp_usb_jtag: VID set to 0x303a and PID to 0x1001 Info : esp_usb_jtag: capabilities descriptor set to 0x2000 adapter speed: 40000 kHz Info : Listening on port 6666 for tcl connections Info : Listening on port 4444 for telnet connections Error: libusb_open() failed with LIBUSB_ERROR_ACCESS Error: esp_usb_jtag
esp_usb_jtag: VID set to 0x303a and PID to 0x1001 Info : esp_usb_jtag: capabilities descriptor set to 0x2000 Info : Listening on port 6666 for tcl connections Info : Listening on port 4444 for telnet connections Error: esp_usb_jtag: could not find or open device! C:/platformio/packages/openocd-esp32/bin
-
Thread
Hile beim Verständnis von ARM Befehlen.
:000016B0 1B E0 B loc_16EA .... [/code] Am Anfang wird der SP auf 0x2000 0030 gesetzt, was eine Adresse im SRAM des betreffenden MPU ist (SRAM geht da von 0x2000 0000 aufwärts). Aber dann gehts los... [code] ROM:00001680 1D 48 LDR R0, =0x400
addiert dessen Grösse, da der SP ja am oberen Ende anfängt. Ah, ok, das heißt das der Stack von 0x2000 0030 bis 0x2000 0430 reicht und der SP auf 0x2000 0430 gesetzt wird? Ich grüble nur über das "ADD SP, R0", was es ja so eigentlich nicht geben dürfte. Kann das ein Assembler-Shortcut für "ADD SP
-
Thread
Bootloader beim SAME54 überschreiben
durch manipulation der Register hinbekommen könnte. Als Änderung des Program Counter auf Adresse 0x2000. Das werde ich mir morgen noch Mal genauer anschauen.
werde ich die Tests heute nicht mehr schaffen. Aber wenn ich ein Programm schreibe das an Adresse 0x2000 anfängt und diesen Inhalt hat Rudolph R. schrieb im Beitrag #7426388: > SPDIS ist ein Kommando für NVMCTRL->CTRLB.reg - NVMCTRL_CTRLB_CMD_SBPDIS > Wenn das klappt dann noch ein Erase Block auf
-
Thread
STM42F429 - XOR
funktioniert das Ganze? Pin 13 ist wie folgt definiert: #define GPIO_Pin_13 ((u16)0x2000) /* Pin 13 selected */ 0x2000 ist, wenn ich das richtig verstehe, das Register. Der Wert ist bei auisgeschalteter LED "0" Mit einer XOR Operation wird dann Ein/Ausgeschaltet. Aber welchen Wert hat
> #define GPIO_Pin_13 ((u16)0x2000) /* Pin 13 selected */ > 0x2000 ist, wenn ich das richtig verstehe, das Register. Der Wert ist > bei auisgeschalteter LED "0" Nein, wohl eher falsch verstanden. Das Register heißt ODR und enthält
-
Thread
Probleme mit stm32f4 Discovery
); init_app(); while(1) { if (GPIOA->IDR & 0x0001) { GPIOD -> BSRRH = 0x1000 | 0x2000 | 0x4000 | 0x8000; } else { GPIOD -> BSRRL = 0x1000 | 0x2000 | 0x4000 | 0x8000; } } return 0; }[/c] Und hier der nicht funktionierende Code: [c]#include "stm32f4xx.h"
Der funktionierende Code if (GPIOA->IDR & 0x0001) { GPIOD -> BSRRH = 0x1000 | 0x2000 | 0x4000 | 0x8000; Der nicht funktionierende Code if(GPIOA -> IDR & 0x0001){ GPIOC -> BSRRL = GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3; Oben BSRRH, unten BSRRL. Könnte es daran liegen
-
Thread
Register direkt auslesen
leider nicht fündig geworden. Ich möchte eine variierende anzahl von Registern auslesen. (z.B von 0x2000 - 0x4000) gibt es eine Möglichkeit die Register direkt anzusprechen ohne vorher Variablen zu deklarieren die auf die Register zeigen ?
Einfach direkt drauf zugreifen: [c]char byte = *((char*) (0x2000));[/c] Ach, C ist ja sooo schrecklich, weil es so böse Pointer gibt :O
-
Thread
Keil ; ARM; LPC; PC Program Counter setzen
Funtionsteile voneinander gekapselt (der spätere Bootloader liegt in den ersten beiden Sektoren 0x0000 - 0x2000 und die Applikationssoftware liegt ab Adresse 0x2000). Ich will die Programme erst später auftrennen, aber auch dann muss ich vom Flashbooter auf eine definierte Adresse (in meinem Fall 0x2000) springen
Naheliegend: typedef void (*fcn_ptr)(void); fcn_ptr application = (fcn_ptr)0x2000; application();
-
Thread
Wie dimensioniere ich die Schrittmotoren einer Portalfräse?
stark ein Schrittmotor für eine Eigenbau-Käsefräse sein muß? Geplant: X Kugelumlaufspindel 25x2000mm (evtl. 2x fur diese Achse) Y Kugelumlaufspindel 25x1400mm Z Trapezspindel 16x300mm (wegen Selbsthemmung) Führung: unterstützte Präzisionswellen, Stahl, 25mm Durchmesser. Aufbau aus Bosch-Profilen
Crazy H. schrieb im Beitrag #5081636: > Geplant: > X Kugelumlaufspindel 25x2000mm (evtl. 2x fur diese Achse) > Y Kugelumlaufspindel 25x1400mm > Z Trapezspindel 16x300mm (wegen Selbsthemmung) Das sollten Nema34 mit zb. 4A, 5Nm locker schaffen.
-
Thread
Atmega2560 SPI-Verbindung zu ext. AD-Wandler
LOW PORTB |= (1 << PB1); //SCK=High #2 PORTB &=~(1 << PB1); //SCK=LOW data=0;mask=0x2000;do{ //14 mal (1 << 13 = 0x2000) #3..16 PORTB |= (1 << PB1); //SCK=High PORTB &=~(1 << PB1); //SCK=LOW if(PINB & PBx){data |= mask;} //PBx: MISO-Portbit angeben!! }while((
= (1 << PB1); //SCK=High #2 PORTB &=~(1 << PB1); //SCK=LOW data=0;mask=0x2000; do{ //14 mal (1 << 13 = 0x2000) #3..16 PORTB |= (1 << PB1); //SCK=High PORTB &=~(1 << PB1); //SCK=LOW if(PINB & (1<<PB3)){data |= mask
-
Thread
Messingmutter als Zugkraft-Indikator?
ist ein Quelldruck ( das Teil kommt ins Wasser ), von bis zu 6N/qmm. Das entspricht bei 35 x 2000 mm x 6 N/qmm = 420 000 N ! Kleine Gegenrechnung: Ein Weinfass (Barrique) hat eine Fläche zwischen den Dauben von ca. 1000 x 25 mm = 25 000 qmm. Die 8 Faßringe ( Querschnitt 30 x 2 mm ) bringen
bei den 6N/qmm > berücksichtigt? > > Liegen die Muttern und Schraubenköpfe nur lokal auf dem 35x2000 > Holzstreifen auf? Dann werden diese wohl eher ins Holz gezogen und es > wirken gar keine 420kN auf die Zugstäbe. > > Das ganze scheint mir eher ein statisch unbestimmtes System zu sein und
-
Thread
Serienschaltung von Batterien zur Spannungsversorgung
Kapazität). Orientier dich lieber an der verfügbaren/entnehmbaren Energie. Eine Zelle: 1,5V x 2000mAh = 3000mWh Sechs Zellen in Serie: 6 x 1,5V x 2000mAh = 18000mWh Sechs Zellen parallel: 1,5V x 6 x 2000mAh = 18000mWh Es ist egal ob du die Zellen parallel oder seriell schaltest, die verfügbare
-
Thread
Probleme mit If-Schleife bei XC2287M
************************** void U0C0_SSC_vSendData(uword uwData) { while(!(U0C0_PSR & 0x2000)); // wait until tx buffer indication flag is set U0C0_PSCR |= 0x2000; // clear transmit buffer indication flag U0C0_TBUF00 = uwData; // load transmit buffer register }
Dann wird er wohl dort hängen: [c] while(!(U0C0_PSR & 0x2000)); // wait until tx buffer indication flag is set [/c] Hast du den UART komplett initialisiert und den Sender eingeschaltet? Bekommst du ein Zeichen über die serielle Schnittstelle ausgegeben
-
Thread
Frage zu CANopen (PDO-Mapping)
Default-TPDO1 von Node 1 gelinkt (0x181) Auf beiden Nodes sind jeweils TPDO1 und RPDO1 auf das Objekt 0x2000 gemapped - hier steht in dem Beispiel die Solltemperatur; wenn nun gleichzeitig auf Bedienteil 1 die Temperatur gesenkt und auf Bedienteil 2 die Temperatur erhöht wird (beide schicken unmittelbar
- geht das?) das Mapping von RPDO2 wäre komplett identisch mit dem von RPDO1 (also auf Object 0x2000); für Node 1 wäre entsprechend die selbe Erweiterung notwendig; Sind meine Bedenken begründet oder bin ich vielleicht komplett auf dem Holzweg? mfG, Andreas
-
Thread
avr-gcc: Array an 256 Byte ausrichten?
Linker-Script wuerde ich mir gerne ersparen): [pre]LDFLAGS += [...] -Wl,--section-start=.bigalign=0x2000[/pre] Im Map File steht nun das am Ende: [pre].bigalign 0x00002000 0x800 .bigalign 0x00002000 0x800 font.o 0x00002000 font[/pre] Ich
Compiler zur Compilezeit. Die Lösung mit der Kommandozeile -Wl,--section-start=.bigalign=0x2000 ist hölzern (weil an bestimmten AVR gebunden) aber übersichtlich. Die Angabe 0x2000 ist dabei gcc-typisch eine Byteadresse. Es geht auch eleganter über ein _zusätzliches_ Linkerskript:
-
Thread
STM32 ASM Interrupt
Register einlesen? z.B. LDR r5, = GPIOC_ODR ;Das liest aber nur die Adresse ein CMP r5, #0x2000 ;hier möchte ich dann rausfinden ob das Bit gesetzt ;ist Lg Motze
Pop usw: LDR r5, =GPIOC_BSRR ;1 im Register schreiben setzt den Pin LDR r6, =0x2000 STR r6, [r5] forever: b forever Wenn die LED nicht angeht, dann wird dein Interrupt noch nicht ausgelöst. Wenn das schonmal klappt, dann funktioniert dein NVIC
-
Thread
xmega128a1 EBI SDRAM
Ich hab es: Im Datenblatt auf Seite 22 steht, das das interne SRAM auf Adresse 0x2000 los geht. Enn man mehr als 64kByte haben will, muss man die Adressierung selber machen und einen 32bit Pointer anlegen. In den Tutorials von Atmel ist da was drin. Aber wie gut das geht weiss ich
0x80ffff [/code] Bei dieser Einstellung habe ich ja 49kB zuverfügung. der interne geht bei 0x2000 los, der externe bei 0x4000 0xFFFF - 0x2000 = 57kB. Da fehlen doch aber noch 8kB lg, markus