-
Thread
Funktion nur ausführen in Interupt
TW_ST_DATA_ACK: // 0xB8 Slave Transmitter, weitere Daten wurden angefordert if (buffer_adr == 0xFF) // zuvor keine Leseadresse angegeben! { buffer_adr=0; } TWDR = txbuffer[buffer_adr]; // Datenbyte senden buffer_adr++;
TW_ST_DATA_ACK: // 0xB8 Slave Transmitter, weitere Daten wurden angefordert if (buffer_adr == 0xFF) // zuvor keine Leseadresse angegeben! { buffer_adr=0; } TWDR = txbuffer[buffer_adr]; // Datenbyte senden buffer_adr++;
-
Thread
RS485 bus mit Fleury Uart
verlegen. 3. Empfänger und Sender sollten die gleiche Sprache sprechen (Protokoll) z.b. EmpfängerAdr,SenderAdr,LängeDaten,Daten....,CRC. 4. Nach dem Empfangen solltest du das MPCM bit wieder setzen. ms
Jetzt bin ich der Master im Bus <-------------------------------------------------- my_Dev_config.MyAdr = 0x01; // oder aus EEProm auslesen my_Dev_config.speed = 9600; NetInit(&my_Dev_config); _delay_ms(200); sei(); while (1) { _delay_ms(1000); buf[0] = WRITE_LCD_BUFFER
-
Thread
ESP32 als ISP
: "); Serial.print(Adr_MSB); Serial.print(" Adr_LSB: "); Serial.print(Adr_LSB); spi_transaction(0x40, Adr_MSB, Adr_LSB , DatenBytes[1 + multi_1 * 2]); //LowByte spi_transaction(0x4C, Adr_MSB, Adr_LSB, 0x00); //Datum schreiben delay(5); spi_transaction(0x48, Adr_MSB, Adr_LSB, DatenBytes[0 + multi_2 * 2]); //HigbyteByte spi_transaction(0x4C, Adr_MSB, Adr_LSB
-
Thread
Block RAM Lesezugriff wie beschleunigen?
Daten werden eben mit 1 Takt ( Verzögerung ausgelesen ) Beispiel: 1. steigende Flanke Adr 0 anlegen an BRAM 2. steigende Flanke ( Adr 0 wird intern ins BRAM übernommen ) Adr 1 anlegen Data Out Bram = ungültig 3. steigende Flanke ( Adr 1 wird intern ins BRAM übernommen ) Adr 2 anlegen Data Out Bram = Data von Adr 0 => wird in Register übernommen 4. steigende Flanke ( Adr 2 wird intern ins BRAM übernommen ) Adr 3 anlegen Data Out Bram = Data von
-
Thread
Fragen zu Forth
gemacht 10000 do loop duration: 1171 Millisekunden Eine leere 0do loop Schleife sieht so aus: adr:280e 281a <= index of next entry adr:2810 c822 CALL 0822 (empty) adr:2812 6d65 em adr:2814 7470 pt adr:2816 0079 ===== code ======= adr:0822 8020 >r adr:0824 8021 r> adr:0826 8004 1- adr:0828 8022 dup adr:082a 8000 0= adr:082c a822 JMPZ 0822 adr:082e 8023 drop adr:0830 803e rts d.h. 6 Befehle pro loop. Das ergibt ca. 48000
-
Thread
DCC Befehlssequenz
an den Lokdecoder geschickt werden kann. Wie schicke ich eine Befehlssequenz zum Decoder um die ADR zu ändern,ohne Quittierung. Habe jetzt mal den Versuch gemacht über die F21-F28 die ADR zu senden. Das geht, aber es nützt nur meinen Eigenbaudecoder, und das ist nicht Sinn der Sache. https://
Habe jetzt diesen Befehl zum ändern der LokAdr getestet. 0111-KVVV DDDD-DDDD k=1 Schreiben vvv=Registeradresse 1-8 000=1 DDDD-DDDD =Datenbyte=ADR b0111-1000 0000-0004 Prüfbyte 0x78 0x04 Prüfbyte Sollte
-
Thread
LM75 Auswerten und Temperatur über terminal ausgeben?
#define BAUD_REAL (F_CPU/(16*(UBRR_VAL+1))) // Reale Baudrate #define BAUD_ERROR ((BAUD_REAL*1000)/BAUD) // Fehler in Promille, 1000 = kein Fehler. #if ((BAUD_ERROR<990) || (BAUD_ERROR>1010)) #error Systematischer Fehler der Baudrate grösser 1% und damit zu hoch! #endif void USART_Init
(TWCR, TWINT); TWCR = (1<<TWINT)|(1<<TWSTO)|(1<<TWEN); } unsigned int TWI_empf(unsigned char adres) { unsigned char dat1, dat2; unsigned int daten; TWCR = (1<<TWINT)|(1<<TWSTA)|(1<<TWEN); loop_until_bit_is_set(TWCR, TWINT); TWDR = adres; TWCR = (1<<TWINT)|(1<<TWEN); loop_until_bit_is_set
-
Thread
LED und Eprom 27xx....
hex umgestellt: die erste sequenze aus dem beispiel: links binär= hexzahl rechts neben dem = 1000 0000 = 40 an adresse 0 geschrieben 1100 0000 = C0 an adr 1 geschr. 1110 0000 = E0 an adr 2 1111 0000 = F0 usw. 1111 1000 = F8 1111 1100 = FC 1111 1110 = FE 1111 1111 = FF 0111 1111 =
nach High = 5 volt gesteckt ist das adressebit nicht mehr 0 sondern 1. Das heißt dann adresse : 1000 0000 0000 0000 = adresse in hex 8000 dateninhalt meinetwegen: 0101 1010 1000 0000 0000 0001 = adresse in hex 8001 denke dran: es werden immer 4bit(nibbel) zu einer Hexzahl kodiert. 4x 4bit(nibbel
-
Thread
RAM-Bankswitching - wie am geschicktesten mit GCC auf AVR?
unsigned char b[4]; } CONVERTDW; void xmem_set(uint32_t address, uint8_t byte){ CONVERTDW adr; adr.dw=address; PORTF=(PORTF&0x0F)|(adr.b[3]<<4); PORTC=adr.b[2]; //(oder wo auch immer A8-15 liegen) uint8_t *zeiger = (uint8_t *) adr.b[0]; *zeiger = byte; } [/c] Das dürfte nochmal
korrigiert. So sollte es besser sein: [c] void xmem_set(uint32_t address, uint8_t byte){ CONVERTDW adr; adr.dw=address; PORTF=(PORTF&0x0F)|(adr.b[2]<<4); PORTC=adr.b[1]; //(oder wo auch immer A8-15 liegen) uint8_t *zeiger = (uint8_t *) adr.b[0]; *zeiger = byte; } [/c] > Ich bin übrigens
-
Thread
(vhdl) mod 12 rechnen
(1 downto 0); when "0101" => test := "10" & adr(1 downto 0); when "0110" => test := "00" & adr(1 downto 0); when "0111" => test := "01" & adr(1 downto 0); when "1000" => test := "10" & adr(1 downto 0); when "1001" => test := "00" & adr(1 downto 0); when "1010" => test := "01" & adr(1 downto 0); when "1011" => test := "10" & adr(1 downto 0); when "1100" => test := "00" & adr(1 downto 0); when "1101" => test := "01" & adr(1 downto 0); when "1110" => test := "10" & adr
-
Thread
ADC Board für Trenz Electronic FPGA Modul
wofür hat man denn Semesterferien :-) @Achim: Die 1V für den -VIN vom Buffer werde ich mit einem ADR510 herstellen. Also vom 3,3V LDO der den Analogteil speist über einen Widerstand in den ADR510.
Im Studium wurde die Batterie behandelt mit Innenwiderstand. Das ist also das was ich kenne. Der ADR510 ist ja auch eigentlich keine Quelle sondern die Kombination aus 3,3V Quelle, Vorwiderstand und ADR510 ist zusammen eine Quelle (so denke ich mir das, mag jeder anders sehen). Aber klar Netzteile
-
Thread
Tips für Einstieg CPLD
------------------------------------------------------ entity AdressCounter is port( ClkAdr : in std_logic; AdrCnt : out std_logic_vector(16 downto 0) ); end AdressCounter; architecture Behavioral of AdressCounter is signal TmpCnt: std_logic_vector(16 downto 0); begin -- RAM-Adresse incrementieren RamAdrIncr: process(ClkAdr) begin if falling_edge(ClkAdr) then if TmpCnt < 40000 then TmpCnt <= TmpCnt + '1'; end if; end if; end process RamAdrIncr; AdrCnt <= TmpCnt
-
Thread
Daewoo-Fernbedienungscode / Interrupt lässt sich nicht ausschalten
/ Diese Berechnung geht nur bis 6,5535 MHz #define T10ms (F_CPU/100) #define T8msh (((F_CPU/1000)*8)+((F_CPU/10000)*Tolleranz)) #define T8msl (((F_CPU/1000)*8)-((F_CPU/10000)*Tolleranz)) #define T4msh (((F_CPU/1000)*4)+((F_CPU/10000)*Tolleranz)) #define T4msl (((F_CPU/1000)*4)-((F_CPU/
VergZeit > T045msl) & (VergZeit < T045msh)) // das erkannte Bit ist eine "0" { Adr_OPCode = (Adr_OPCode >> 1); } else if ((VergZeit > T145msl) & (VergZeit < T145msh)) // das erkannte Bit ist eine "1" { Adr_OPCode = (Adr_OPCode >> 1) | (1 << 15)
-
Thread
EEPROM avr-libc Read/Write-Funktionen Warnung
my_ext_flash_adr); } [/c] Capice?
*pReturnAddress = eeprom_read_dword(uC_FlashReadFrom); return 1; } uint32_t flash_adr_nv EEMEM; uint32_t flash_adr; int main(void) { volatile uint8_t i; i=FLASH_LoadAddressPointer(&flash_adr, &flash_adr_nv); } [/c] Ich wiederhole mich wiederholt, denn das da
-
Thread
REF50xx Langzeitdrift PCN?
Ursprüngliche" Spezifikation aus dem Datenblatt SBOS410E Juni 2010: Langzeitdrift [pre] MSOP-8 5 ppm/1000 h zw. der 1000. und 2000. Stunden SO-8 10 ppm/1000 h "" "" [/pre] Aktuelles Datenblatt SBOS410F Dezember 2013 [pre] MSOP-8 45 ppm/1000 h zw. der 1000. und 2000. Stunden SO-8 50 ppm/1000
kHr and 150ppm/kHr or 300 to 750 times worse than claimed." Die unbestritten beste Referenz (LTZ1000) hat ca. 2uV/month bei 7V initiale Drift. Arc Net schrieb im Beitrag #3639409: > Möglich, aber warum sinkt die Ausgangsspannung in den ersten 1000 h im > neuen Datenblatt, wohingehen sie bei anderen
-
Thread
I2C mit Bascom Fehlersuche bei LTC2945
also zwischen den I2C-Kommandos waitms 1000 ist nicht so ideal i2cstart waitms 1000 I2cwbyte Basewrite waitms 1000 I2cwbyte &H00 etc. ... das würde mich wundern, wenn der Busteilnehmer da kein Timeout macht.
Wie sind die Pins ADR1..0 angeschlossen ?
-
Thread
Atmega8 GrundlagenQuellcode in ASM
EEPROM_write ;** spring zu zurück lds r18,eep_adrh out EEARH, r18 ;highbyte der adr lds r17,eep_adrl out EEARL, r17 ;lowbyte der adr out EEDR,r16 ;zu speichernder wert sbi EECR,EEMWE ;sperrt eeprom master write enable sbi EECR,EEWE ;setze
EEPROM_write ;** spring zu zurück lds r18,eep_adrh out EEARH, r18 ;highbyte der adr lds r17,eep_adrl out EEARL, r17 ;lowbyte der adr out EEDR,r16 ;zu speichernder wert sbi EECR,EEMWE ;sperrt eeprom master write enable sbi EECR,EEWE ;setze
-
Thread
ESP32 HTTP Client: Fehlercode -1 nach einiger Zeit?
= sizeof(*data); /* EE durcchsuchen nach gültigem valid */ int16_t marke, id; while (EE_AdrPtr < (EESIZE - len)) { myMem.get(EE_AdrPtr + validOffs, marke); // Valid Marke auslesen als int16_t if (marke == DVALID) { myMem.get(EE_AdrPtr + blknrOffs, id); // Block Nummer auslesen als int16_t sprintf(buf, "Adresse: %04X = %u ID = %u", EE_AdrPtr, marke, id); debug(buf); /* Werte müsen gecasted werden! */ if ((uint16_t)id >= maxn) { adr_found = EE_AdrPtr; maxn = (uint16_t)id; debug("*");
-
Thread
Dali - Treppenhausbeleuchtung
Shortadressen Format: 0AAAAAAS (AAAAAA = 0 - 63, S = 0/1) Beispiel! gewünschte Adresse: 2 Adr = 2; Adr = Adr << 1; Adr = Adr & 0b01111110; Adr = Adr | 0b00000001; Snd_Dal(0xA3,Adr,SP_COM); DELAY_ms(20) //DTR direkt mit Adresse beschreiben Snd_Dal(0,128,BR_ADR); //Inhalt DTR als Shortadresse DELAY_ms(20) // Snd_Dal(0,128,BR_ADR); DELAY_ms(20)
-
Thread
Referenz bis 16Bit in THT Bauform
entfallen). Schau z.B. in's Datenblatt von TI REF102C MAX 6325 MAX 6350 LT1021-Familie ADR587 Meine Empfehlung: LM399 Die kannst Du mit Billigbauteilen beschalten und die verfügt über eine eingebaute Heizung ebenso wie die von Falk B. empfohlene LTZ1000, deren Leistung Du ohne teure
und reichen für 16 b absolut aus. Wenn die Langzeitstabilität noch besser werden muss, kommt man um ADR1399 und ADR1000 nicht mehr herum. Die erfordern dann aber auch eine etwas aufwändigere Schaltung und wären für 16 b wohl verschwendet. Ich kann dir das Buch "Rauschen in der Sensorik" von Rolf Heilmann
-
Thread
Suche Testschaltung für LTZ1000
Ernst gemeinte Frage: Gibt es von der Stange noch was Besseres als eine > richtig eingesetzte LTZ1000ACH? Bei EEVblog wird die ADR1000 diskutiert, hat aber niedrigere Nennspannung, also kein 1:1 Austausch, hier ein noch als confidencial gekennzeichnetes Datenblatt: https://www.eevblog.com/forum/metrology/adr1000-datasheet/?action=dlattach;attach=1242516 Von der Zenerstange bleibt aber wohl nur selektieren auf geringste Drift, Temperaturabhängigkeit, Hysterese.
-
Thread
Elektronik Lager und die vielen Kisten (Verwaltung)
) LEFT JOIN `case` g ON (g.ID = l.Case_ID) LEFT JOIN kiste k ON (k.ID = l.Kiste_ID) LEFT JOIN adr ON (adr.ID = a.Adr_ID) LEFT JOIN tree_typ t ON (t.ID = b.tree_typ_ID) UNION SELECT '-1', COUNT(b.ID), ' _SUMME_', '', '', '', '', '', SUM(Menge), '', '', '', SUM(a.EPreis * l.Menge) FROM bauteil
0)) LEFT JOIN `case` g ON (g.ID = l.Case_ID) LEFT JOIN kiste k ON (k.ID = l.Kiste_ID) LEFT JOIN adr ON (adr.ID = a.Adr_ID) WHERE b.Bezeichnung LIKE 'GS 8%' OR l.Bezeichnung LIKE 'GS 8%' OR l.SMD_Text LIKE 'GS 8%' OR l.LagerNr LIKE 'GS 8%' OR l.Barcode LIKE 'GS 8%' OR a.BestellNr LIKE 'GS 8%'
-
Thread
Ports des PCF8574
while(1) { // Hauptschleife i2c_start(adr1_w); // Starte Lesezugriff i2c_write(0xe0); // Schreibe I2C, LED 4 an _delay_ms(1000); // 1000ms warten i2c_write(0xff); // Alle Pins des PCF auf 1 dadurch LED aus _delay_ms(1000); // 1000ms warten } i2c_stop(); return(0); } [/c] Es wurde mit AVR Studio 6 erstellt und an einem Modul mit PCF8574 getestet. Dabei ist die Belegung: P0 bis P3 - Taster
-
Thread
Speicher Voll Attiny2313
PWM_Raw1 = i2c_buffer[1]; PWM_Raw2 = i2c_buffer[2]; // Normieren // 0 ~ 1000 // 127 ~ 1500 // 255 ~ 2000 PWM_Norm1 = (PWM_Raw1 * 4) + 1000; PWM_Norm2 = (PWM_Raw2 * 4) + 1000; // Ausgang setzen OCR1A = PWM_Norm1; OCR1B = PWM_Norm2;
USI_SLAVE_SEND_DATA: // No buffer position given, set buffer address to 0 if (buffer_adr == 0xFF) { buffer_adr = 0; } // Send data byte USIDR = i2c_buffer[buffer_adr]; // Increment buffer address for next byte
-
Thread
seriell FTDI TTL UART SUART ich blicke nicht mehr Durch!
Kommandorahmen Antwort 0 NO OPERATION keine Aktion (NOP) 0 - Adr. - x - XOR 255 - Adr. - x - XOR 1 SETUP Initialisierung 1 - Adr. - x - XOR 254 - Adr. - Info - XOR 2 GET PORT Schaltzustände abfragen 2 - Adr. - x - XOR 253 - Adr. - Daten - XOR 3 SET PORT Relais schalten 3 - Adr. - Daten - XOR 252 - Adr. - x - XOR 4 GET OPTION Optionen abfragen 4 - Adr. - x - XOR 251 - Adr. - Opt. - XOR 5
-
Thread
Fehlerhafte Werte bei AD-Wandlung PIC18F2420
sicher das das geht? Ein kurzer Ausschnitt aus dem Header eines PIC16F1825: [c] // Register: ADRES extern volatile unsigned short ADRES @ 0x09B; #ifndef _LIB_BUILD asm("ADRES equ 09Bh"); #endif // Register: ADRESL extern volatile unsigned char ADRESL
Es gibt da schon einen kleinen Unterschied: der Datentyp für ADRES ist unsigned short, was ein 16 Bit unsigned ist.
-
Thread
Problem mit myTWI Echtzeituhr.
uint8_t twiAdr) { // Clock TWBR=((F_CPU/TWI_CLOCK)-16)*2; // TWI-Status-Register (Vorteiler) TWSR=0; // Bus-Addr TWAR=twiAdr; // Enable TWCR=_TWINT|_TWEN; } //-------------------
,ComperatorMode,ActiveLow,FaultQueue=0 lm75SetRegister(twiAdr,REG_LM75_CONFIG,0,0); // keine Hysterese lm75SetRegister(twiAdr,REG_LM75_HYST,0,0); // Comperator-PIN schaltet z.B. bei = 0x1C = 28 C lm75SetRegister(twiAdr,REG_LM75_SET,compTemp,compTempHalf
-
Thread
Geplante Obsoleszenz durch heisse Widerstände?
dreimal darfst Du raten wie alt die Messgeräte in denen diese verbaut sind damit werden. Bei den neuen ADR1399 sollen es sogar über 90° sein.
darfst Du raten > wie alt die Messgeräte in denen diese verbaut sind damit werden. > Bei den neuen ADR1399 sollen es sogar über 90° sein. Dafür ist der Rest des Meßgerätes deutlich kühler. Das LM399/ADR1399 so warm intern sind: Es liegt vornehmlich daran, das man eine Differenz benötigt zur maximalen
-
Thread
ADC121C021 antwortet nicht (I2C)
LED::Red_ON(); } else { LED::Green_ON(); } xpcc::delay_ms(1000); LED::Green_OFF(); LED::Red_OFF(); xpcc::delay_ms(1000); I2C2BUS::MAG::LSM303DLHC::checkID(); xpcc::delay_ms(1000); } [/c] Kann mir jemand erklären ob das Problem
schrieb im Beitrag #3156705: > Ich nutze 0xA0 als Device Adresse für den ADC, da die beiden PINS: ADR0 > > und ADR1 floaten. 1010000 = 0101 0000 = 0x50 Die Adresse sind nur 7 Bit.
-
Thread
Problem mit SRAM Controller Spartan 3 Starter Board Digilent
FPGA_SRAM_RD = '1' then SRAM_Adr <= FPGA_SRAM_Adr ; -- FPGA Adr übernehmen SRAM_Data_in <= SRAM_Data_in ; SRAM_WE <= '0' ; -- WE inaktiv elsif FPGA_SRAM_WR = '1' then -- FPGA Adr übernehmen SRAM_Adr <= FPGA_SRAM_Adr ; SRAM_Data_in <= FPGA_SRAM_Data_in ; -- Daten FPGA einlesen SRAM_WE <= '1' ; -- WE aktiv !
-
Thread
DS1302 - Sekunden / Minuten von 0 - 90!
= PC1 .def temp1 = r16 .def temp2 = r17 .def temp3 = r18 .def dat0 = r19 .def adr0 = r20 .org 0x0000 rjmp main .org OVF0addr rjmp Overflow0 main: ldi r16, LOW(RAMEND) out SPL, r16 ldi r16, HIGH(RAMEND) out SPH, r16 ldi r16, (1<<CS02) out TCCR0
PORTC, temp1 ldi adr0, 0x8E clr dat0 rcall RtcWriteCommand ldi adr0, 0x90 ldi dat0, 0xA0 rcall RtcWriteCommand ldi adr0, 0x80 ldi dat0, 45 rcall RtcWriteCommand ldi adr0, 0x8E ldi dat0,
-
Thread
PiPico2 Frequenzzähler
EXECCTRL_WRAP_BOTTOM_Pos) | (FIN1_PIN << PIO0_SM0_EXECCTRL_JMP_PIN_Pos); // Pin f�r JMP // ADR0 PIO0->INSTR_MEM0 = 0x0241; // jmp x-- -> ADR1, 2 x delay // ADR1 PIO0->INSTR_MEM1 = 0x00c0; // jmp FIN1_PIN -> ADR0 warten bis '0' // input-pin 1 -> 0 PIO0->INSTR_MEM2 = 0x4020; // mov x->isr, x-Wert ausgeben // ADR3 PIO0->INSTR_MEM3 = 0x0044; // jmp x-- -> ADR4 // ADR4 PIO0->INSTR_MEM4 = 0x00c1; // jmp FIN1_PIN 0-> 1 dann ADR0 PIO0->INSTR_MEM5 = 0x0103; // jmp ADR3, 1 x delay
-
Thread
8085 Embedded Project
vorgehen: erst RAM-Adresse finden. Programm schreiben: lange Pause (z.B. 1 Sekunde) Schreiben auf Adr 0000h lange Pause 2 x Schreiben auf Adr 0800h mit einer kurzen Pause (z.B. 100 ms) dazwischen lange Pause 3 x Schreiben auf Adr 1000h mit zwei kurzen Pausen (z.B. 100 ms) dazwischen lange
also adresse 1000h-17FFh für das 2 K RAM.
-
Thread
Variablen eindeutig benennen damit der Typ eindeutig ist
genauer: das #define) taucht als Anzahl in > dem Array aus Strukturen auf, das er anlegt. wofür c_RcvAdr, wenn es nur offsetof RcvAdr ist? In den meisten fällen schreibt man doch eh X.RcvAdr. Und wenn man den Index braucht ... doppelt gemoppelt failed schneller.
A. S. schrieb im Beitrag #5686588: > A. S. schrieb: >> wofür c_RcvAdr, wenn es nur offsetof RcvAdr ist? In den meisten fällen >> schreibt man doch eh X.RcvAdr. Und wenn man den Index braucht ... >> doppelt gemoppelt failed schneller. > > Deshalb fragte ich fairer
-
Thread
Anbindung SHT71 an STM32F4Discovery
GPIOB, GPIO_Pin_7); //SDA 0 Delay(5000L); GPIO_ResetBits(GPIOB, GPIO_Pin_6); //SCL 0 Delay(1000L); GPIO_SetBits(GPIOB, GPIO_Pin_6); //SCL 1 Delay(500L); GPIO_SetBits(GPIOB, GPIO_Pin_7); //SDA 1 Delay(500L); GPIO_ResetBits(GPIOB, GPIO_Pin_6); //SCL 0 Delay(1000L); GPIO_ResetBits
GPIOB, GPIO_Pin_6); Delay(55L); //SDA 1 if Temperature or Humidity measuring, 0 else if (adr == HUM_ADRESS) { GPIO_SetBits(GPIOB, GPIO_Pin_7); //SDA 1 } else if (adr == TMP_ADRESS) { GPIO_SetBits(GPIOB, GPIO_Pin_7); //SDA 1 } else { GPIO_ResetBits(GPIOB
-
Thread
Spannungsreferenz 15V
LTZ1000(a) kaufen?
> Wo kann ich diese LTZ1000(a) kaufen? Digi-Key oder direkt bei Linear http://www.linear.com/purchase/LTZ1000 (nicht beim Preis erschrecken, die VREs fangen beim doppelten an...)
-
Thread
Wechselrichter Hoymiles HM-xxxx 2,4 GhZ Nordic Protokoll?
etwa so: static uint8_t cid = 0; int32_t HM_Packets::GetTimePacket(uint8_t *buf, uint32_t wrAdr, uint32_t dtuAdr) { prepareBuffer(buf); buf[0] = 0x15; copyToBufferBE(&buf[1], wrAdr); copyToBufferBE(&buf[5], dtuAdr); buf[9] = 0x80; buf[10] = cid++; // statt 0x0B
2 + 2 + 2 + 2 + 1 CMD >WR ADR < >DTU ADR < >299 W< > 86 ?< >2396?< >4997?< >2469?< >696?< >511?< CRC8 [/code] > Ich würde den Knoten im Kopf gerne lösen. Ich hoffe das o.a. ist jetzt nicht komplett verwirrend sondern
-
Thread
EleLa - Elektronik Lagerverwaltung V3.1
connected. 22:37:00 ===================== 22:37:00 Start check integrity 22:37:00 CheckIntegrity: adr.ID <> bauteiladr.adr_ID 22:37:00 CheckIntegrity: adr.ID <> bauteillager.adr_ID 22:37:00 CheckIntegrity: adr.ID <> bestellen.Lief1_adr_ID 22:37:00 CheckIntegrity: adr.ID <> bestellen.Lief2_adr_ID 22:37:00 CheckIntegrity: adr.ID <> projekt.adr_ID 22:37:00 CheckIntegrity: adr.ID <> projekteinzel.adr_ID 22:37:00 CheckIntegrity: adr.ID <> historie.adr_ID 22:37:00 CheckIntegrity: adr.ID <> kosten.adr_ID 22:37:00 CheckIntegrity
-
Thread
Wie reserviere ich einen Speicherbereich in C?
die Frage nicht schon beantwortet wurde. Es macht keinen guten Eindruck, wenn man eine Frage zum 1000-sten mal stellt.
***** void erase_page(unsigned long int addr) { if((addr & 0xF0000) == 0x80000) { FEE1ADR = addr; // set data address FEE1CON = 0x05; // erase page command while (!(FEE1STA & 0x03)){}; } if((addr & 0xF0000) == 0x90000) { FEE0ADR = addr; // set
-
Thread
DDR-RAM mit BRAM emulieren
Block-RAM. Soweit ich mich mit dem Speicher auskenne, müsste man die DQS decodieren und eine der ADR-Leitungen um die ADR zu generieren. (habe das nie richtig kapiert, wie das geht). Ausserdem muss ich eine Art done für das Eintrainieren der Leitungen liefern. Immerhin brauche ich keinen refresh
> (Artix7) mehr BRAM. Mehr, als ein DDR-Baustein? Die haben GB. FPGAs kaum einige MB. Faktor 1000 übersehen?
-
Thread
[ATTiny24] Bitte um Blick auf Code
5 #define TACHO_MOTOR_B0 2 #define TACHO_MOTOR_B1 3 //Additional constants #define TIMEBASE 1000 //1/1000 s or 1 ms is the timebase for all calculations #include <stdlib.h> #include <avr/io.h> #include <avr/interrupt.h> #include <avr/pgmspace.h> #include <util/delay.h> //###
> speed_A = (tacho_A - prev_tachoA) * 1000 / delta_time; > speed_B = (tacho_B - prev_tachoB) * 1000 / delta_time; Ebenso den Zugriff auf die Variablen /tacho_A/ und /tacho_B/
-
Thread
Tipps gesuchtt für Voltmeter ICL7135
schaden tut es nicht. Nur einen 100nF von +5V nach GND ? oder auch beim -5V Im Datenblatt von ADR510 ist der Kondi am Ausgang "optional"..
klar schaden tut es nicht. Datenblatt: http://www.analog.com/static/imported-files/data_sheets/ADR510.pdf Seite 1 Kondensator Optional.
-
Thread
Wärmebildkamera mit dem MLX90640 und Arduino Due
zaehlerzuruecksetzen) { i2c_eeprom_updateUIntArray(I2C_EEPROM_ADRESSE, EEPROM_SPEICHER_ADR, Zaehler, sizeof(Zaehler) / sizeof(Zaehler[0])); // Zaehler zuruecksetzen } else { i2c_eeprom_readUIntArray(I2C_EEPROM_ADRESSE, EEPROM_SPEICHER_ADR, Zaehler, sizeof(Zaehler
); } i2c_eeprom_updateUIntArray(I2C_EEPROM_ADRESSE, EEPROM_SPEICHER_ADR, Zaehler, sizeof(Zaehler) / sizeof(Zaehler[0])); i2c_eeprom_readUIntArray(I2C_EEPROM_ADRESSE, EEPROM_SPEICHER_ADR, Zaehler, sizeof(Zaehler) / sizeof(Zaehler[0])); Serial.println
-
Thread
verbesserter Nachfolger der LTZ1000 von ADI heraus gebracht
ADI hat jetzt den Nachfolger der LTZ1000 heraus gebracht. Nennt sich jetzt ADR1001. Die wichtigsten Features: - "Precision" 5 V output ±0.25% - 5 V output noise (0.1 Hz to 10 Hz): 0.13 ppm p-p - 6ppm Langzeitdrift (5V) - endlich mit
einen Distributor fällt da nicht positiv aus: https://www.mouser.de/ProductDetail/Analog-Devices/ADR1000AHZ
-
Thread
Arduino Wire
} if(laserstatus == true && led_Blau==true) { digitalWrite(ledBlau,LOW); delay(1000); led_Blau=false; delay(1000); led_Rot=false; delay(1000); laserstatus=false; } else { Serial.print("LASER: "); Serial.println(laserstatus); Serial.print
machen die > Auswertungen dieser Zeichen(ketten) sehr wohl sinn ;) [c] Wire.beginTransmission(slaveAdr); Wire << "Hallo Welt!" << endl; byte error = Wire.endTransmission(); [/c] Wenn man muss, geht vieles. Dieses allerdings nicht: [c] Wire.beginTransmission(slaveAdr); Wire.write('10')