-
Thread
Seriennummer einer CF Karte vortäuschen
verwendet, sondern nur ihre Seriennummer ausgewertet. Theoretisch also ist es durchaus möglich, mit einem µC eine CF-Karte soweit nachzubilden, daß sie das "Identify Drive"- und andere ATAPI-Kommandos auswertet und passend darauf antwortet. Der µC muss halt 16-Bit-I/O-Zugriffe mit ISA-Bus-Geschwindigkeit bewältigen
Byte of the Word. D08 is the LSB of the Odd Byte of the Word." Daraus schließe ich, dass mit 16bit (WORD) kommuniziert wird, oder? Nur wie muss ich die einzelnen Signale "verbinden"? Vielen Dank schonmal
-
Thread
Welche Programmiersprache für Comports?
Sebastian schrieb im Beitrag #7298274: > Wenn du für die obige Aufgabe ein externes > C-Programm bemühen musstest, ... dann kann dieses die serielle Schnittstelle auch gleich selbst abfragen.
Durchsehen so aus, als bräuchte ich 3 Tage, um das zum Laufen zu bekommen und außerdem ist wohl nur eine 32-bit-Version für Windows vorhanden. Meine Lösung ist typischerweise eine Pipe zu einem kleinen C-Programm, das dann den UDP-Verkehr abwickelt. Pipes oder TCP-Kanäle zu anderen Programmen funktionieren in
-
Thread
DCF77 ausgefallen
auch wenig. Zumindest verhindert das grob falsche Anzeigen wie "dann 26:82 Uhr", wenn mal zwei Bits fehlerhaft kommen. Die zwei oder drei Parity des DCF fangen leider nur ein einzelnes falsches Bit. > Dass DCF77 stundenlange > Ausfälle ohne Ersatzsender macht, habe ich nicht erwartet. Es stellt
mit voller Kraft weitertransportiert. Daneben steht eine selbstgebaute Funkuhr, die auch die einzelnen Bits auf LC-Display anzeigt, und da sind die ersten 14...15 Bits immer Null, wie schon vorher genannt, hat aber ja keinen Einfluss auf die Uhrzeit. Da sie Netzbetrieben ist, synchronisiert sie sich
-
Thread
GCC [STM32] -> wie sehen wie ein struct realisiert wird?
_t can_data; } tu_test; [/c] Da wäre es für mich sehr interessant, wie der Compiler das genau umsetzt, sprich ob er wirklich (in Abhängigkeit des Optimize?) Stuffing-Bits einführt, etc. *Ist jemandem eine Möglichkeit bekannt
aussehen. Maximal wird Padding am Ende der Struktur vonnöten sein. Also für deine erste Struktur: [c] typedef struct { uint64_t d; int32_t b; bool c; uint8_t a; } ts_test; [/c] (bool ist normalerweise ein 8-Bit-Typ, aber da das nicht immer so sein muss, noch oberhalb von uint8
-
Thread
AI mit ChatGPT
nicht bei den 7 Voraussagen aus dem Video dabei: https://www.youtube.com/watch?app=desktop&v=exILtC-3c_I Nur die Spracherkennung, die automatisch Strafzettel verteilt für "falsches Wording".
axel-springer-se-mathias-doepfner-und-sein-plan-fuer-bild-welt-business-insider-und-politico-a-0ee7a4e2-3f4b-4b86-aea3-fc16965c5d8c Ich hatte aber keine Lust, dafür extra mm zu abommieren.
-
Thread
Wird heutzutage auch im Komsumerbereich auf Bitflips geachtet und sicherer programmiert?
Problem ... Z.B. durch natürliche Hintergrundstrahlung. > Insb eine Fehlerkorrektur in einem einzelnen > Register bringt dir gar nichts - dann kippt halt ein anderes Bit. Um das zu vermeiden genau dafür wäre die Fehlerkorrektur ja dann da. Der Wert würde mehrere Bits einnehmen, das wäre nicht
Hast Du dafür auch Belege? SRAM kann man überhaupt nicht vergleichen mit DRAM. Ich hab mal einem AT89C2051 >10s die VCC kurzgeschlossen, der SRAM war noch komplett erhalten. Ich wollte über den SRAM eine Kaltstart/Warmstart Erkennung programmieren, da der AT89C2051 keine Bits zur Erkennung der Resetquelle
-
Thread
USB-Kabel gesucht, das 1 GByte schneller als in 15 Sekunden überträgt
schrieb: >> Birkner schrieb: >>> 5 GBit/sec ~ 0,625 GByte/sec >> >> USB 3 codiert Bytes in 10 Bits, also 0,5 GB/s. > > Brutto. Davon geht noch der ganze Protokoll Overhead ab. Laut dem oben schon zitierten Artikel der c't erreicht sie in der Praxis 440 MByte/sec. Ihr diskutiert hier zwar
ein USB-C->USB-C oder USB-C->USB-A Kabel übertragen. Es ist auch nicht so leicht, genau diese Hälfte zu treffen. Die 0,97 GB/s über Typ C - Typ A sind ja zu viel. Bei Typ C auf Typ C war es ähnlich. Am dichtesten
-
Thread
Wozu übertrieben schnelle Microcontroller?
ja soviel "natürlicher" wäre, > längst durchgesetzt haben. Das ist so wie mit den > dummen 32vs.8Bit Prognosen: Lächerlich! An vielen Stellen, vor allem z.B. auf dem PC hat sie sich durchgesetzt. Python, C++, C#, Java und noch viele mehr - alle dort gängigen Sprachen sind primär oder sogar vollständig
*** [Makefile:69: build/src/test_01_blink.o] Fehler 1 [/code] Bei anderen Controllern mit PORT C (z.B. HCS08) gibt es kein PORTC Register. *portpin_set_output(PORT_C, 8);* Würde entweder PTC8 auf Output setzen oder PTC0, wenn Port C nur 8 Bits breit ist. Da die Pin-Nummer ja eine Variable
-
Thread
Vistron VDR400 DAB Bausatz - Reverse Engineering
Hardware von LaSAT (der Technikfreaks Shop): DAB Firmware: 6.0.6 FM Firmware: 5.1.2 Die Abfrage erfolgt mit GET_FUNC_INFO vom Si4684.
zwar nur einen Mono-Ausgang aber die I2S Pins des Si4684 sind am Modul mit dem Si4684 und GD32F130C8T6 herausgeführt. Und zumindest beim "RED OPTICUM Ton 3" schaltet die Firmware I2S auch ein (16-Bit, 48 kHz). Man kann dort also ohne viel Aufwand das I2S Signal zur weiteren Verwendung abgreifen.
-
Artikel
AVR-Tutorial: IO-Grundlagen
Widerstände mehr notwendig und die Beschaltung vereinfacht sich zu einem Taster, der einfach nur den µC-Pin mit GND verbindet. Zugriff auf einzelne Bits. Man muss nicht immer ein ganzes Register auf einmal einlesen oder mit einem neuen Wert laden. Es gibt auch Befehle, mit denen man einzelne Bits abfragen und ändern kann: Der Befehl sbic (skip if bit cleared) überspringt den darauffolgenden Befehl, wenn das angegebene Bit gleich 0 (low) ist. sbis (skip if bit set) bewirkt das gleiche, wenn das Bit gleich 1 (high) ist. Mit cbi (clear bit) wird das
-
Thread
Serial Communiction uint8_t* Arduino
mit allen Arduinos und Arduino fähiger Hardware, welcher HardwareSerial (uart) nutzt. Alle! Von 8 Bit über 32 Bit bis 64 Bit Kesselchen. Egal welcher µC Type/Hersteller.
J. S. schrieb im Beitrag #7269517: > In C++ kann man Dinge unterschiedlich lösen Waren es 4 oder 5 Paradigmen, die C++ unterstützt? Und C nur ein einzelnes?
-
Thread
Uhrzeitrechner
Korrektur, muss nach ganz oben vor die Schleife [c] DateTime temp= rtc.now() - TimeSpan( 0, 11, 0, 0 ); //zieht 11 Stunden ab [/c]
Außerdem kann es vorkommen das die rtc durch die vermehrten i2c abfragen Ticks verliert, also sollte man die interne rtc alle 15-20 Minuten mit der externen Uhr synchronisieren und diese nutzen. Wenn es nur ein Lehrbeispiel/Aufgabe ist macht der Aufwand aber keinen
-
Thread
Echo HC-SR04 auswerten
Overflow zu laufen. Übrigens kann man die US Sensoren auch mit einfachem Arduino Code mm genau abfragen ohne Input Capture. C würde auch reichen. Schall ist eben relativ langsam ;-) Wie gehe ich in meinem AssemblerCode in der ISR zum Erfassen eines Pulse With vor 1. Alle in der ISR verwendeten
rising Ereignisses aufgerufen wurde. Wenn RisingEdge: 1. Am Anfang zwischengespeicherten 16Bit Wert für Rising ( aus ICR1L und ICR1H) z.B. im SRAM speichern. 2. Ein StstusBit für RisingCaptureDone setzen 3. Umschalten auf FalingEdgeCapture hierbei nicht vergessen das ICF Bit in TIFR1 zu löschen
-
Artikel
AVR-Tutorial: Schieberegister
8 auf GND geschaltet werden. Die Programmierung gestaltet sich dann nach folgendem Schema: Die 8 Bits eines Bytes werden nacheinander an den Ausgang PB3 (SER) ausgegeben. Durch Generierung eines Pulses 0–1–0 an Pin PB5 (SCK) übernimmt das Schieberegister nacheinander die einzelnen Bits. Dabei ist zu
weiter erhöht. Dies deshalb, da ja die einzelnen Bits im Gänsemarsch durch alle Bausteine geschleust werden müssen und für jeden einzelnen Schiebevorgang etwas Zeit notwendig ist. Ein Ausweg ist die Verwendung des SPI-Moduls, welches schneller
-
Thread
Altium: Reaktivierungsprogramm endet wohl dieses Jahr
anstehen – bei Altium ist das noch feiner granular, da kannst du die durchzuführenden Änderungen noch einzeln an- oder abwählen.
Bei Eagle machst du sie aber nur einmal. Selber habe ich auch so gut wie keine Lib (ausser R und C und Pfostenstecker) sondern einzelne Verzeichnisse wo Bauteil, Datenblatt 3D Modell etc drin sind die dann noch über VCS historisiert werden. > Wer von Protel / Altium kommt fällt von einem Wutanfall
-
Thread
8 bit auslesen
Darth V. schrieb im Beitrag #7261218: > Cch brauche die einzelne bits um je nach Stellung Musik abzuspielen. :) > Und es wäre zu viel Arbeit von 8 bit jede Stellung zu erfassen und als > if Abfrage abzufragen... ???-{ .... Sieht scheiße aus, wa? Probiers
doch mal, warum du das so machen willst. Was ist das > eigentliche Problem? Warum willst du da einzelne Bits "auslesen"? > Ich bekomme 128 verschiedene Zustände reingeschickt die per Expander über den I2c auf den uC(ATMega328P) geschickt werden. Dass wird per Uart auf den RPI geschickt. Jetzt will
-
Thread
Eingangsbeschaltung Frequenzzähler EA 6533-8
mit schon seit fast 35 Jahren mit Elektronik und Programmierung. Angefangen hat alles bei Brotkasten C64 danach kam VB 1.0 bis 6.0 später dann VB.net sowie Mikrokontrollerbasteleien mit der Entwicklungsumgebung Bascom (ja, bin Basic lastig :). Nun zu meiner Frage: Ich habe mir ein Frequenzzählermodul
Datenübertrag war alles kein Problem. Jedoch möchte ich die Frequenz dierekt an einer 230V Leitung abfragen und brauche dafür eine Vorschaltung, Spannungsteiler oder andere Möglichkeiten mit Kondenstatoren bzw. IC-Lösung etc. Ich denke das ich das auch selber hinbekommen könnte jedoch zum Preis von knappen
-
Thread
AVR DB - oder doch ein Compiler-Fehler?
diese stets gültige Werte annehmen und sich dabei eine Häh? d.H. in deiner Welt darf man nur 8-Bit-Variablen verwenden, wenn man auf einem 8-Bit-AVR unterwegs ist? Es ist nunmal eine Hardware-Limitierung, dass der AVR nur 8 Bit auf einmal schreiben kann. Völlig egal, ob du den in ASM, in C++, oder
var = var ^ 0x30; } [/c] Nur 8-Bit Schreib- und Lesezugriffe. Trotzdem nicht atomisch.
-
Thread
Ressourcenverbrauch bei Vergleich
um zu vergleichen, ob zwei Register identisch ist, musst du alle Bitkombinationen per UND-ODER abfragen. Für ein einzelnes Adressbit sieht die Logik dann folgendermaßen aus: y = (A0 and B0) or (!A0 and !B0) Wenn die Adressbreite größer wird, explodiert der Aufwand für den Vergleich, weil jeweils
Dann ist mein Plan B, daß ich den 14-Bit Vektor (RAM_PAGE_ACTIVE ) über zwei 74F573 latche und zum Vergleich dann die Latchausgänge und die CPU_ADDR zwei 74F521 8-Bit Komparatoren vorwerfe und die beiden /P=Q Ausgänge dann in das CPLD führe
-
Thread
seriell FTDI TTL UART SUART ich blicke nicht mehr Durch!
besagten Zeilen geht mit dem switch case, dann könnte man das bestimmt vereinfachen. Das extrahierte c, der gewünschte Bit Zustand am Port, ist an dem Punkt schon im switch(c) mit 0 oder 1 ermittelt wurden. Würde für mich bedeuten man kann im case 1 gnadenlos die aktuelle BitPosition verodern/setzen und
i = 0; i < 8; i++) { if (optlen == 0) break; optlen--; char c = opt_s[optlen]; switch (c) { case '1': // Soll Bit Zustand 1 if ((ist & maske) == 0) toggleData |= maske; break; case '0': // Soll Bit Zustand
-
Thread
Viele Kippwaagen, wie zählen?
Eingänge der SRs (beispielsweise CMOS4021) parallel in die Register einliest, die dann seriell vom µC ausgelesen werden. Nach dem Auslesen aller Taster sind in 10 Bytes im µC Bit für Bit insgesamt die Zustände aller 80 Taster abgespeichert. Die kann man bequem auswerten: Byte für Byte. Das ist eigentlich
von der Rückflanke des Strobeimpulses zurück gesetzt. Ein weiterer Nachteil dieser sequentiellen Abfrage ist, daß diese systembedingt nur funktioniert solange der µC auch läuft. Also sollte der µC oder der auch der Bus aus irgend einem Grund ausfallen gehen die Daten währen dieses Zeitraumes natürlich
-
Thread
1-Wire und non-blocking code (state machine)
= 0; // stop T0 return; } onwi.pbuf = pbuf; TCNT0 = 256 - OW_BIT_SLOT; } [/c]
natürlich noch BeginCritical() und EndCritical() um Sektionen ohne Interrupt, wie die Übertragung eines Bits. Eine einzelne Bitübertragung läuft also am Stück (sowas wie 80µs), zwischen den Bits oder im 1W-Reset kann der Code aber unterbrochen werden. Mit RTOS kann es also zwischen den Bits zu einem Taskwechsel
-
Thread
ältere Isel C116 CNC lässt sich nicht ansteuern
Hallo Forengemeinde, Ich habe hier eine ältere C116, die ich gerne wiederbeleben will. Ich würde diese auch gerne unverändert weiterbetreiben. Ich habe eine Doku zu einer nachfolgenden Isel gefunden. Habe damit versucht meine C116 anzusteuern. Leider
Alternativ mit Adapter umbauen: z.B. https://www.micompan-shop.de/Zubehoer-Isel-CNC-Maschinen/Isel-UI5c/UI4c-Adapterkarte-mit-Takt-u-Richtungssignalen-fuer-C142-C242-C116::25.html und als Software LinuxCNC oder mit USB https://www.estlcam.de/estlcam.php
-
Thread
Ergebnisse einer FFT zusammen fassen
Board von Texas Instruments. EK-TM4C123GXL mit einem ARM® Cortex®-M4F Based MCU TM4C123G. Der hat 2 ADC's. Der ADC hat folgende Daten: [c] -ADC resolution = 12BIT -ADC conversion clock frequency = 16Mhz -ADC conversion rate = 1Msps
c-hater schrieb im Beitrag #7224176: > Was ich verwende, sind sozusagen einzelne Bins einer FFT > (Goertzel-Filter). Das hat den Vorteil, dass man für jeden einzelnen Bin > getrennt die Bandbreite einstellen
-
Thread
Einzelbits in Byte Namen zuweisen und auswerten
Hallo, wie kann ich in C die 8 Bits eines Bytes mit Namen versehen und diese dann gezielt mit dem Namen lesen, setzen, löschen? uint8_t Status; Status soll bestehen aus: Platzhalter0 für bit0 Platzhalter1 für bit1 .
Was du suchst, nennt sich bit-field. https://microchipdeveloper.com/c:bits-bools-and-bit-fields
-
Thread
Viessmann Eurola OC mit 2-Drahtbus nachrüsten
Ruhe in den Empfangsbetrieb erkennen und dazu reich der Pegelwechsel. Daher vermute ich das ein einzelnes Datagramm ein Start-Bit hat. Zumindest in den von mir aufgezeichneten Datagrammen ist die erste 0-Phase immer genau ein Bit (0,85ms) lang. Damit ein Empfänger sich sauber synchronisieren kann wäre
zum Einsatz kommen: D2 = 75176B (ti) => Differential Bus Transceivers for RS-422/RS-485 D3 = P87C52EBAA (2359S129548hG) => 80C51 based architecture (8032 compatible) 8-bit microcontroller with 8kb EPROM N1 = 14541B (M) => Programmable Timer N2 = LM393 => Dual Comparator L1 = S+M B82790 S513 N
-
Thread
Python Uart einlesen und ausgeben
Zuerst Danke für deine Antwort, also das Problem hast du richtig erkannt dass ich nicht alle If Abfragen schreibe... nur ist es möglich die If Abfrage so zu kürzen dass bei 1111 1111 alle 8 LEDs ZUSAMMEN leuchten? oder funktioniert das nur einzeln?
und der Bitstream ins Spiel. So wie ich es oben beschrieben habe kann er bei 8 LEDs mit 8 if-Abfragen bei jedem Wert von einem 8Bit-Wert jede Möglichkeit an LEDs an/ausschalten. Auch gleichzeitig. D.h. bei 0000 0001 wird nur LED1 eingeschaltet und bei 0100 0001 LED 1 und LED 7.
-
Thread
ELSTER und Javascript
grundsteuer-erklaerung-nicht-einmal-jeder-fuenfte-hat-bisher-die-grundsteuer-erklaerung-abgegeben-a-9b7294c8-65a9-4843-b523-8be7ed9e83b8?dicbo=v2-f9ed1a20a4920e69ca91f6c59a64f536
alten Windows-Versionen weiter zu warten, und gleichzeitig neue zu entwickeln? z.B. der Schritt auf 64bit war extrem sinnvoll. Hätte Microsoft auf alle Ewigkeit bei 32bit XP bleiben sollen, weil "never change a running System"? Oder einfach gleich bei DOS, das hat doch funktioniert! Jemand_1 schrieb
-
Artikel
Hausbus auf I2C- und ATtiny-Basis: Home2L Brownies
Notification ist optional, sodass bei entsprechender elektrischer Beschaltung die Brownies vollkommen I2C-konform kommunizieren können. Experimente beim Autor des Home2L-Projektes haben gezeigt, dass eine Kommunikation über 100 Meter KNX-Kabel mit ca. 30 kBit/s praktisch übertragungsfehlerfrei funktioniert
Wartungs-Tool. Für den Linux-Host gibt es ein Wartungs-Tool (home2l-brownie2l). Dieses kann mit den einzelnen Brownies über eine beliebige I2C-Schnittstelle kommunizieren, die von Linux unterstützt wird (Kernel-Modul i2c-dev). Alternativ ist es auch möglich das "ELV USB-I2C"-Interface direkt zu verwenden
-
Thread
Warum installieren Leute Windows auf Servern?
Beitrag #7214742: > Dann noch der Klassiker, wenn jeder Client im Firmen-Netzwerk seine > Updates einzeln von MS-Server über das Internet zieht. Microsoft bietet WSUS für Updates, der Kram geht also nicht einzeln über Netz. Dort werden die Updates freigegeben, so dass man die Kontrolle behält. Automatische
recht leicht. Der Nutzen des Watcom-Compilers heute wohl nicht mehr der gleiche als noch zu 32/16-Bit Zeiten. In Windows braucht man wie in Linux - immer auch ein wenig "Gewusst Wie".
-
Thread
AVR- C: Welche einfachen Projekte für den "Einstieg"?
PORT->Group[1].OUTSET.bit.OUTSET = (1 << 30); /* wait for button release */ while ((PORT->Group[0].IN.bit.IN & (1 << 16)) == 0) { } } } return 0; } [/c]
wofür man das Manual durchlesen muss. Ob du nun für die Ausgabe einer PWM sowas brauchst wie: [c] /* * PB16: PWM output to generate V[LCD] * PB16 = TC6/WO[0], function E */ PORTB.PMUX[16 / 2].bit.PMUXE = PORT_PMUX_PMUXE_E_Val; PORTB.PINCFG[16].bit.PMUXEN = 1; [/c] oder
-
Thread
Kann man MS Windows und MS Office heutzutage noch ohne Microsoft-Account betreiben? (legal!)
selbst. Im Prinzip richtig, aber die Enterprise-Version ist an Volumenlizenzen gekoppelt, nicht einzeln erhältlich.
Ohne Schlaumaier wäre das µC-Forum aber nur halb so schön. Möge er uns lange erhalten bleiben.
-
Thread
Eigenbau Einspeisewechselrichter
OPV-Gleichrichtung in den Schaltregler-Baustein einkoppeln. Das ist unnötig und viel zu kompliziert. Ein uC hat keine mühe damit einen sauberen sinus zu produzieren, sei da ab tabelle oder einzeln berechnet. Man braucht dazu nur ein sync-signal. Wenn die frequenz 1% abweicht ist das nicht so tragisch. Beim
D13 zu Q8 gibt. Ich kann mir also mit der Abfrage Zeit lassen ohne, dass der Sperrwandler hoch läuft und kaputt geht. Mit Zeit lassen meine ich, einmal im Netzscheitelpunkt abzufragen C19 ist Teil der anti Inselbildungsschaltung. Ab Zeile
-
Thread
Raspberry pi Pico rp2040 RS485 Implementierung
hintereinander ein großes U (entspricht 0x55) schicken, das kann man am besten auswerten, da sieht man jedes Bit einzeln. Michael
c-hater schrieb im Beitrag #7194764: > Norbert schrieb: >> Aber: _»A new high to low transition indicating the start bit of a new >> frame can come right after the last of the bits used for majority
-
Thread
Owon HDS242 bei Pollin
, es liegt in seiner Tasche mit dem Display nach unten und hat im Regal in der Garage von etwa -10°C bis zu +36°C alles weggesteckt. Old-Papa
zip-Datei der V8.8.2 für das HDS242 welches ich eingespielt habe hat die MD5 Prüfsumme 5374220570a18d4a53c5a2c0b8236d87
-
Thread
Probleme beim Installieren von Linux
2021-07-06 17:06 2.0G > > Wieso nicht die aktuelle Debian basierte Variante nehmen? Weil das 64bit ist. versuch wenigstens mal, zu verstehen, was andere schreiben. > Den Pentium 4 auf den Wertstoffhof packen wo er hingehört und von dort > einen aktuelleren Rechner mitnehmen, selbst C2D haben
06 17:06 2.0G >> >> Wieso nicht die aktuelle Debian basierte Variante nehmen? > > Weil das 64bit ist. versuch wenigstens mal, zu verstehen, was andere > schreiben. > >> Den Pentium 4 auf den Wertstoffhof packen wo er hingehört und von dort >> einen aktuelleren Rechner mitnehmen, selbst C2D
-
Thread
Warum Keil (oder andere unfreie Compiler) statt SDCC?
Nop schrieb im Beitrag #7186290: > Das liegt an Deinen bekanntermaßen dürftigen C-Kenntnissen - nicht am > Compiler. Und du meinst, ein Compiler darf meine Kenntnisse über irgend etwas abfragen und wenn es ihm nicht paßt, mir einfach mein Geschriebenes wegstreichen? Nö, sowas
im Beitrag #7186318: > Und du meinst, ein Compiler darf meine Kenntnisse über irgend etwas > abfragen und wenn es ihm nicht paßt, mir einfach mein Geschriebenes > wegstreichen? Ein C-Compiler darf (nicht: muß!) Dinge unter der as-if-Regel streichen, wie das im C-Standard vorgesehen ist. Wenn Du
-
Thread
Schieberegister ersetzen
ich extrem überfordert und weiß oft nicht, was ist Ernst und was ist Trollerei!!! Warum kann ein uC mit 3 Portleitungen (Daten rein, Daten raus, 1MHz_Clock) das nicht bit für Bit rübertakten, warum externe Schieberegister ?
8 Bit auf einmal verarbeiten als einzelne Bits. Er müsste dann einen RAM-Speicher für mindestens 5000 Bytes haben, wobei nur 1/8 der Bits genutzt werden. Bei den größeren µCs gibt es das, bei den kleinen
-
Thread
Magnetic Loop Steuerung (Arduino)
zu diesem thema: I would suggest using the same strategy you'd use to eat an elephant: take it one bite at a time. :-) Wenn man den Aufwand, C in funktionierenden C++ Code umzuschreiben mit dem Essen eines Elefanten Vergleicht, fange ich das erst gar nicht an! Vor allem macht es keinen Sinn, ich
Versuche mal die Interrupts bei der Abfrage zu sperren. [c] cli(); if (LastStepperPos != StepperPos) { Serial.println("LastStepperPos"); Serial.println(LastStepperPos); LastStepperPos = StepperPos; Serial.println
-
Thread
-
Thread
Wieso spricht man bei den 8 Bit-AVRs von RISC?
Renesas hat den M32C.. nicht ohne Grund so benannt. Zugegeben, es ist dort nicht alles 32 Bit. Daten-Register können zu 32 Bit komb. werden (was teils auch bei M16C mögl war), aber insbes. Rechnungen >16 Bit sind dort
andere) daran eingeschlafen sind. (Was wurde an 8051 an der Speicher-Architek. erweitert? nix) M16C20 - M16C60 - M16C80 - M32C - R32C, sind alles aufsteigende Serien. (keine dieser Serien ist zu blöd 'drausen' atomic ein Bit zu setzen oder 32 Bits auf ungerade Speicher-Adressen zu verteilen oder INT-Ebenen
-
Thread
NXP PCA8574 hat Phänomen mit 2 Adressen
/remote-8-bit-i-o-expander-for-ic-bus-with-interrupt:PCA8574_74A Controller: AVR128DB64 Ein Testprogramm Address-Scanner zeigt: [code] I2C Address Scanning... 7Bit 7Bit 8Bit I2C device found
Du stolperst über die 10-Bit Adressierung. https://en.wikipedia.org/wiki/I%C2%B2C#Reserved_addresses_in_7-bit_address_space
-
Thread
32-Bit-µC: Möglichst viel uint8_t verwenden?
verwendeten CPU entspricht. Das ist ein Vorteil sondergleichen. Hätte man damals den Integer als 16-Bit festgetackert, würden C-Programme heute auf 32- oder 64-Bit Systemen grottenlahm laufen, weil sie mit einer solchen Altlast nicht optimal arbeiten können. Die meisten C-Standard-Funktionen arbeiten
man damals den int auf 16 Bit festgetackert und den long int auf 32 Bit und den (später dazugekommenen) long long int auf 64 Bit, dann würden heutige C Programme auch nicht langsamer laufen. Was du vermutlich sagen willst: "
-
Artikel
8051 Timer 0/1
/12 (Maschinentakte) und externem Eingang. Dies geschieht mit dem Bit C/T im TMOD-Register. C/T auf 0 bedeutet Timer-Betrieb (bekannte Frequenz wird gezählt -> Zeit), C/T auf 1 bedeutet Counter-Betrieb (externe Ereignisse werden gezählt -> z.B. Abfüllen von Werkstücken
'Harte' Schreibzugriffe konfigurieren beide Timer gleichzeitig. + TMOD-Register Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 G C/T M1 M0 G C/T M1 M0 + Timer Betriebsarten M1 M0 Betriebsart 0 0 Mode 0: 13-Bit Timer/Counter ( ) 0 1 Mode 1: 16-Bit Timer/Counter 1 0 Mode 2: 8-Bit Timer/Counter
-
Thread
RS485 vermute Störsignale, wie entfernen
mit einer Prüfsumme geschützt sind. Die im Rahmen des Protokolls übertragenen Daten sind entweder einzelne Bits (Coil) oder 16-Bit-Werte. Was genau für ein Sensor ist das, mit dem Du da Daten auszutauschen meinst? (Typ, Datenblatt)
Dafür gibt es bei Arduino die Funktion "Serial.available()" Das könnte z.B. dann so aussehen. [c] if (Serial.available()) { Serial1.readBytes(Anemometer_buf, 8); } [/c]
-
Thread
Kann man mit OCR1B rechnen
Hallo Von diesem Timer kommen 20ms [c] void timer1_init() { // Timer 1 16 Bit konfigurieren 16MHz TCCR1B|= (1<<CS11)|(1<<CS10); // Prescaler 64 TCCR1B|= (1<<WGM12); // CTC Modus Nr 4 TIMSK1|
Klaus schrieb im Beitrag #7099606: > Kann ich einfach rechnen: Ja, kannst du. Auch [c]OCR1A += 20;[/c] geht. Das Register hat lesend und schreibend 16 Bit, und man liest auch den gleichen Wert zurück, den man rein geschrieben hat. Allerdings würde ich mehrfache Operationen (wie