-
Thread
Kommunikation zwischen mController und PC
diesem Fall 14. Das MODIFY_REG Marko hat 3 Parameter: 1) Register 2) Bitmaske, legst fest welche Bits du einstellen willst 3) Der konkreten Wert für diese Bits. Wenn du mehrere Bits setzen willst, kannst du das wie oben mit der 14 machen, oder indem du mehrere Bits mit + oder | kombiniert. Angenommen
14. > > Das MODIFY_REG Marko hat 3 Parameter: > 1) Register > 2) Bitmaske, legst fest welche Bits du einstellen willst > 3) Der konkreten Wert für diese Bits. Wenn du mehrere Bits setzen > willst, kannst du das wie oben mit der 14 machen, oder indem du mehrere > Bits mit + oder | kombiniert
-
Thread
ISR Aussetzer durch Volatile-Variablen-Polling ?
einer Variable in einer interrupt routine und in main. s.o. > -Spielt es eine Rolle ob es ein 8-Bit oder >8-Bit Variable ist? Ja, der Zugriff muss atomar erfolgen. Dies ist bei AVR8 nur für 8-Bit primitiven DT gegeben. > -Müssen wir an dieser Stelle zwischen den AVR-GCC Versionen > unterscheiden
gelesen oder geschrieben werden kann (atomar gelesen/geschrieben werden kann). Beispiele: Beim AVR 8 Bit, beim ARM Cortex-M3 32 Bit, beim SPARC V8 32 Bit. Auch der Z80 mit 8 Bit :) Zweite Bedingung, die CPU/Compiler macht kein reordering an den relevanten Stellen, was ich bei diesen "einfachen" Maschinen
-
Thread
Implementierung eines Encoder Interface mit FPGA
Leitung tot geht. Ach, was schreibst du denn da zusammen?! Ja klar, ist das Prellen eines einzelnen Bits kein Fehler. Ungültig wäre hingegen ein (in Bezug zur Abtastung) gleichzeitiger Wechsel von mehr als einem Bit (Gray-Code!), also hier von 00=>11, 01=>10 usw. Das passiert im störungsfreien System nur
dfIas schrieb im Beitrag #7356208: > Ja klar, ist das Prellen eines einzelnen Bits kein Fehler. Ungültig wäre > hingegen ein (in Bezug zur Abtastung) gleichzeitiger Wechsel von mehr > als einem Bit (Gray-Code!), Das ist das Problem der Interpretation des Wortes "Fehler". Das gesamte
-
Artikel
AVR-Tutorial: LCD
wir dem LCD noch mitteilen, ob wir Daten oder Befehle senden wollen. Das machen wir, indem wir das Bit, an dem RS angeschlossen ist (PD4), auf 0 (Befehl senden) oder auf 1 (Daten senden) setzen. Um ein Bit in einem normalen Register zu setzen, gibt es den Befehl sbr (Set Bits in Register). Dieser Befehl
immer wieder 100 von der Schleife ab, bis bei der Subtraktion ein Unterlauf, angezeigt durch das Setzen des Carry-Bits bei der Subtraktion, entsteht. Die Anzahl wird im Register temp1 mitgezählt. Da dieses Register mit dem ASCII-Code von '0' initialisiert wurde, und dieser ASCII-Code bei jedem Schleifendurchlauf
-
Thread
Atmega8 vers. C - Interuptbehandlung
Eingänge an Port PD.. abfragen. Hier ist immer nur einer 'aktiv' 1 Eingang abfragen an Port PB.. 1 Bit an Port PB setzen 2 Ausgänge für die Displays im Multiplexbetrieb evtl. ein weiteres Bit aus Port B oder D um ein Disable zu setzen. Ich habe hier den Atmega 8 als Kandidat rausgesucht. Pic's mit
Eingänge an Port PD.. abfragen. Hier ist immer nur einer 'aktiv' > 1 Eingang abfragen an Port PB.. > 1 Bit an Port PB setzen > 2 Ausgänge für die Displays im Multiplexbetrieb > evtl. ein weiteres Bit aus Port B oder D um ein Disable zu setzen. Wie Falk B. schon wiederholt sagte: du hast vier Eingangssignale
-
Thread
Wie wichtig ist eine Mini-USB-Buchse zum Laden für die Kundenakzeptanz
messtechnische Störprobleme zwischen PC und Testinstrumente gab. Mit BT legte sich das aber alles (24-bit ADC)
https://de.ifixit.com/Anleitung/Google+Pixel+7+Hauptplatine+tauschen/154683 Manche Hersteller setzen den Anschluss auf eine separate Platine, die mit Folienkabel verbunden wird. Google hat ihn auf dem Mainboard, aber verschraubt. Vn N. schrieb im Beitrag #7341145: > Was natürlich nicht ausschließt
-
Thread
Frage zu UART AVR Code
R24,0x00C0 Load direct from data space +0000004E: FF85 SBRS R24,5 Skip if bit in register set +0000004F: CFFC RJMP PC-0x0003 Relative jump [/c] [c] //UCSRnA, //Configuration + Status //UDRn // read/ write 8 Bit #include <avr/io.h> #include
Falk B. schrieb im Beitrag #7337399: > Dann probier es noch mal und setz die Breakpoints auf die > Portzuweisungen. dann kommt die Fehlermeldung, dass das Setzen nicht funktioniert. Der Breakpoint wird dann einfach nicht gesetzt und auf das delay gesetzt :D Klaus
-
Thread
ATtiny1604 - Fuses unter Linux
Natürlich habe / hatte ich den Selbstbauflasher erst einmal in Verdacht, ob er Fuses richtig setzen kann, aber scheinbar kann er das, weil ein: [code] avrdude -c jtag2updi -p attiny1604 -P /dev/ttyUSB0 -U fuse1:w:0x17:m [/code] und einem anschließenden Lesen [code] avrdude -c jtag2updi
code] bringt. 0x17 wäre im Register MCLKCTRLB (was nach meiner Lesart FUSE1 ist) ein gesetztes Bit für "prescaler enable" und ein Divisor des Taktes durch 24 (ein Blinken müsste also 4 mal langsamer erfolgen, da der Auslieferungszustand den Teiler 6 eingestellt hat). Jetzt heißt es im Datenblatt
-
Thread
Bits in Register setzten (Schreibweise)
Beitrag versuchst. Jim M. schrieb im Beitrag #7338041: > Einige µC kennen nämlich Befehle zum Setzen/Löschen einzelner Bits. Das > beschreibt Dir ein Grundlagenbuch eher nicht. Der Compiler setzt diese Befehle ein! Ob mit, oder ohne Buch.
Klasse! Die Fans entlarven sich wieder selbst. Was für eine Dreckssprache, bei der das Setzen von Bits in Registern mit dem Würfelbecher funtioniert...
-
Thread
7-Segment-Ansteuerung
direkt was." An die Mimik mit "&= ~(1 << bitnummer)" und "|= (1 << bitnummer)" zum Löschen und Setzen von Bits sollte man sich gewöhnen, das ist völliger Standard in diesem Umfeld.
leuchten lassen und dann die "Zeile11" adressiert, die es nicht gab, die neuen Zeileninformationen (2x8bit) geladen und DANACH erst die anzuzeigende Zeile adressiert. Hier sind es eben die Dezimalstellen.
-
Thread
Terminal CR LF einfügen
Hallo, ich meinte auch nicht, dass man die Datenbreite des UART auf 16-Bit setzen kann, sondern dass das Terminal 2x Bytes zu 16-Bit zusammenfasst und anzeigt/speichert. Bei RealTerm kann man unter dem Tab "Display" uint16 einstellen. Damit werden die Daten in diesem Format
Daten über > die serielle Schnittstelle aufzeichen (in eine Datei) und die > Datenbreite von 16-Bit dabei einstellen kann? Nein. MCs können max 9Bit, die PC-UART max 8Bit Format. Will man mehr übertragen, braucht es ein Protokoll, mit dem der Empfänger die Daten wieder richtig zusammen setzen
-
Thread
Empfehlungen für Mixed Signal Oscilloscopes
weniger. Etwas rauschfreiere Eingangsstufe und vor allem die Existenz eines (etwas abgespeckten) 10Bit Modus sind da ein Vorteil. Die Picoskope liegen Rauschmäßig auch bei der Hälfte. Die Besseren Modelle haben aber auch mehr als 8Bit (und einen anderen Preis) Dafür haben die beiden oben genannten
und nur auf ein Bediensoftware zu setzen und sogar firmware zu vereinheitlichen. Das erzeugt nur Probleme in den Geräten und Mehraufwand. Dann hat wieder mal einer die Nase von dem ganzen Maintenance voll, das er den ganzen Tag machen muss
-
Thread
Matrix mit 5x Rotary Encoder für STM32 uC
Hast du damit so viele IOs gespart? 5 Encoder sind 15 Eingangssignale, die man problemlos mit 2x8 Bit Schieberegistern einlesen kann. Dazu braucht es gerade mal drei IOs. Deine Matrix braucht 8.
Routing von 120 Signalen eher häßlich wird, würde ich erst recht auf kaskadierte Schieberegister setzen. Im Extremfall ein einziges, 120=15×8 Bit langes. Vielleicht willst du aber Encoder lieber in Gruppen zusammenfassen. Weiß ja außer dir niemand.
-
Thread
Taschenrechner für Windows gesucht
gerade dabei bin, auch mein Planmaker gibt 55 aus. Im Regelfall verlasse ich mich nicht darauf und setze Klammern.
man Yalu recht geben. Wenn man eine negative Zahl potenzieren möchte, so muß man sie in Klammern setzen.
-
Thread
Kleiner Arduino-MC für UART zu SN74HC595
Gehäuse ist der 32U auch schön klein. https://ww1.microchip.com/downloads/en/devicedoc/atmel-7766-8-bit-avr-atmega16u4-32u4_datasheet.pdf
Arduino programmiert werden. USB CDC geht direkt, Quarz braucht es nicht, der genaue Takt kann durch Setzen eines Bits aus dem USB-Takt regeneriert werden. Packages gibt es in sehr klein.
-
Thread
Zabex Ohmmeter mit Atmega 88 Funktion ?
Du sprichst von einem ADC von 10 Bit. Welche Auswirkung hat den zusätzlicher AD Wandler von 12Bit oder 16 Bit? Wird daurch die Messung genauer oder lohnt sich der Aufwand nicht?
Vergleichswiderständen addiert) - Rauschen der Ausgänge des Mikrocontrollers - Elektromagnetische Einflüsse Bis 10 Bit ist es noch relativ einfach hin zu bekommen, dass nur das unterste Bit rauscht. Du wärst nicht der erste, der einen 16 Bit ADC einsetzt aber trotzdem nur 10 nutzbare Bits erreicht, wie die anderen nur
-
Thread
Aufgabe Ampelsteuerung Studium
den Speicher teilen. Aber nicht wie. Genaugenommen ist es Undefined Behaviour, zuerst die einzelnen Bits zu setzen und dann über den union-member ausgangsbelegung auszulesen oder andersrum. Standardkonform ist ausgangsbelegung nur dann definiert, wenn du vorher ausgangsbelegung beschrieben hast. In
> */ > #endif > uint32_t T:1; /*!< bit: 24 Thumb bit > (read 0) */ > uint32_t IT:2; /*!< bit: 25..26 saved IT > state (read 0) */ > uint32_t Q:1; /*!< bit
-
Thread
Wie setze ich ein Bit korrekt in einem "bitfield" ?
kleinen Platz für > Code aber zum anderen nette Maschinenbefehle, mit denen man ein > einzelnes Bit setzen und testen kann. Nein, die hat er auch in Asm-Code nicht wirklich, auf Portbits bezogen. Befehle wie BSF manipulieren kein einzelnes Portbit, sondern lesen den ganzen Port, ändern ein Bit,
den PIC10F202 > zu debuggen (ich bitte um Applaus :-) > > Dabei ist mir aufgefallen, dass das Setzen von einzelnen Bits in einem > bitfield nicht so funktioniert, wie ich mir das dachte. Tja, das Setzen des einzelnen Bits hat wohl funktioniert, allein es hatte nicht die erwünschte Wirkung auf
-
Thread
Binäres Rastermuster mit eindeutigen Ausschnitten
dasselbe Muster erzeugen. Durch einfache Überlegung/Skizze wird schnell klar, dass damit nur 2*k+1 Bits als Freiheit für eine konsistente Diagonalbewegung gegeben sind. Daraus ergeben sich aber noch lange nicht, wie die Bits zu setzen sind, es ist aber ein doch sehr einfaches Verfahren. Als Ansatz
gibt. Sigi schrieb im Beitrag #7331230: > Daraus ergeben sich aber noch lange nicht, > wie die Bits zu setzen sind, es ist aber ein doch sehr > einfaches Verfahren. Vielleicht einfach, durch die erforderliche Suche trotzdem rechenzeitintensiv. Die Überlegungen sind interssant. Danke.
-
Thread
3D Drucker Heizbett per Arduino steuern
ausrangiertes Mainboard zu nehmen. Viele Creality-Besitzer*innen upgraden die standardmäßig verwendeten 8-Bit Melzi-Mainboards auf 32-Bit-Boards mit besseren Schrittmotortreibern. Die 8-Bit Platinen bekommt man für kleines Geld nachgeworfen und die haben bereits alles dabei, was du brauchst: - Ansteuerung
absolute Feuchte darin sinkt. Du kannst beispielsweise ein Peltier-Element als Kühlfalle in die Kiste setzen und dann das kondensierte Wasser über einen Schwamm o.ä. nach außen leiten.
-
Thread
Differentieller Tranceiver mit nur einen Pin als single-ended IO
umschaltet, je nachdem, welcher Befehl (read oder write) grade abgeht, denn bei einem read musst du nach 8 Bits die Treiberrichtung am FPGA und am ADXL umschalten. Beim CS und beim SCLK gibt es nur 1 Richtung: vom FPGA zum ADXL. > Ich möchte einen ADXL355 an einen FPGA anbinden. Mein Vorschlag: setz einen
-
Thread
BIOS flash fehlgeschlagen
kann man das zurück spielen. ggf muss man zum Laden des Recovery-BIOS einen Jumper zusätzlich setzen.
Der GD25LB128D ist ein 128MBit Flash. Der Chip kann per OTP-Bits Speicherbereiche für immer schreibschützen. Der Boardhersteller könnte also in einem Bereich ein Notfall-Boot per USB-Stick nicht löschbar abgelegt haben.
-
Thread
UDP Broadcast mehrere Switches
muss erst komplett empfangen werden, bevor er weitergesendet wird. Minimale Framegröße 64 Byte = 512 bit (+ 64 Preamble) = 576 bit Minimale Übertragungszeit 576 bit / 10 MBit/s = 58µs. Schneller wird's auf keinen Fall.
eine Rolle. Selbst - im Idealfall - cut through quer durch die Kette sind hier einige gespeichterte Bits pro Node zu überwinden. Allerdings hätte man in dieser Ära Token-Ring in Erwägung gezogen. Das braucht zwar auch einige Bits pro Node, arbeitete aber deterministisch. In manchen Maschinensteuerungen
-
Thread
Wärmepumpe über MODBUS steuern
dokumentieren alles. Mitlesen kann bei fast allen. Bei manchen kann man Sollwerte und Parameter setzen. So kannst du dann dann eigene Heizkurve basteln. Die Erfahrung zeigt, es zielführend eine einfach gestrickte Heizkurve (Sockelwert, SteigungProportionalverstärkung und Integrationszeit) gut zu optimieren
einen wassergeführten Pelletofen, Scheitholzofen oder Pelletheizung als Verbraucher als Einspeiser setzen ist zwingend Schaltungstechnisch sicherzustellen das der Mischer der Einspeisung bei Überdruck oder Überhitzung aufgefahren wird -> Vorschrift!!!! 6. Das Thema Rücklaufanhebung der Einspeiser, egal
-
Thread
Wofür braucht man Widerstandsdekaden?
Heutzutage hat man Messgeräte mit Digitalwandlern mit etwas größerer Genauigkeit und Auflösung als 8 bit oder Trimmer, die man nach Einstellung misst.
bekommt man doch zwar die Zuleitungswiderstände innerhalb des Kästchens herausgerechnet, aber ich setze so eine Mehrfachdekade doch nicht in einer 4-Leiter-Umgebung ein? Die brauche ich doch als ganz ordinären Zweipol, oder nicht? Ich würde die Fühleranschlüsse extern mit den jeweiligen Bananensteckern
-
Thread
PIC10F202/etc: Programmierung unter Linux(Ubuntu)
erstellt um schnell erkennen zu koennen wie ich einen PIC einzusetzen habe und wie die Jumper zu setzen sind. Falls du die pdf verwenden willst - siehe Anhang Ich habe bisher nur eine begrenzte Anzahl von PICs verwendet.Der PIC10F war nicht mit dabei.... Beachte auch:Die meisten Formuser hier sind
erstellt um schnell erkennen zu > koennen wie ich einen PIC einzusetzen habe und wie die Jumper zu setzen > sind. > Falls du die pdf verwenden willst - siehe Anhang Wird gleich herunter geladen. > Ich habe bisher nur eine begrenzte Anzahl von PICs verwendet.Der PIC10F > war nicht mit dabei....
-
Thread
Adressierbare LED als Lagerhilfssystem
Meine Meinung ist immer "keep it simple" Vielleicht besser nur *über* die Schubladen eine LED setzen, also nur die Spalten adressieren und die Auswahl der Schublade der menschlichen Intelligenz überlassen? Würde schonmal deutlich helfen.
Meine Meinung ist immer "keep it simple" > > Vielleicht besser nur *über* die Schubladen eine LED setzen, also nur > die Spalten adressieren und die Auswahl der Schublade der menschlichen > Intelligenz überlassen? Würde schonmal deutlich helfen. Ich würde über jede Spalte 2 RGB LEDs setzen und
-
Thread
Wie zuverlässig sind chinesische Arduino Nano?
Neuer Programmverschlüsselungsalgorithmus für die Sicherheit des Anwendercodes Peripheriegerät Zwei 8-Bit-Timer mit unabhängigem Vorteiler und Unterstützung für den Vergleichsausgabemodus Zwei 16-Bit-Timer mit unabhängigen Prescalern, die die Erfassung von Eingängen und den Vergleich von Ausgängen unterstützen
Master/Slave-Betriebsarten Serielle Zweidraht-Schnittstelle (TWI), I2C Master-Slave-kompatibel 16-Bit Digital Computing Accelerator (DSC), unterstützt direkten 16-Bit-Datenzugriff Besondere Eigenschaften des Prozessors - SWD-Zweidrahtschnittstelle für On-Chip-Debugging/Volumenproduktion - Unterstützung
-
Thread
VFD Ansteuerung mit STM8
STM8, soso. Ich poste dir mal eine Routine, die per Bitbanging 8 bit per SPI auf ein DOGM Display schiebt. Das ist AVR8, sollte aber so gut wie auf jedem MC laufen: [c] // LCD connections #define LCD_PORT PORTB #define LCD_DIR DDRB #define LCDDATA 1 #define LCDCLK
Vielen Dank für die Beispiel Routine, Matthias! Zum Einstieg in die Theorie zum bit banging vs. hardware SPI hab ich einiges gefunden. Ich könnte mir vorstellen, dass es eigentlich genauer und schneller wäre, das SPI in hardware zu machen (jitter), aber inwieweit das wirklich relevant
-
Thread
ATTiny461 Timer0 = 16Bit-Timer?
> Lt. Datenblatt ist der Timer0 aber ein 8Bit-Timer! ? - Unter 'Features' lese ich im Datenblatt: • 8-bit Mode with Two Independent Output Compare Units • 16-bit Mode with One Independent Output Compare Unit Man müsste folglich das Programm
Schlecht, da hatte ich jetzt gehofft, dass mehr zu sehen ist, speziell das Setzen von TCCR0A.TCW0 - das ist nämlich für die Mode-Umschaltung zuständig. Initial value ist aber 0, d.h. 8-bit-Mode, folglich scheint BASCOM das automatisch zu setzen.
-
Thread
Manson HCS-3602 HCS-3600 Reparatur
besser dargestellt: 00 00 01 01 02 02 03 03 04 04 05 05 06 06 07 07 Da werden nur die untersten 8 Bit der Adresse ausgegeben, eben so wie das bei den AVR mit gesetztem Ausleseschutz üblich ist.
Die lock bits sind gesetzt, deswegen kannst du die Firmware nicht auslesen. Da kommt zwar scheinbar was zurück aber das ist nur bullshit.
-
Thread
SRAM auslesen der von einer anderen CPU genutzt wird
modern, USB statt LPT) fertig zu kaufen gibt... ? Die Logic-Analyser-Version könntest du mit einem 8-Bit LA (für <20€) mal probieren, nur um ein Gefühl für Aufwand/Handling/Zugang zum SRAM /... zu bekommen.
verschieben und einen passenden Namen, bspw. "Chiptuning -Tool: ROM-Emulator für SRAM" o.ä. ins topic setzen.
-
Thread
signed 18bit Integer richtig darstellen
Jens schrieb im Beitrag #7318563: > die Bits 19 bis 31 auf 1 Das sind nur 13 Bits, da fehlt noch eines Gruß Anja
zusammen, @Harry: Das funktioniert leider nicht. Muss man da nicht alle führenden Stellen auf eins setzen? nicht nur das Vorzeichenbit? Beim Überlauf auf die negative Zahl kommt da nicht das Richtige raus. @Anja: Du hast Recht, es muss heißen: Bit 18 bis 31. Danke. Grüße, Jens
-
Artikel
AVR Bootloader optiboot Assemblerversion
Start des Anwenderprogramms verzögert. LED : Wählt das Port-Bit für die Kontroll-LED. Beim Beispiel LED=B3 würde eine an das Bit 3 des Port B angeschlossene LED blinken. LED_DATA_FLASH : Die Kontroll-LED leuchtet während des Wartens auf Empfangsdaten der seriellen
und setze die Lock Bits avrdude -C ./avrdude.conf -c avrisp2 -B 1.50 -p atmega328p -P usb -b 115200 -D -U flash:w:optiboot_atmega328p.hex:i -U lock:w:0xef:m avrdude: AVR device initialized and ready to accept
-
Thread
ISR geht nicht mehr in Atmel Studio 7 ?
>> wo steht das Setzen auf OUTPUT für PORTA.Pin3? > Es steht oben ganz oben drin. > PORTB.DIR = xyz > Wie gesagt, die Software ist FEHLERFREI. In der ISR steht > PORTA.OUT ^= (1<<PIN3_bp); Könnten Sie das einem
PORTx.OUT ist wie früher das PORTx. Also Zugriff ob Low or High. Es gibt noch Strukturen fürs direkte Setzen (PORTx.CLRSET oder PORTx.OUTSET) ich nutze aber primär OUT und mache dann ganz normal damit setzen, löschen oder togglen. Die XOR Verknüpfung dort hat nichts mit den Tiny zu tun ist ganz normale Toggle
-
Thread
Wie kann ich wireless Informationen an Mikrocontroller versenden?
ich den Raspberry Pi Pico (RP2040) für eine gute Idee. Wie kann ich nun Informationen (wenige Bits groß) möglichst fehlerfrei an die RP2040-Chips senden? Ich dachte erst an gepulsten Infrarot (wie z.B. IR-Fernbedienung). Aber das erwies sich als sehr kompliziert und scheint sehr fehleranfällig
EW8051 Compiler holst Du Dir gecrackt vom Russenserver? Ich würde da eher auf was ARM-basiertes setzen (CC26xx). fchk
-
Thread
STM32G474, SPI2 läßt sich nicht einschalten
Jogibär PS: Bin auch kein Fan von HAL Ist ein ODER nicht richtig? Du willst doch zusätzlich ein Bit setzen? 0x40 ist schon Bit Nr. 6
mit SET_BIT(pSpi->CR1, (1 << SPI_CR1_SPE_Pos)); tatsächlich setzen!!! Wenn ich dagegen erst das CR2-Register beschreibe und dann die Konfiguration von CR1 und das Einschalten des SPI-Devices mittels einer
-
Thread
Can Bus interface reagiert nicht. Was mache ich falsch?
, "CAN set CURVE_CONFIG (0x00B4) Bit 7 = 0 (0x0004), please power cycle NPB afterwards", ""); - platform: template id: bit7_enable name: Switch to Charger mode on_press: - canbus.send: canbus_id: can_mcp2515
danke, ich habe noch zwei "buttons" eingefügt zum EEPROM bit setzen in der SYSTEM_CONFIG: [code] - platform: template id: mw_eeprom_enable name: "${mw_name} enable writing to EEPROM (0x00C2)" on_press: - canbus.send: canbus_id
-
Artikel
ELV UP2000 Protokoll
frei Bit 5: 0 - Baustein nicht leer 1 - Baustein ist leer Bit 6: 0 Bit 7: 1 DB3: Adresse (24-bit) LOW-Byte DB4: Adresse (24-bit) MID-Byte DB5: Adresse (24-bit) HIGH-Byte NACK. Das ist die allgemeine Negative
. PC UP2000 SetupDevice ----------------------------> <------------------------- SendStatus Flag setzen. Protokoll für das Setzen von Flags oder Security Bits. PC UP2000 SetupDevice ----------------------------> <------------------------- SendStatus Spannungsabgleich. Es folgt ein Beispiel für einen
-
Thread
Setzen einzelner Stellen eines std_logic_vector
Signal und treibt er es dauerhaft auf 0. Deswegen der Konflikt, sobald Prozess b das Signal auf 1 setzen will.
das passiert. Ja, ich wollte den Vektor bei einem Reset oder nach Signalende im Prozess a auf 0 setzen und in Prozess b wieder in den definierten Ausgangszustand bringen. Das auf 0 setzen konnte ich mir mit dem Konstrukt oben nun sparen und (fast) alles läuft wie es soll. Ich dachte, da nur RST
-
Thread
FPGA Zukunft
Signaltap angucken geht nur das digitale Signal. Das ist trivial. Es geht z.B. um das geschickte Setzen von preemp-Bits, deren Justierung an den Ports, um Signalanstiege zu beeinflussen. Oder z.B. geschicktes frequency spreading, Einsatz von Delays um Ports zu symmetrieren. Da kommst du mit den internen
-
Thread
GPIO Bitbanging mit ATSAMD51G?
in der ISR theoretisch etwas weniger als 60 Taktzyklen Zeit, um die zwei GPIOs zu lesen, und die Bits in je eine Variable zu shiften und um vielleicht noch eine Statusvariable zu setzen. Meiner Meinung nach sollte das aufgehen, sprich 60 Zyklen sollten eigentlich genug sein für so ein paar simple
Dein Signal in irgendwas umsetzen, das der Prozessor direkt verarbeiten kann, z.B. I2S, SPI oder 8-bit breiten FIFO. Das ist dann absolut deterministisch, und das ist wichtig hier. fchk
-
Artikel
AVR-GCC-Codeoptimierung
möglicherweise etwas langsamer werden. Logische Operatoren werden auf int-Größe erweitert. Obwohl der AVR ein 8-Bit Controller ist, verlangt der C-Standard, daß ein int mindestens 16 Bits groß ist. Wegen den Promotion-Regeln von C werden 8-Bit Operanden in Operationen auf 16 Bits aufgeweitet. Beispiel: Den zweiten Operanden mit dem Komplement weitet der Compiler auf 16 Bit auf, wodurch alle high-Bits von ~b gesetzt werden. Der Compiler erkennt, daß der Vergleich niemals wahr ist und optimiert ihn weg: Ein Cast verhindert dieses: was übersetzt wird zu: Achtung: Tatsächlich
-
Thread
ADC dsPICCK256MP508
einmal in der Init Funktion durchgeführt und in diesen Funktion selber. Ich muss da nichts mehr mit Bits setzen machen.
IEC12bits.ADCAN24IE = 1; // Clearing channel_AN25 interrupt flag. IFS12bits.ADCAN25IF = 0; // Enabling channel_AN25 interrupt. IEC12bits.ADCAN25IE = 1; // Setting WARMTIME bit
-
Thread
Debugging mit MPLAB X und XC-8
inkrementieren um den Pointer zum nächsten Array-Element setzen.
Bytes inkrementieren um den Pointer zum nächsten > Array-Element setzen. ... gehe besser was anderes spielen! Ein Pointer ist Type und Maschinen abhängig und incrementiert entsprechend, also hier bei 8-bit Maschine viermal.
-
Thread
AVR (ATmega644) Signatur & Serialnummer auslesen
in Deinem Datenblatt. Auf Signatur Speicher zugreifen: 1. Adresse in Z-Pointer schreiben 2. Bits in SPMCSR setzen 3. LPM innerhalb *drei* CPU-Zyklen ausführen! Z.B. in Assembler, weil nur *drei* CPU-Zyklen zwischen SPMCSR und LPM erlaubt sind: .INCLUDE "m644pdef.inc" ldi r0, 0b00100001
Entsprechend sollte sich obiger Code auch gar nicht erst compilieren lassen, da es eben besagtes SIGRD-Bit nicht gibt.
-
Thread
Bessere Poti Schaltung für Arduino?
!!!! Super Idee ! DDRx |= BitMaske die Sprache will ich lernen
Du möchtest lieber über falsch eingelötete Transistoren jammern. Also: Thema verfehlt, 6 setzen.
-
Thread
Windows 10 Home auf Pro?
M1-CPU in 32 Bit?
und es wurde zwar korrekt mein User-Agent ausgelesen, aber auch mein Rechner ist angeblich ein 32-Bit-System, was ein bisschen komisch ist, denn von Kubuntu gibt es schon seit langer Zeit keine 32-Bit-Versionen mehr und sowohl /proc/cpuinfo, als auch uname(1) und dmesg(1) sagen, daß ich ein 64-Bit-System
-
Thread
Hilfe bei Dekodierung von Checksummen Berechnung
in jeder Sprache immer ein lustiges Geschiebe und ver-xordern. Manchmal mit Tabelle (auf mehr als 1bit Basis), manchmal ohne, so wie hier auf 1bit Basis. Mal ganz unter uns: Ich kann zwar C und weiss ungefaehr was es mit CRC auf sich hat, aber ich koennte ausm Stegreif so ein Programm eher nicht schreiben
Setze den crc wert auf 255. Fuer jedes datenbyte, ueber das du den CRC berechnen willst, beginnend mit dem ersten Byte und hier aufhoerend mit dem 2.Byte tust du: Verknuepfe den crc wert mittels xor
-
Thread
RISC/V kommt in Schwung
Möglichkeiten für Scheduling. So könnte ein Compiler Instruktionen anderer Befehle zwischen die der 64-Bit Addition schedulen; Bei einem Core mit Flags ist das oftmals nicht möglich. Und für einfache Sprungbefehle kann man ein Flag in einem Register setzen (SLT) und abhängig davon springen. Cores ohne
Hatte ich die Flags schon erwähnt ???????? Nichtmal die Möglichkeit, im Speicher atomic ein Bit zu setzen. Es gibt eine ganze Menge, was dieses Ding nicht kann. Es ist nicht besser, weil es neuer ist.