-
Thread
Atmega88 Internal Clock Divider
Eingangsspannungsbereich von 1,8V -5,5V und einen Freqeunzbereich bis 16 bzw. 20MHz. Bei 1,8V sind aber nur max. 4MHz zulässig. Deswegen wird der interne 8Mhz-Oszillator per CKDIV8-Fuse auf 1Mhz runtergeteilt und der Controller auch so ausgeliefert. Damit läuft er auf jeden Fall bei jeder Spannung. Beim Atmega8
jetzt mal gar kein Problem. Thomas Eckmann schrieb im Beitrag #3850927: > Bei 1,8V sind aber nur max. 4MHz zulässig. Deswegen wird der interne > 8Mhz-Oszillator per CKDIV8-Fuse auf 1Mhz runtergeteilt und der > Controller auch so ausgeliefert. Damit läuft er auf jeden Fall bei jeder > Spannung.
-
Thread
Float Vars--Rundungsfehler
(float) = 4, es werden also nur recht ungenaue 32-Bit-Floats verwendet. In float.h sollten FLT_MAX und FLT_MIN zu finden sein. Hier mal -als Beispiel- die entsprehenden Konstanten, allerdings aus einem anderen Compiler: [C] #define FLT_DIG 6 /* # of decimal digits
0 #define FLT_MANT_DIG 24 /* # of bits in mantissa */ #define FLT_MAX 3.402823466e+38F /* max value */ #define FLT_MAX_10_EXP 38 /* max decimal exponent */ #define FLT_MAX_EXP 128 /* max binary exponent */
-
Thread
Duale Versorgung uC / Flash
Beitrag #6508549: > Die Frage ist noch, ob man das Flash abschalten will. Mit einem > einzelnen IS25LP256E würde ich wohl drauf verzichten, der braucht typ. > 7.5uA im Sleep. Das wäre schon viel. Ich hatte bereits den S25FL064A mit 1uA typisch genannt. (OK, max. hat er auch 10uA). Abschalten lohnt sich
klein sein soll, würde ich auch eher eine LiThionylchlorid Batterie einsetzen. Die gibt es auch mit max. 3.6V.
-
Thread
Unbenutztes Register im 8-Bit Atmel?
Liste1: x1[0..L1] Liste2: x2[0..L2] Liste3: x3[0..L3] ... Liste9: x9[0..L9] (letzte Liste. Max 9 stück möglich) [/c] Dann lege ich eine Struktur mit folgendem Inhalt an: [c] - Anzahl max Listen - Start Liste1 - Start Lsite2 - Start Liste3 - ... [/c] Also für das Beispiel sieht das dann
aber wohl nicht als Lösung: Der Stack-Pointer. Ok, CALL/RETURN kannst du dann knicken und Modelle bis 256 Bytes RAM auch, aber ansonsten erfüllt der alle Forderungen. ;-)
-
Thread
China SUPER Bauteile-Schnäppchen Thread [V2] Gesperrt
diesem Fall hilft der Zusatz "2016" https://www.aliexpress.com/wholesale?a&SearchText=esp-12s%202016&maxQuantity=10&isUnitPrice=y&isFreeShip=y&SortType=price_asc&minPrice=&maxPrice=&shipCountry=&shipFromCountry=&catId=&minQuantity=
Es geht mir um Temperaturen > 250°C bis max. 400°C
-
Thread
Formatieren mit ElmChan FatFS
Address = ((sector + 1) * 512) - 512; if(count == 1) { pageWrite(buff,Address,256); buff += 256; pageWrite(buff,Address+256,256); } else { do { //Start Addresse berechnen Address = ((sector + 1) * 512) - 512; pageWrite(buff,Address,256); buff += 256; pageWrite(buff,Address+256,256); buff+=256; sector++; }while(count--); } //Warte bis der Schreibvorgang beendet wurde vom Flash while(readStatus
-
Thread
AX81 - ZX81 im AVR
dort starten - ca. 5 Minuten warten - Neben der image-Datei liegen dann noch ein Ordner TAPES mit 256 Unterordnern im Installtionsverzeichnis - Installationsprogramm vorsichtshalber löschen. - die Datei ax81_image.bin enthält 256 virtuelle "Tapes" 2. Programme auf ein Tape (im Image) schreiben
Ein paar weitere Tests: A. Habe die 2GB Medion Karte unter Knoppix so bearbeitet wie angegeben. 256M ID:6 FAT16 Partition angelegt und formatiert. 4 Images drauf und nun läuft sie wie auch schon die andere 256MB große SanDisk. D.h laden/speichern ZX81 OK; Schnapshot bei ACE = Nein. Version war noch
-
Thread
Problem mit mySmartUSB light
value 2; real time: 3m 42s; user: 210ms; system: 60ms [/code] Hat jemand eine Idee? Danke, Max
kann mir sagen wie er avrdude aufruft? Oder ob man was in der avrdude.conf eintragen muss. lG, Max
-
Thread
MAX756 Schaltregler: Frage zu Kondensatorengrössen
Hier das Datenblatt: http://www.mouser.com/ds/2/256/MAX756-MAX757-92691.pdf C1 wird mit 150uF angegeben, C2 mit 100uF. Frage: Kann ich bei solchen Angaben eigentlich immer auch grössere nehmen, z.B. 1000uF, oder wäre das schädlich für die Effizienz
Christian S. schrieb im Beitrag #4187610: > Hier das Datenblatt: > http://www.mouser.com/ds/2/256/MAX756-MAX757-92691.pdf > > C1 wird mit 150uF angegeben, C2 mit 100uF. > > Frage: Kann ich bei solchen Angaben eigentlich immer auch grössere > nehmen, z.B. 1000uF, oder wäre das schädlich für
-
Thread
HC12 oder M16C
verbreitet ist. Wollte mit 68HC11 anfangen >> dann hab ich die AVRs entdeckt und die Sache war klar. Max
Entwicklung den CAN Bus benötige sind für mich u.a. folgende uCs interessant. M16C: M306N0FGTFP (256KByte DINOR Flash / 10KByte SRAM / CPU_CLK = 20MHz / 5V / 2xCAN) HCS12: MC9S12DG256 (256KByte Flash / 12KByte SRAM / CPU_CLK = 48MHz BUS_CLK =24MHz / 5V / 2xCAN) 10-bit-A/D-Wandler
-
Thread
Weltzeituhr LED Matrix
=item2390994541:g:n18AAOSwf-xZnsPv http://www.ebay.de/itm/MAX7219-8x8-Punkt-Matrix-LED-Modul-3mm-fur-Arduino-Raspberry-Fertig-aufgebaut/181936740607?hash=item2a5c4658ff:g:4RkAAOSwzXxaBb9m https://www.ebay.de/itm/MAX7219-Punkt-Matrix-Modul-LCD-LED-Display-8x8
Ich glaube ich hab was gefunden: https://www.ebay.de/itm/16x16-Matrix-256-LED-WS2812B-LED-5050-RGB-00216/112643777513?hash=item1a3a17a3e9:g:hsAAAOSw~gRVyieO 16x16 Matrix 256 LED WS2812B LED 5050 RGB
-
Thread
AVRDUDE µC-Kompatibilität (A und PA Typen)
paged = no; page_size = 4; size = 256; min_write_delay = 3600; max_write_delay = 3600; readback_p1 = 0xff; readback_p2 = 0xff; read = " 1 0 1 0
delay = 6; blocksize = 64; readsize = 256; ; memory "lfuse" size = 1; min_write_delay = 4500; max_write_delay = 4500; read = "0 1 0 1 0 0 0 0
-
Thread
excel IP Länder zuweisen
würde ich daraus erstmal eine Zahl machen: [code] =REGEX(B7,"[0-9]+",,4) + REGEX(B7,"[0-9]+",,3)*256 + REGEX(B7,"[0-9]+",,2)*256*256 + REGEX(B7,"[0-9]+",,1)*256*256*256 [/code] Damit kann man nämlich bei einem IP Range schauen, ob die IP im range liegt, wie bei jeder anderen Zahl: min <= ip <= max. Ich weiss aber nicht, wie man dass dann mit einer ganzen Liste von IPs und Ranges macht. Mit einem python script oder so währe das alles einfacher lösbar.
-
Thread
rechnen in Assembler mit AVR
ASM ;t=TSic_Wert*200 /2048-50 (die 2047 um 1 erhöht um besser rechnen zu können) ;t=TSic_Wert*25/256-50 (gekürzt /8) ;Da eine Stelle hinter dem Komma angezeigt wird, rechne ich die Temperatur*10 und setze ;vor die letzte Stelle den Dezimalpunkt (Festkomma). ;Temperatur*10=(TSic_Wert*250)/256-500
Temperaturbereich gemessen werden soll, kann man auch 'TSic_Wert' noch um eins erhöhen, dann ist der max. Fehler (~0.1K) bei -50°C.
-
Thread
82S129 PROM emulieren mit Attiny
Was soll 'ldi mit Z+' sein? Gemeint war natürlich lpm mit Z+, kann der Attiny26 nur in den ersten 256 Byte. > Kannst du auch nicht mit dem internen Takt. Die PLL der ATTiny26/261 > wirkt nur auf Timer1. Beide Controller laufen intern mit max. 8MHz. Den internen Takt kann man doch kalibrieren?
Reinhard Kern schrieb im Beitrag #2752624: > im worst case braucht man dazu 256x4 = > 1024 Makrozellen Nein, man braucht 4 Macrozellen, da 4 Ausgänge. Es kann nur sein, daß die OR-Terme knapp werden. Peter
-
Thread
zwei mega328 über 10m Kabel miteiander kommunizieren lassen
Lars H. schrieb im Beitrag #5517183: > max422 bestellen. Gibts den überhaupt? MAX488 wär besser.
? Das Datenblatt klingt aber eigentlich ganz passend für meinen > Zweck. Link? Google fand zu MAX422 exakt nichts, nur nen OPV MAX4224.
-
Thread
Suche ein Digitalpoti 255, 256 oder 1024 „Up/Down“
Hallo Jungs, hab jetzt nach einiger Suche ein Digitalpoti mit 256 Stufen gefunden mit „Up/Down“. Für euch ist das ja uninteressant mit über 250 Stufen von max. nach min. zu regeln. Gruß und Danke an alle.
schrieb im Beitrag #4938690: > Hallo Jungs, > > hab jetzt nach einiger Suche ein Digitalpoti mit 256 Stufen gefunden mit > „Up/Down“. > > Für euch ist das ja uninteressant mit über 250 Stufen von max. nach min. > zu regeln. Wie kommst Du zu dieser Annahme? Mich würde das schon interessieren
-
Thread
RC-Tiefpass für PWM
des RC Gliedes ? Wie bekomme ich die Grenzfrequenz ? Daten die ich habe.. 16Mhz Taktung 256Bit Also 8Bit Timer 0/5V Der Motor/Lüfter zeiht max. 150mA. Aber ich "schalte" mit dem PWM Signal nen FET der dann mein Lüfter "schaltet". Dies geschieht dann mit 12V, gemessen 11.30V bei Timerwert
Wert 255 von 0-255 also in Wirklichkeit die 256 Stelle.
-
Thread
Bitte Hilfe: RAM für Notebook, welcher ?
es so verstanden, dass ich noch einen Riegel mit weiteren 256MB einbauen kann, um auf die Max. 512MB zu kommen, richtig ? Aber was sagen mir die anderen Angaben ? Hab schon mal bei eBAY geschaut. Dort haben die RAMs aber alle 2,5V. Kann ich die trotzdem einbauen
Habe da noch ein Siemens Ram 256MB-DDR-PC2100 Wenn das passt gebe ich es für 7,88 Euro + Porto her. Andreas
-
Thread
Ersatz einer Diskette im Diskettenlaufwerk??
Läubi Mail@laeubi.de wrote: > 1MB max stimmt > bzw... Laut Wikipedia: 30-pin SIMM: 256 KB, 1 MB, 4 MB, 16 MB Wie stellt der PC eigentlich fest viel RAM ein Baustein hat??
, aber für meinen Fall wäre das in Ordnung. Gibt es noch Alternativen dazu als 2.5" Bauhöhe? Max
-
Thread
Hashfunktion oder Trick für Lookup-Tabellen gesucht
.. schrieb im Beitrag #1773497: > Wenn du einen Suchbaum > im Eprom aufbaust hast du sogar in ln(256) = 8 Schritten die Lösung Ich weiß zwar nicht wie du auf ln(_256_) kommst aber die Suchbaum-Idee ist nicht übel.
256 war einfach ein Schuß ins blaue, genauso wie die 1000 eben ein Beispiel. Johannes R. schrieb im Beitrag #1773537: > bei 80 Einträgen kann die lineare Suche ne ganze Menge Arbeit für den > kleinen
-
Thread
Codeoptimierung
Ideal Real im FPGA Fehler 2**8/33 = 7,7575 ==> x*7,7575/256 x*8/256 3,1% 2**9/33 = 15,5151 x*15,5151/512 x*16/512 3,1% 2**10/33 = 31,0303 x*31,0303/1024 x*31/1024 0,09% 2**11/33 = 62,0606 x*62,0606/2048
Frame ohne Pausenpuls eventuell trotzdem einen detektieren, z.B.: > 56, 27, 7*13 deine Daten (max 27 Ticks) muessen kleiner als ein halber SYNC (56 Ticks) sein. Das klappt ganz sicher da 2x27=54 ist
-
Thread
Zuweisung unter Assembler
horst, den Spruch find ich richtig ulkig :) die anderen gebiete sind mir leider fremd.. grüße max
Karl Heinz Buchegger schrieb im Beitrag #2521465: > BC = 256 > D = H Aber das sind doch Makros. mfg.
-
Thread
Puffer mit Zeigern oder Index
Bereichsüberschreitung testen, einen wild gewordenen Pointer nicht so leicht. Und wenn der Puffer <= 256 Byte ist, kann der Index 8-bittig sein, d.h. man spart deutlich Code gegenüber Pointern. Damit sich die Indexe/Pointer nicht überholen, kann der 256 Byte Puffer nur mit max 255 Byte befüllt werden
Puffers alle Nachteile wieder wett macht. Wer sagt, dass ich einen Puffer verwende der kleiner als 256 Bytes ist? Ich brauche dort etwas mehr und dies passt alles ordentlich in den RAM (der ist ja bei weitem größer als 256 Byte!) und nein, zufälligerweise ist das nun auch leider keine Zweierpotenz mehr
-
Thread
mehrere Fragen zum Thema EEPROM im AVR
mit Integer auskommt sind das jeweils 4 Byte. Mit dem internen EEPROM von 1024 Bytes kann mann so 256 verschiedene Frequenzen mit den zugehörigen Winkeln ablegen. Das sollte wohl für'n Anfang reichen.
aber das gleiche. Da für den Drehko nicht 1024 Winkelpositionen in Frage kommen, sondern schon mit 256 eine genügend feinfühlige Abstimmung erfolgt, passt es mit 1024 Byte internem EEPROM erst recht.
-
Thread
Cache hits der CPU optimieren
Cache-Line und der Ringpuffer kann groß dimensioniert werden (8 MB L3-Cache / 32 Byte/CacheLine = 256 k Ringpuffer als Maximum). Wenn die Daten aber relativ groß sind, dann muss der Ringpuffer verkleinert werden. Ich werde es wohl einfach ausprobieren müssen :-)
Das einfachste wäre natürlich eine CPU mit mehr Cache zu nehmen. SPARC M7 hat 32 Cores und 256 Threads. Und nicht dieses lächerliche Intel-Gehampel.
-
Thread
(F)UZE-Box Zusatzmodul für AVR NET-IO
PIN 20 der Scart-Buchse sollte dann so aussehen HSYNC.png ; An den Ausgängen R G B messen wir je max. 100mV. Und dabei belasse ich es erst. Nächster Schritt ist die NTSC-Ausgabe. Für kurze Rückmeldungen wäre ich sehr dankbar!
hier noch die Einstellungen. Wie zu sehen, ist die Farbtabelle dürftig und lässt sich auchnicht auf 256 Farben erweitern;
-
Thread
Code auf dem Atmega 8535 funktioniert nicht
PRESCALER_TIMER_0 1 #define PRESCALER_TIMER_2 1 #define PWM_MAX 256 //Bis hierhin zählt die PWM #define TIMER_MAX 256 //Bis hierhin zählt der Timer #define TIMER_FREQ 31250 #define PWM_FREQ
; } tmp += addition; if (tmp >= 256) tmp-=256; OCR0 = (int) (tmp+0.5); } ISR( TIMER1_OVF_vect ){ flag = 1; } /*################################# init #################################*/ int init(){ int
-
Thread
Umgang mit float Typ in C 89C51CC03
des CC03ers abgelegt und dieser Bereich ist sehr klein (darauf läßt die Fehlermeldung schließen: "max. addr. $80" Versuche das Speichermodel auf ´Large´ umzustellen, dann werden die Variablen im externen RAM abgelegt (der natürlich vorhanden sein muß). Viele Grüße Carlos
Externen RAM hab ich leider nicht angeschlossen, ich wollte das mit dem internen schaffen. Wieso sage er max adresse 80h, das ist bei 128bytes der cc03er hat aber 256 bytes. Gerd
-
Thread
Ringing "zweiter Peak" im Buck Converter
8 Bit nicht machbar - ich sehe da eher 80mV. Korrekt, da is mir 'ne '0' verloren gegangen (20V/256), danke für den Hinweis.
sieht IMHO gut aus und auch besser als das Eval Board. Jetzt gibt's immerhin noch Luft zu den Abs-Max-Ratings.
-
Thread
[V] diverse Sachen aus Hobbykeller-Aufräumaktion
@MAX Ich habe an 150€ gedacht.
kannst du ungefähr sagen, welche daten die station hat? also leistung, max. temperatur, genauigkeit, anheizzeit? sie sieht ja schon älter aus, ist auch nicht mehr im programm vom C, ich hätte jetzt ohne die daten zu kennen 30€ gesagt. laurenz
-
Thread
Lastwiderstand Solarzelle
Bei max Sonne messen und Wiederstand eventuel aufrunden
<<ADSC); while (ADCSRA & (1<<ADSC)); adc_val = ADCW; ADCSRA=0; USI_TWI_Transmit_Byte(adc_val%256); USI_TWI_Transmit_Byte(adc_val/256); [/code] durch: [code] ADCSRA |= (1<<ADSC); while (ADCSRA & (1<<ADSC)); ADCSRA=0; USI_TWI_Transmit_Byte(ADCL); USI_TWI_Transmit_Byte(ADCH); [/code
-
Thread
Frequenz eines PWM Signals ändern??
Also musst du den Prescaler so einstellen, dass der Timer 2 mal so schnell wird, sprich nur noch 256ms braucht bis er auf den max. 255 ist. -> 2 Bereiche: 1-500Hz 501-1000Hz
setPWM(uint16_t Frequency; uint8_t Duty) { int i = (F_CPU/N/Frequency)-1; int o = i*(256-Duty)/256; if ((i != nICP1) | (o != nOCR1A)) { cli(); nICP1 = i; nOCR1A = o; sei(); } } void main(void) { TCCR1A = (1 << COM1A1) | (1 << COM1A0) | (1 << WGM11);
-
Thread
dspic30f c30 (fehlermeldung - ports) / (timer frage)
(FOSC/4 or external clock) to the 16-bit > Timer has a prescale option of 1:1, 1:8, 1:64 and 1:256 ich komm mit den ganzen teilern nicht mehr zurecht! heißt das jetzt: der takt der beim timer 1 ankommt ist 7MHz * 8 / 4 = 14MHz. weiter mit dem prescaler vom timer 1/256 = 54687,5Hz.? d.h.
14000127 Takte. Im ersten Durchlauf nach Reset 14000146 Takte. Ich hätte entweder 14000128 = 54688 * 256 oder 13999873 = 54687 * 256 + 1 erwartet. Gruß Anja
-
Thread
WS2812 Leuchtstärke
Wie verhält sich das Weißlicht wenn ich linear bestrome. Jede Farbdiode max 20mA, dann verringern gleichmäßig bis zu 0mA. Bleibt das Licht immer weiß und wie ist die Leuchtstärke im Verhältnis zum Strom. z.B. jede Leuchtdiode 7mA, ist die Leuchtstärke wie bei 21mA einer
an. Der interessiert mich, nicht der Impulsstrom in den LEDs. Bei meinen strips wurde aber bei Max PWM 3*20 mA gemessen. Das ist Weiß. wenn jetzt 3*7 mA gemessen wird, ist es noch weiß. Das ist natürlich der Durchschnittsstrom der WS2812 von 21 mA.
-
Thread
Interrupt startet nicht
obs die richtige ist. No Wgm3 Wgm2 Wgm1 Wgm0 12 1 1 0 0 CTC ICR1 Immediate MAX 04 0 1 0 0 CTC OCR1A Immediate MAX Wie gesagt, der Interrupt startet einfach nicht. Oder starten Interrupts im Debugger generell nicht, wenn die aktiv sind und ausgelöst werden??
diesen beiden Modi liegt: No Wgm3 Wgm2 Wgm1 Wgm0 12 1 1 0 0 CTC ICR1 Immediate MAX 04 0 1 0 0 CTC OCR1A Immediate MAX Ich hab jetzt den Modus 04 genommen, aber es gibt auch noch den Modus 12, wo auch CTC drinnen steht.
-
Thread
XMEGA/ AVR-EXPLAIN code examples und Diskussion
EBI.SDRAMCTRLC = EBI_WRDLY_2CLK_gc | EBI_ESRDLY_5CLK_gc | EBI_ROWCOLDLY_1CLK_gc; EBI.REFRESH = 1000; // max. 1023, max. 15.625us, 1/64MHz*1000=15.625us * 4096 = 64ms EBI.INITDLY = 6400; // max. 16383, min. 100us, 1/64MHz*6400=100us EBI.CS3.CTRLA = EBI_CS_ASPACE_8MB_gc | EBI_CS_MODE_SDRAM_gc;
kleinen sachen udn darüber gleich einen cortex einsetzen ... mitlerweile sind sogar Cortex M3 128k-256k günstiger zu haben als mega64 / mega128 .... das gibt zu denken nichts desto trotz ... viel spass mit den Xmega ... schade drum .. die sind echt gut .. kamen leider zu spät
-
Thread
Stabilitätsproblem oder Verständnisproblem bei Timer (PWM) ATmega88
down-counting (COM0B) TCCR0B = (1<<CS00) | (1<<WGM02); // WGM02 =1 -> Phase Correct PWM aber: Max !=0xff sondern Max = OCR0A // CS - Prescaler auf 1 = Clk (CS00=1) // f_cpu = 8MHz = (Clk / Prescaler) // 1 Zyklus (0x00 - 0xff) = 8MHz/256/Prescaler = 31,25kHz/Prescaler OCR0A
-> siehe ISR*/ TCCR0B = (1<<CS00) | (1<<WGM02); // WGM02 =1 -> Phase Correct PWM aber: Max !=0xff sondern Max = OCR0A // CS - Prescaler auf 1 = Clk (CS00=1) // f_cpu = 8MHz = (Clk / Prescaler) // 1 Zyklus (0x00 - 0xff) = 8MHz/256/Prescaler = 31,25kHz/Prescaler OCR0A
-
Thread
pwm multiplexen, geht das?
bei dem der Mensch aufhört zwischen den einzelnen Farbabstufungen noch Unterschiede zu erkennen bei 256 Graustufen liegt. In deinem Falle besteht 1 Pixel also aus 3 Bytes Information, jeweils 256 Helligkeiten pro Farbe -> Red,Green,Blue. Ich habe aber die Erfahrung gemacht das mit derzeitigen LEDs schon 64 Farben schwierig zu mischen sind. Angenommen du möchtest 256 Helligkeiten pro Farbe dann benötigst du schon einen Pulsestrom von 256 Bits pro Farbe. Bei RGB also 768 Bits. Das bedeutet das zur Darstellung EINES Pixels in 2^24 möglichen Farben ein Pulsmuster 768
-
Thread
MSP430 MSGCC Performance
drinn und die Multiplikation schaut jetzt so aus timer_bak+= timer_bak/2; ich komme jetzt auf MAX 10 Microsekunden.:-) Wenn mann sonst nur am X86 Programiert macht mann sich um solche "Kleinigkeiten" keinen Kopf *g* Im Worst-Case Fall stehen mir 83 Microsekunden zwischen den Interrupts zur Verfügung
Matheunterricht verpennt? X/Y = X*(1/Y). Ganzzahlig 1/X zu rechnen ist indes wenig ergiebig. Bei 256/X sieht es schon besser aus. Also X/Y = (X*(256/Y))/256. Aus dem /256 wird dann >>8, und schon ist die Division weg.
-
Thread
Datenlogger: SD oder CF?
falls dir so max 16-32MB reichen würden kannst es mit nem FRAM oder SRAM probieren... ich wär für FRAM :) die Teile haben richtig Speed, ist halt nur die Frage ob dein Controller dann auch den Speed schafft XD
SD Card Product Manual Version 2.2 (November 2004) gibt für Block Read Access Time: typical 0,5ms, max. 100ms und Block Write Access Time: typical 0,5ms, max. 250ms. Genaue "Bedingungen" wann man mit welcher Zeit zu rechnen hat, werden nicht genannt. Dies hängt wohl von der wear-leveling-Strategie des
-
Thread
Präprozessor #if Problem
hat immer den Wert 251, egal was ich für System_Clock und Baudrate einträge. #define USI_COUNTER_MAX_COUNT 16 #define USI_COUNTER_SEED_TRANSMIT (USI_COUNTER_MAX_COUNT - HALF_FRAME) #define INTERRUPT_STARTUP_DELAY (0x11 / TIMER_PRESCALER) #define TIMER0_SEED (256 - ( (SYSTEM_CLOCK
BAUDRATE) / TIMER_PRESCALER )) #if ( (( (SYSTEM_CLOCK / BAUDRATE) / TIMER_PRESCALER ) * 3/2) > (256 - INTERRUPT_STARTUP_DELAY) ) #define INITIAL_TIMER0_SEED ( 256 - (( (SYSTEM_CLOCK / BAUDRATE) / TIMER_PRESCALER ) * 1/2) ) #define USI_COUNTER_SEED_RECEIVE ( USI_COUNTER_MAX_COUNT -
-
Thread
Schätzfrage, reichen 128 Takte hierfür aus?
schreibst, müsstest du das auch mit den Overflows des 8 Bit-Timers hinbekommen können. somit ist maxCursor = #Anzahl der Events + 4 (für 4 Overflows) [c] int nextComp[8]; int portState[8]; int cursor; int maxCursor; ISR(TIMER1_COMPA_vect) { OCR1A = nextComp[cursor]; PWM_PORT = portState[cursor]; cursor++; if (cursor >= maxCursor) { cursor = 0; } } [/c] Ich mach mal ein Beispiel: Rot 10% = 102 Takte, Grün 40% = 409 Takte, Blau 80% = 819 Takte, da alle Events zu unterschiedlichen Takten statt finden muss maxCursor
-
Thread
avr-as: buffer im RAM page wrap verhindern (align)
mit avr-as *automatisch* diese Bedingung überprüfen? Mein erster Ansatz war [c] .if (buffer/256) - ((buffer+SIZE-1)/256) .error "Pagewrap in Bufferadressen" .endif [/c] Dies wird mit dem Fehler "non-constant expression in .if statement" quittiert, vermutlich weil die Festlegung der Adressen
auf Vielfache von 8 alignen; um einen Überlauf ins Hi-Byte sicher zu verhindern, müsste ich aber auf 256 alignen.
-
Thread
AVR: Video-Codec für kleines Intro oder Screensaver
wegen Pixel-Verdunklung nach einer gewissen Zeit!) Ich habe mir das so vorgestellt: Verwende ein 256x64 - Display Möchte etwa 4 Sekunden mit 15 Bildern / Sekunde anzeigen --> 60 Bilder Folglich ergeben sich für die Rohdaten (4bit/px): 256 x 64 x 1/2 x 60 = ca. 490 KB Viel zu viel! Also: Video
I-Frames, bzw. immer das letzte Bild merken, um das nächste Bild zu berechnen. Dafür braucht man aber 256 x 64 x 1/2 = 8KB Daten! Leider haben alle AVR's max. 4KB RAM, und für einen externen hab ich ebenfalls wenig Platz. Außerdem weiß ich nix über externe RAMS, weder wo's die gibt, wie die heißen, noch
-
Thread
IIR Überlauf
macht doch keinen Overflow !? Das ganze ist ne Frage der Dynamik: Dein Filter machte Verstärkung <256, also 8 Bit, bei 16Bit Rechnung solltest du höchstens mit 8 Bit Werten (<256) reingehen. Falls du mit größeren Werten reingehst kriegst Du mit Integerrechnung Overflow und die 16Bit float-Rechnung skaliert
Hallo Detlef, INT_MAX ist bei mir 2147483647 INT_MIN ist (-2147483647-1) Warum kann double nicht überlaufen? Double-Type besitz doch auch Grenzen. Gruss, Alex
-
Thread
PIC 10F200, Anfänger
W.S. schrieb im Beitrag #4456302: > und mit maximal 256 Programmschritten ist schlichtweg Assembler > angesagt. > > Bitte keine Kommentare von C-Leuten dazu - das wäre albern. Okay, dann bin ich halt albern, aber es stimmt einfach nicht das man die
Wir reden hier nicht von einem ARM mit >128 K Flash, sondern von ganz winzig kleinen µC mit maximal 256 möglichen Programmschritten und 16 Byte RAM und 3 (DREI) I/O-Pins im SOT23-5. Dafür nen C-Compiler anwerfen? Ich halte das für voll daneben, quasi wieder mal mit Kanonen auf Spatzen. W.S.
-
Thread
Quick&dirty - schnelle Problemlösungen selbst gebaut Bilder
RS232-Pegelwandler mit MAX232N.
Super. reduce to the max Cheers Detlef
-
Thread
Viel RAM am kleinen Controller
bleiben dann nur 2MB Speicher (wegen 4 Bit Datenbus, 12 Bit ungenutzt!), das gefällt mir nicht so ganz. 256 Mbit kann der ATXmega nicht ansteuern, es fehlt A12. Manuell reinmogeln über ein GPIO? Banking ist hier denkbar. Oder spuckt man da dem Refresh in die Suppe? Ja, es gibt noch PSRAM, ein DRAM mit
@ Max D. (max_d) >Bevor du ewig hinter irgendwelchen Lösungen her-rennst nimm einen RPi. Nö. Sagte ich bereits. >Wunsch-SRAM. Mit dem Pi hast du aber auch gleichzeitig ein OS das alles >für dich
-
Thread
[C] Programm hängt sich beim Aufruf von malloc() auf
Speicheroperationen zu protokollieren und/oder irgendwie *sinnvoll* (d.h. brauchbar) darzustellen? Mit max. 256 Bytes die ich mir anzeigen lassen kann komme ich hier nicht weit! R. Freitag schrieb im Beitrag #1986812: > Dein Problem scheint mir der Speicher zu sein. Wenn du keinen Code > posten kannst
Speicheroperationen zu protokollieren und/oder irgendwie sinnvoll (d.h. brauchbar) darzustellen? Mit max. 256 Bytes die ich mir anzeigen lassen kann komme ich hier nicht weit!