-
Thread
AT91SAM7S-Problem: SPI-Transfer im Interrupt starten.
=1, NCPHA=0) AT91C_BASE_SPI->SPI_CR = AT91C_SPI_SWRST; // reset SPI AT91C_BASE_SPI->SPI_CR = AT91C_SPI_SPIEN; // enable SPI AT91C_BASE_SPI->SPI_MR = AT91C_SPI_MSTR | AT91C_SPI_PS_FIXED | (AT91C_SPI_PCS & (14 << 16)); AT91C_BASE_SPI->SPI_CSR[0] = AT91C_SPI_CPOL | AT91C_SPI_CSAAT | AT91C_SPI_BITS_8 | (AT91C_SPI_SCBR & (255 << 8)); AT91C_BASE_AIC->AIC_IECR = (1 << AT91C_ID_PIOA); // enable PIO interrupt AT91C_BASE_PIOA
-
Thread
Lan-Kabel steuern -> bis 1000 MHZ!
So nun komm ich zur nächsten Frage: Welchen Prozessor könnte ich hier nehmen?? Atmel hat ja nur 16 Mhz - wobei eben nur jedes 62.5 Signal ankommt (1000 Mhz : 16 Mhz = 62,5). Gruß Chris PS: Der Spannungseingang vom Prozessor usw. wird über Wiederstände (wie immer) heruntergeschraubt :)
oder wird sogar kaputt gehen. Ausserdem kann auch eine GbE-Karte idR auf 100MBit oder 10MBit (10baseT) runterschalten, was sie auch tun wird wenn die Gegenstelle nur 100 oder 10MBit kann - unabhaengig davon was fuer Kabel dazwischen ist.
-
Thread
Linux und serielle Schnittstelle
Hallo, ich möchte gerne einen Atmega8 Platine mit 16 MHz Quarz mit der NSLU2(Unslung) NAS/Linux über die "serielle" Schnittstelle verbinden. bisher geht : (bin root) Atmega8 (16 MHz Quarz) mit PC verbunden. Textausgabe auf Hyperterminal +/Pegelwandler
"Programm" : setserial die Eingabe von : setserial /dev/ttyS0 -a brachte folgendes u.a. baud_base 921600 divisor 0 die Eingabe von : setserial /dev/ttyS0 divisor 96 brachte folgendes u.a. baud_base 921600 divisor 96 wobei die Ausgabe am Hyperterminal wiederum nur mit 115000 lief,statt
-
Thread
STM32F103ZE UART geht nicht
define USART2_TX_BUFFER_SIZE 20 uint8_t usart2_tx_buffer[USART2_TX_BUFFER_SIZE]; //#define USART2_DR_BASE_ADDRESS 0x40013804 //Fall du ein USART1 Benutzen willst #define USART2_DR_BASE_ADDRESS 0x40004404 #define USART2_TX_PIN GPIO_Pin_2 #define USART2_RX_PIN GPIO_Pin_3 #define USART2
default reset values. */ DMA_DeInit(USART2_TX_DMA_CHANNEL); DMA_InitStructure.DMA_PeripheralBaseAddr = USART2_DR_BASE_ADDRESS; DMA_InitStructure.DMA_MemoryBaseAddr = (uint32_t)usart2_tx_buffer; DMA_InitStructure.DMA_DIR = DMA_DIR_PeripheralDST; DMA_InitStructure.DMA_BufferSize = USART2
-
Thread
externer NOR Flash mit ARM9
*/ /* PLL-A aktivieren (18.432 MHz * 217 / 20 = 199.987 MHz) */ AT91C_BASE_PMC->PMC_PLLAR = (0x14 << 0) | (0x3E << 8) | (0 << 14) | (0x0D8 << 16) | (1 << 29); while (!(AT91C_BASE_PMC->PMC_SR & AT91C_PMC_LOCKA)); /*-------------------------------------------------------------------------*/ /* PLL-B aktivieren (18.432 MHz * 138 / 53 = 47.993 MHz) */ AT91C_BASE_PMC->PMC_PLLBR = (0x35 << 0) | (0x3E << 8) | (0 << 14) | (0x089 << 16) | (0 << 28); while (!(AT91C_BASE_PMC->PMC_SR & AT91C_PMC_LOCKB)); /*---------------------------------------------------------
-
Thread
Analogwert festnageln
habs überlesen). Hier sollte man zumindest darauf achten, dass es eine einigermaßen gute ist (z.B. BAS70). Oder du nimmst gleich einen NPN als Diode, der ist nochmal um größenordungen besser. "A" --o-- ---- "K" | \ ^ | ------- |_____| Stichwort "Folien-C" ist
generell besser. Es gibt auch Dioden, die speziell für gutes Sperrverhalten optimiert wurden. Die BAS716 hat bspw. bei 75V nur typ. 0,2nA (max. 5nA), das ist noch ein gutes Stück besser als die BC-Diode des BC547. Im Vergleich zur 1N4148 hat die BAS716 aber eine sehr viel höhere Sperrerholzeit (max
-
Thread
LED Raumbeleuchtung flimmerfrei dimmen
wäre z. B. dieser Typ interessant: https://v-tac.eu/led-lights/lights1/led-spotlights-gu5-3-mr16/led-spotlight-7w-mr16-12v-plastic-warm-white-detail.html Dieser Lampentyp soll angeblich nicht dimmbar sein, jedoch konnte ich eine solche Lampe sehr schön dimmen mit DC-Spannungen zwischen 8 und
@ Base64 Urandom: > Glück gehabt. Meinst Du, dass bei der nächsten Bestellung dieses Lampentyps plötzlich keine Dimmbarkeit mehr vorhanden sein könnte? > Kann auch sein das die Lampe dauernd ein und
-
Thread
clock configuration
RCC_OSCILLATORTYPE_HSI; RCC_OscInitStruct.HSIState = RCC_HSI_ON; RCC_OscInitStruct.HSICalibrationValue = 16; RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSI; RCC_OscInitStruct.PLL.PLLMUL = RCC_PLL_MUL6; RCC_OscInitStruct.PLL.PREDIV = RCC_PREDIV_DIV1
RCC_HSE_ON; RCC_OscInitStruct.HSIState = RCC_HSI_ON; RCC_OscInitStruct.HSICalibrationValue = 16; RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE; RCC_OscInitStruct.PLL.PLLMUL = RCC_PLL_MUL6; RCC_OscInitStruct.PLL.PREDIV = RCC_PREDIV_DIV1
-
Thread
Stm32 Timer mit Interrupt ?
RCC_APB1Periph_TIM2, ENABLE); /* Configure Timer which is every 5 ms active*/ TIM_DeInit(TIM2); TIM_TimeBaseStructInit(&TIM_TimeBaseStructure); /* Time base configuration */ TIM_TimeBaseStructure.TIM_Prescaler = 16000 - 1; // 16 MHz / 16000 = 1 KHz TIM_TimeBaseStructure.TIM_Period = 1000 - 1; // 1 KHz / 1000 = 1 Hz; TIM_TimeBaseStructure.TIM_ClockDivision = 0; TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; TIM_TimeBaseInit(TIM2, &TIM_TimeBaseStructure); /* Enable TIM2 Update Interrupt */ TIM_ITConfig
-
Thread
Wer hat 5 min zeit mein server zu testen?
them. Users can browse to the device and change the status of the lights. The LED's on the base board will match the ones on the web page. This program is adapted from \Samples\TCPIP\ssi.c. Jumper settings (Digital I/O board) ----------------------------------- JP7 2-4, 3
SSPEC_RESOURCE_XMEMFILE("browseled.c", browseled_c), SSPEC_RESOURCE_ROOTVAR("led1", led1, PTR16, "%s"), SSPEC_RESOURCE_ROOTVAR("led2", led2, PTR16, "%s"), SSPEC_RESOURCE_ROOTVAR("led3", led3, PTR16, "%s"), SSPEC_RESOURCE_ROOTVAR("led4", led4, PTR16, "%s"), SSPEC_RESOURCE_FUNCTION
-
Thread
EMS > ESP8266-12 WLAN-Modul
? c1:c1 [ 1457.225545 280.878 16.384 080 16] 08 00 18 1b 00 00 00 00 00 00 00 2f 08 00 ? 7f:7f [ 1457.642332 121.446 31.744 080 31] 08 00 19 00 00 46 01 aa 01 87 ff ff ff 64 01 21 a6 04 2f 64 00 00 00 04 2d 5c 01 21 50 ? 78
? 6f:6f [ 1460.321958 280.254 16.384 080 16] 08 00 18 1b 00 00 00 00 00 00 00 2f 08 00 ? 7f:7f [ 1464.037883 57.028 33.792 080 33] 08 00 18 00 35 01 a8 64 00 01 01 30 00 83 00 7d 00 80 00 00 00 ff 30 43 00 00 ff 00 10 83 00
-
Thread
PIC16F627A: 8-Bit-Timer und 10-Bit-PWM, wie macht er das?
>Seine PWM aber läuft mit 10 Bit. Timer1 hat ja auch mehr als 16Bit.
>Timer1 hat ja auch mehr als 16Bit. Autsch;) Mehr als 8Bit.
-
Thread
Integer zu String, aber (Speicher-)effizient.
Ginge das abzählen so ? [c] #define BASE 10 uint?_t length = 0; uint?_t vgl = 0; while ( vgl < value) // { length ++; vgl *= BASE; vgl += BASE - 1; } /* Die obige Schleife sollte doch das hier machen: if (x>9) length
man sich beim EINMALIGEN globalen reservieren ja mehr mühe geben, und z.b. je nachdem ob der integer 16, 32 oder 64 bit hat, dort einmalig die maximale länger ermitteln
-
Thread
AVR: avr-libc, eeprom Zugriffsgeschwindigkeit
rcall eeprom_mapen ld ret_lo, Z clr ret_hi ret ENTRY eeprom_mapen ; Load base address of NVM. ldi ZL, lo8(NVM_BASE) ldi ZH, hi8(NVM_BASE) ; Wait until NVM is not busy. 1: ldd r19, Z + NVM_STATUS - NVM_BASE sbrc r19, NVM_NVMBUSY_bp rjmp 1b ; Enable EEPROM mapping into data space. ldd r19, Z + NVM_CTRLB - NVM_BASE ori r19, NVM_EEMAPEN_bm std Z + NVM_CTRLB - NVM_BASE, r19 ; Load Z with correct EEPROM address to read from data space. movw ZL, addr_lo subi ZL, lo8(-MAPPED_EEPROM_START) sbci
-
Thread
Usart DMA auf ARM7 funktioniert nicht.
Vielleicht solltest Du die Dokumentation doch lesen! /* Configure PIO for UART */ AT91C_BASE_PIOA->PIO_PDR = (UART0_RXD | UART0_TXD); AT91C_BASE_PIOA->PIO_ASR = (UART0_RXD | UART0_TXD); /* Enable UART Unit */ AT91C_BASE_PMC->PMC_PCER = (1 << AT91C_ID_US0); Dann kann man die Pufferadressen füllen AT91C_BASE_PDC_US0->PDC_TPR = (unsigned int) tmp_char_p; AT91C_BASE_PDC_US0->PDC_TCR = strlen((const char *) tmp_char_p); und mit /* start the PDC transfer */ AT91C_BASE_PDC_US0->PDC_PTCR = AT91C_PDC_TXTEN
-
Thread
Code für Servomotor
Der Quartz für den PIC hat die Frequenz von 7,3728 MHz. PTCONbits.PTEN = 1; //Time Base Count Enable PTCONbits.PTCKPS = 2; //Prescaler auf 1:16 PTCONbits.PTMOD = 0; //Free Running Mode (PWM) PTPER = 9215; //20ms Periode PTMRbits.PTDIR = 0;
FLTA as input PWMCON1bits.PMOD1 = 1; PWMCON1bits.PEN1H = 1; PTCONbits.PTMOD = 1; //Time Base Mode PTCONbits.PTCKPS = 2; //Prescaler auf 1:16 PTPER = 18880; //Computer Period for desired frequency PDC1 = 1776; //1,5 ms Mitte OVDCONbits.POVD1H = 1; PTCONbits.PTEN = 1
-
Thread
WS2812 per STM32F0 Timer und DMA
GPIO_PinSource1, GPIO_AF_2); uint32_t cycles = 1.25 * (clocks.SYSCLK_Frequency / 1000000UL); uint16_t prescaler = (cycles + 65535) / 65536; // always round up uint16_t period = (cycles / prescaler) - 1; // e.g. 100 cycles are from 0 to 99 // reset DMA and TIM2 DMA_DeInit(DMA1_Channel3); TIM_DeInit
Channel3, &dma); DMA_Cmd(DMA1_Channel3, ENABLE); // Init timer and timer output: pwm TIM_TimeBaseInitTypeDef tim2; TIM_TimeBaseStructInit(&tim2); tim2.TIM_Prescaler = prescaler; tim2.TIM_Period = period; tim2.TIM_ClockDivision = TIM_CKD_DIV1; tim2.TIM_CounterMode = TIM_CounterMode_Up; tim2
-
Thread
Frage zur Mosfet Gateladung/Gatestrom
Wenn du aber schneller schalten willst, dann kannste einen pnp/npn Folger hinten ranhängen. Basen verbinden, Emitter verbinden, Kollektor vom NPN an 5V, Kollektor vom PNP an Masse. Basen an den Ausgang vom uC, Emitter übern Widerstand ans Gate. Dann hast du viel kürzere Schaltzeiten. Martin
Mach dir nicht so viel Sorgen um den Strom, mini Standardtreiber und es läuft. Von Martin: > Basen verbinden, Emitter verbinden, Kollektor vom NPN an 5V, Kollektor > vom PNP an Masse. Basen an den Ausgang vom uC, Emitter übern Widerstand > ans Gate. > Dann hast du viel kürzere Schaltzeiten.
-
Thread
Wie funktioniert dieses Gerät
Flexibilität – Alle USB-Peripheriegeräte mit den vernetzten Computern nutzen, indem Sie sie an Home Base anschließen.[/code] (Seite 2) Die Betonung ist auf 'Alle' zu setzen. [code]Wenn Home Base in Ihr Netzwerk eingebunden ist, können Sie Drucker, externe Festplatten und andere USB-Geräte anschließen
Seite gehts weiter zum Thema Massenspeicher: [code]F: Welche Dateisysteme können mit dem Home Base im NAS-Modus verwendet werden? A: Home Base kann automatisch FAT12, FAT16, FAT32 und NTFS- Datenträger im NAS-Modus mounten. Datenträger, die andere Datei- Systeme verwenden, stehen
-
Thread
Störung auf "langer" Fbas Leitung
liegen soll, kann ich mir dabei nicht so recht vorstellen, noch dazu im gleichen f-Bereich wie das F-BAS-Signal? erklär mal bitte ....
Elo schrieb im Beitrag #2936624: > noch dazu im gleichen f-Bereich wie das F-BAS-Signal? erklär mal bitte > > .... Die niedrigste Frequenz eines FBAS Signals ist nun mal die Bildwechselfrequenz mit 25Hz bei der PAL Norm. Wenn ein horizontaler Störstreifen langsam von oben
-
Thread
Suche Assembler für 32-bit ARM
hatten. ;-) Sehr schön ;-) Ich probiers auch mal mit dem Milchmädchen. > Beim übergang vom (16MHz-) Atmega zum (76MHz-) STM32 habe ich einen > Geschwindigkeitzuwachs von (76/16=) 4,75. Ich habe vor kurzem eines meiner Programme für den Arduino Nano ( Atmega328, optimiert für 16 Bit Integer
chris_ schrieb im Beitrag #4433915: > optimiert für 16 Bit Integer in C ) auf einem Arduino DUE ( > ARM M3 84MHz ) laufen lassen. Ergebnis: ~Faktor 4 Ganz schlecht, denn damit zwingst Du den Armen, immer wieder zwischen 16 und 32 Bit zu konvertieren
-
Thread
AVR32 grasshopper patch für ATMEL buildroot 2.3.0
0x30000. Somit ergibt sich die folgende Befehlszeile: avr32program program -v -e -f cfi@0 binaries/base/u-boot.bin bzw. avr32program program -v -e -f cfi@0 –F bin -O 0x00030000 binaries/base/rootfs.avr32.jffs2 [/code] Gruß Christoph
Board-Open-Source-Version.html Das da ist er noch mal: http://www.ic-board.de/product_info.php?info=p75_ICnova-AP7000-Base.html
-
Thread
Labornetzteil/Funktionsgenerator
Fronpanel hab ich schon fertig, und Programmiert. lief auf anhieb. hat 4x4 7-segment einen ATmega88 und 16 LEDs 16 Buttons (mit interupts) und einen Incrementalpoti. Und Uart, I²C und SPI für die verbindung mit dem rest. ...hätt ich sogar in eagle zum Thema höher schneller weiter: ich konnte mit meinen
Die Signale zur Anzeige so wie die Überwachung der Hilfsspannung kann man entsprechend dem Post von 16.02.2012 21:41 anbinden.
-
Thread
SD Karte partitionieren/formatieren Windows
IO Mode. /S - Select Secondary IO Mode. /I XXXX - Select 16-Byte Contiguous IO Mode. - Where XXXX=IO Base Address in Hex. /M XXXX YYYY - Select Memory Mode. - Where XXXX=Segment in Hex; YYYY=Offset in Hex
IO Mode. /S - Select Secondary IO Mode. /I XXXX - Select 16-Byte Contiguous IO Mode. - Where XXXX=IO Base Address in Hex. /M XXXX YYYY - Select Memory Mode. - Where XXXX=Segment in Hex; YYYY=Offset in Hex
-
Thread
SMT32F407: DMA -> GPIOD
ans laufen. Ich nutzte CooCox 1.7.8 mit GNU Tools ARM Embedded\5.3 2016q1 [c] volatile uint16_t sendbuffer[128]; void init_dma() { static TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; static DMA_InitTypeDef DMA_InitStructure; static NVIC_InitTypeDef NVIC_InitStructure;
TIM_TimeBaseStructure.TIM_Period = 1; TIM_TimeBaseStructure.TIM_Prescaler = 0; TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1; TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Down; TIM_TimeBaseStructure.TIM_RepetitionCounter
-
Thread
DS18B20 auslesen und Temperatur auf 7-Segment-Anzeige ausgeben
Hier noch der Code: (eben vergessen ...) https://dl.dropbox.com/u/41257941/temp.bas
&HFF - Scratch(2) Vorzeichen = 1 Else Vorzeichen = 0 End If T1 = B1 / 16 T2 = B2 * 16 Temperatur = T1 + T2 [/c] B1 ist immer 0, vieviel ist 0 / 16 ? [c] if Scratch(2) = &HFF then TempRead = &HFF - Scratch(2) TempRead = TempRead / 2 Vorzeichen
-
Thread
STM32f3 8bit SPI DMA Problem
//SPI2 Tx DMA is DMA1/Stream4/Channel0 DMA_InitStructure.DMA_PeripheralBaseAddr = (uint32_t)&(SPI1->DR); //Set the SPI2 Tx DMA_InitStructure.DMA_MemoryBaseAddr = (uint32_t)&SPIBufferRX; //Set the memory location DMA_InitStructure.DMA_DIR
//SPI2 Tx DMA is DMA1/Stream4/Channel0 DMA_InitStructure.DMA_PeripheralBaseAddr = (uint32_t)&(SPI1->DR); //Set the SPI2 Tx DMA_InitStructure.DMA_MemoryBaseAddr = (uint32_t)&SPIBufferTX; //Set the memory location DMA_InitStructure.DMA_DIR
-
Thread
RFM12 und AVR: Wie nach Fehlern suchen?
#define myrfm12_spi_init myrfm12_port_init_hw_spi /* HW SPI specific transfer function */ uint16_t myrfm12_trans(uint16_t wert) { #if(MYRFM12_CONF_DEBUG == MYRFM12_CONF_DEBUG_YES) myrfm12_debug(cmd); #endif CONVERTW val; val.w=wert; cbi(MYRFM12_CONF_PORT, MYRFM12_CONF_CS); SPDR
RFM12 for (i=0; i<16; i++) // Iterate 16 times (for 16 bits) { if (cmd&0x8000) sbi(MYRFM12_CONF_PORT, MYRFM12_CONF_SDI); else cbi(MYRFM12_CONF_PORT, MYRFM12_CONF_SDI); cmd<<=1;
-
Thread
Hänger beim Initialisieren der SD-Card (AT91SAM7S256)
----------------------------------------- // Basis- und Offsetadressen definieren #define ASM_BASE 0x202000 #define PIO_BASE 0xFFFFF400 #define PIO_PER 0x00 #define PIO_PDR 0x04 #define PIO_OER 0x10 #define PIO_ODR 0x14 #define PIO_SODR 0x30 #define PIO_CODR 0x34 #define
// Basisadresse setzen LDR r0, =PIO_BASE // enable SPI-Clock (ID=5) LDR r1, =1 << 5 STR r1, [r0, #PMC_PCER] // Basisadresse setzen LDR r0, =SPI_BASE // SPI-MODE: fixed LDR r1, =0x81; // SPI Enable, Software
-
Thread
Falls jemand eine Fernsteuer-App fürs Handy sucht.
Port ) und alles was von einem raus kommt geht in den anderen. du kannst dich mit verschiedenen Basen vom PP aus verbinden du kannst dich mit verschiedenen PP von den Basen verbinden Konfiguriert wird mit AT Commands... Du kannst simples terminal betreiben Du kannst aber auch Daten übertragen
den PCM Über den DSP ... > Geht das auch über die Fritz!Box drüber? ..Wenn deine Fritz als Base dient und den ETSI Ect Standard unterstützt.. )** jo... > Gibt es eine Datenblatt, wie man das macht )** jo..... > und was es sonst noch so kann? )** jo.... > API-Beschreibung? )
-
Thread
PAL-Röhren TV auf NTSC umbauen
Wolltest du zart andeuten das RGB digital ist? vorhanden oder nicht? Du hast NULL Ahnung von PAL BAS FBAS
davon aber nur die Synchronsignale. Es gibt auch noch „Sync on Green“. Da sind die dann wie beim BAS im Grünsignal enthalten.
-
Thread
PiPico2 Frequenzzähler
aktuellen Frequenz benötige. Mein Testaufbau ist ein Frequenzgenerator mit 100kHz Rechteck an den Pin16 des PiPico geführt. So wie es aussieht, entstehen hier Fehler bis zu ca. 20%. [c] #include <Arduino.h> volatile uint32_t DeltaT = 0; #define TESTPIN 16 void myISR() { static uint64_t
Mi N. (msx) 16.10.2025 13:36 >Du bist ja auch Profi und hast keine Arduino-IDE benutzt! Ich denke, er hat MicroPython benutzt.
-
Thread
STM32 Timer6 - nervt
Hallo Gemeinde, ich möchte einen "einfachen" 16-bitTimer (TIM6) in Betrieb nehmen. Target ist STM32L496. Er soll einen 4kHz-Interrupt erzeugen. Das Teil läuft ein nicht los. Weder mit HAL-Gedöns: htim6.Instance = TIM6; htim6.Init.Prescaler
Ach ja und das Starten nicht vergessen: HAL_TIM_Base_Start(tim6);
-
Thread
Labornetzteile mit Arduino programmieren
200Watt an Leistung abzuführen. Im Netzteil steuern OPV den Strom und die Spannung diese werden von 16 Bit über einen Mega angesprochen das INA Modul gibt mir im 16 Bit Bereich Rückantwort. Ein Encoder steuert die Feineinstellung, eine kleine Tastatur kann direkt Strom und Spannungswerte vorgeben. Zur
schrieb im Beitrag #6386513: > Im Netzteil steuern OPV den Strom und die Spannung diese werden von 16 > Bit über einen Mega angesprochen das INA Modul gibt mir im 16 Bit > Bereich Rückantwort. Zeig mal was Du hast, also Schaltplan und Fotos.
-
Thread
STM8S-Discovery IDE läuft nicht
Nur die 32k Version ist begrenzt, die 16k Version nicht.
Bastler schrieb im Beitrag #3287216: > Nur die 32k Version ist begrenzt, die 16k Version nicht. und wo finde ich die 16k version? finde die nicht mehr...