-
Thread
Welchen µC für Schaltung / wie programmieren?
Hallo, @JojoS. Habe wohl zuerst den falschen Link gepostet, meinte eher diesen da http://www.conrad.at/goto.php?artikel=154176. WinAVR kenn ich eh, hab damit mal einen Hexapod programmiert. Aber kann ich damit auch den besagten µC programmieren? bzw. kann man alle ATMEL µC damit Programmieren? Was
>Dieser µC scheint mir brauchbar >http://www.conrad.at/goto.php?artikel=154136 (hinsichtlich >Erweiterbarkeit). Mann - die Preise sind der Hammer! Kaufe bei CSD-electronics, der schickt auch nach Austria.
-
Thread
C-Code Problem (LED-Faden mit Timer)
haben hier wohl einen klassischen Fall von zu langer Interrupt Routine. Seztz man den unteren Wert [c] if(tblpos > 0) tblpos--; else richtung = 0; [/c] auf mindestens ca 95 klappt alles super. [c] if(tblpos > 95) [/c] Wahrscheinlich kommen sich die IR-Routinen da in
LED fadet schön wie sie soll. Ressourcenspaaren ist sicherlich anders aber das ist auch mein erstes C-Projekt bzw. überhaupt uC. P.S. ISR Deklaration schon wieder entfernt :)
-
Thread
PIC Mikrocontroller noch aktuell ?
einen ordentlichen Stack. > So eigentlich nur ASM möglich. > > Ich erwarte von einem modernen µC, dass man ihn in C++, wenigstens mit C > Programmieren kann. Die meisten haben keinen Stack. Aber Ram. Den Rest regelt der C-Compiler, der ein paar Restriktionen bei Funktionspointern hat und rekursive
analog-to-digital converters (ADCs) with up to 17 external channels • 14-bit effective resolution at 250ksps with hardware averaging • One 12-bit 1Msps digital-to-analog converter with integrated output buffer (DAC) • Two zero-drift zero-crossover chopper op-amps (OPA) – 0.5µV/°C drift with chopping
-
Thread
OLED Display 2.42'' SSD1309 SPI mit oder ohne Level Shifter
Kannst doch umschalten mit R8 von I2C nach SPI. siehe auch links neben dem Folienleiter.
Widerstandsteiler und m.M.n. ein wirklich > *genialer Schaltungskniff* ist). .. vom Erfinder des I2C.
-
Thread
"Universalprogrammer" für Linux
(AT45DBxx) - SPI-Flash (25xx) - I2C-EEPROM (24xx) Die Liste ist fest im Programm integriert (über Header-Files), ich habe mir sie bis jetzt einfach erweitert und neu compiliert, wenn es nötig war. Eine
Es gibt wieder eine neue Version (1.39). Neben DS28E07 sind auch die STM32F7xx und weitere R8C Typen dazugekommen. Für den RL78 ist eine Funktion dazugekommen, das Daten-Flash zu dumpen. Normalerweise geht das nicht, da der Bootloader kein Readout unterstützt
-
Thread
RGB-Farbwechsel (Moodlight)
Nun ja, die Sache ist schon etwas komplexer. (Die Farbwerte welche ich über die PWM-Kanäle des AT90PWM316 ausgebe, werden durch eine lineare Dimmung mittels 256-Werte der valuetable realisiert) [c] const unsigned int valuetable[256]= // = logarithmische Werte { 0,0,1,1,1,1,1,1,1,1,1,1,1,2,2,2
1490,1539,1590,1643,1697,1754,1812,1872,1934,1998,2064,2133,2203,2277,2352,2430, 2511,2594,2680,2769,2860,2955,3053,3154,3259,3367,3479,3594,3713,3836,3964,4095 }; [/c] Hier der C-Code für die Farbmischung 2er Farben: [c] if( Taste == 5 && Zaehler == 4 ) { OCR1SB = valuetable[ 0 ]; OCR1SA = valuetable[ B + actEntry_B ]; OCR0SA = valuetable[ R + actEntry_R
-
Thread
Floppy FDD Diskette an AVR Mikrocontroller ATmega Beispiele Assembler
#5554955: > Die hier genannten WD Chips können dann aber wiederrum kein High Density Sieh Dir den WD37C65 an. Der kann alles, was ein IBM AT konnte.
Sektoren reichlich sinnlos. Zwar arbeiten PCs mit 512-Byte-Sektoren, aber in anderen Systemen gab es auch 256- und sogar 128-Byte-Sektoren.
-
Thread
Keine Daten aus AD7793
01011000 Read data register getsSPI( byte, 3 ); result = (unsigned long int)byte[2] * 256 * 256 + (unsigned long int)byte[1] * 256 + (unsigned long int)byte[0]; ultoa( result, buffer ); putsUSART( buffer ); // send back A/D value PORTCbits.RC0 = 1; // Chip deselect
ReadSPI(); PORTCbits.RC0 = 1; // Chip deselect result = (unsigned long int)byte[2] * 256 * 256 + (unsigned long int)byte[1] * 256 + (unsigned long int)byte[0]; ultoa( result, buffer ); putsUSART( buffer ); // send back A/D value } /* getCHECK is now working */ void getCHECK
-
Thread
Mini-Farbdisplay (+mehr) für 1 Euro
dasmx -a -c65c02 miuchizflash.bin
gesendet werden müssen. [code] L4148: ;Kommandos an $6200 ? lda X0434 cmp #$2A beq L415C cmp #$28 beq L4161 cmp #$80 beq L4166 cmp #$81 beq L416B rts [/code] Diese Werte decken sich mit den Daten der "Miuchiz USB.doc". Das Mass Storage Protokoll ist eigentlich
-
Thread
altes Phytec MCB-51 Monitor/Basic Befehle?
eine Erweiterung des Extended Basic (Exbasic) für den C64 benutzt. Aber was will man heute mit einem Basic auf der Basis 8052 noch anfangen? Für die PIC32 gibt es ein Basic als C-Projekt. Damit kann man innerhin das Basic sehr leicht um eigene Befehle
schrieb im Beitrag #8088520: > Hier bitteschön: der EEPROM dump [code]> strings EPROM_miniConLC_SMJ27C256_at_DIP28.bin[/code] [code] STOP CLEAR PUSH GOTO PH0. PRINT CALL STRING BAUD CLOCK PH1. STOP ONTIME ONEX1 RETI RESTORE NEXT ONERR INPUT READ DATA RETURN GOSUB WHILE UNTIL
-
Thread
PIC 10F200, Anfänger
..] > 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 >
> > 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 >
-
Thread
Bastel Projekt mit Z80: Dioden als OR-Gate
allereinfachsten diesen mir EINEM Eprom 32k und EINEM Ram 32k abzudecken. Eprom 0000-7FFF Typ 27C256 Ram 8000-FFFF Typ 62256 Da braucht es weder "einen Haufen or-Gates" noch "verschiedene ramchips".
Flash und ein SRAM völlig aus. Z.B.: https://www.digikey.de/de/products/detail/microchip-technology/AT28C256-15PU/1008506 https://www.digikey.de/de/products/detail/renesas-electronics-corporation/71256SA25TPG/1915734 OR-Gatter hatte ich noch nie benötigt. Vielleicht noch Adreßdekoder 74HC139 für
-
Thread
Unbekannter Assembler erzeugt große Änderungen bei kleinem Programm
hergestellt wird? Ich verwende etwa seit 1993 keine OTPs mehr, da kamen von Atmel die ersten Flash AT89C51 raus.
wenige Assembler-Befehle mit den zugehörigen Opcodes angegeben (im Kontext der Optimierung durch den C-Compiler, wenn google translate nicht lügt): 5E0A MOV A BB1 1B21 COMP A #0x21 2040 T0SN CF 5C0B MOV BB2 A Weiter vorne finden sich noch (S. 73): C028 GOTO 0x28 0030 WDRESET 1F00 MOV A #0x0
-
Thread
Keyestudio KS0304 Schaltplan
0.0055s latency). Nmap scan report for 192.168.178.123 Host is up (0.00046s latency). Nmap done: 256 IP addresses (4 hosts up) scanned in 3.02 seconds ping -4 -c 5 192.168.178.123 PING 192.168.178.123 (192.168.178.123) 56(84) bytes of data. 64 bytes from 192.168.178.123: icmp_seq=1 ttl=128 time
(MAC, IP, GW, Mask) ... EEPROM Contents ------------------------------ (Block size is 256 bytes) DHCP Name : Mega328p-w5100 MAC : 00:90:B8:00:03:28 Own IP : 192.168.1.50 Own Port : 100 Gateway IP : 192.168.1.1
-
Thread
Grasshopper Inbetriebnahme
ausgabe: [pre] U-Boot 1.3.1 (Apr 18 2008 - 11:55:48) U-Boot code: 00000000 -> 0000e3e0 data: 00013c68 -> 0001a1f0 SDRAM: 64 MB at address 0x10000000 Testing SDRAM...OK malloc: Using memory from 0x13fa5000 to 0x13fe5000 DMA: Using memory from 0x13fa1000 to 0x13fa5000 Flash: 8 MB at address 0x00000000
64 Dec 31 2006 event0 [/pre] Ich habe dann ein Miniprogramm geschrieben um es zu testen : [c] #include <linux/input.h> #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <fcntl.h> #include <errno.h> int main(void) { int fd = -1; char name[256] = "unknown";
-
Thread
Linux C "free(): double free detected in tcache2
close( fd); } } } [/c] [c] static int DoCmd( int fd ) { int i, st, size, pid; char http_header[4096]; char *p, *q, ip[256], req[1044], str[2048];
read of size 4 ==6736== at 0xA3BECFB: fclose@@GLIBC_2.2.5 (iofclose.c:48) ==6736== by 0x10F766: DoCmd (httpsrv.c:177) ==6736== by 0x10F46F: HttpServer (httpsrv.c:115) ==6736== by 0x12CD26: main (uquery.c:124) ==6736
-
Thread
Nucleo-H743ZI in Linux und mit stlink 1.5.0
:20:52 DEBUG common.c: st vid = 0x0483 (expect 0x0483) 2018-04-25T13:20:52 DEBUG common.c: stlink pid = 0x374b 2018-04-25T13:20:52 DEBUG common.c: stlink version = 0x2 2018-04-25T13:20:52 DEBUG common.c: jtag
0x00080000 (0x20000 128kB) not protected # 5: 0x000a0000 (0x20000 128kB) not protected # 6: 0x000c0000 (0x20000 128kB) not protected # 7: 0x000e0000 (0x20000 128kB) not protected STM32H7xx 2M - Rev: Y > flash info 1 #1 : stm32h7x at 0x08100000, size 0x00100000, buswidth 0, chipwidth 0 #
-
Thread
Anschluß TFT-LCD-Modul SHARP LQ092B5DW01 Pollin
mitbringen. Da wären die üblichen verdächtigen Firmen und Produktreihen, NXP LPC, Renesas, TI TMS320, Atmel AT91SAM, STMicroelectronics STM32. Ein gewisses Problem für uns Hobbyisten ist, das diese Controller zunehmend in BGA-Gehäusen daherkommen. Die Controller gehen in Richtung SoC, Überleitung zur 3. Möglichkeit
jemand einen Layout mit folgenden Eigenschaften erstellen: - Hindergrundbeleuchtung-Steurung(I2C oder was auch immer) für rote und weiße LEDs inkl. FFC-Connector - 5V Eingang für Hindergrundbeleuchtung-Steurung - 3V3 Eingang für LCD - FH28-40S-0.5SH(05) FFC-Connector zum direkten Anschluss
-
Thread
Frage zu HVP (PP) eines 328p (Arduino nano)
Programming' und findet sich in der Abteilung Memory Programming. Im aktuellen Datenblatt ist das Kapitel 28.6
000000005aabb0fe:~# sh /home/pi/avrdude/info.sh avrdude: Version 6.3-20171130 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2014 Joerg Wunsch System wide configuration file is "/etc/avrdude.conf" User configuration file is "/
-
Thread
AVR Atmega328P Fast PWM beeinflusst UART
PWM, die Pins werden direkt vom CombarMatch geschalten. Nix Software, alles autarke Hardware. [c] TCCR0A = (1 << COM0A1) | (0 << COM0A0); TCCR0A |= (1 << COM0B1) | (0 << COM0B0); TCCR0A |= (1 << WGM01) | (1 << WGM00); [/c] Zitat Datacheet: Clear OC0A on compare match, set OC0A at BOTTOM
Berechnungen ziemlich in die Hose gehen. Leo erklärt in seinem Beitrag auch, warum. Ersetze bitte: [c] #define MYUBRR F_CPU/16/BAUD-1 [/c] durch: [c] #define MYUBRR (F_CPU/16/BAUD-1) [/c]
-
Thread
Umgang mit alten EPROMs?
Bei Digikey bekommst Du noch problemlos EPROMS, aber auch EEPROMS wie z.B. 28C256 und Flashes wie z.B. SST39SF010. Leider nicht mehr in DIL, sondern nur noch in PLCC und bei den EPROMs nur OTP (einmal programmierbar), aber dafür gibts dann ja Adapterplatinen. fchk
die Betriebsspannung erhöhen soll, steht oft explizit im Datenblatt. Z.B. aus dem Datenblatt des M27C256: "The M27C256B is in the programming mode when VPP input is at 12.75V ... VCC is specified to be 6.25V ± 0.25 V"
-
Thread
4" TFT für 7,97€
25kg Gewicht Dänemark 14,28 Euro inkl. MWSt (12 Euro netto) je angefangene 25kg Gewicht Frankreich 14,28 Euro inkl. MWSt (12 Euro netto) je angefangene 25kg Gewicht Großbritannien 14,28 Euro inkl. MWSt (12 Euro netto) je
3,99 Euro :) http://www.deluxe24.com/4-Zoll-TFT-Monitor12V-KFZ-Adapter-f-PS2-Slim_p2873_sid693b2c9365d7c2cd877bfe4316c9d639_x2.htm
-
Thread
Option B41 bei einer CMU200 nachrüsten.
cat script.gdb target remote | qemu-system-i386 -S -gdb stdio -cpu qemu32 -machine pc-q35-2.9 -boot c -hda ../CMU200_HD_IMG_ORG_2G_MW.bin -m 256 -L . gdb -x script.gdb ... determining executable automatically. Try using the "file" command. 0x0000fff0 in ?? () (gdb) Jetzt kann das Spielen
REM ========== Scan Disk :SCANDISK C:\CMU\UTILS\LOCKINT scandisk /autofix /nosummary /nosave IF EXIST C:\CMU\VMMSWAP\VMMSWAP del c:\cmu\vmmswap\vmmswap IF EXIST C:\cmu_boot.scn DEL C:\cmu_boot.scn C:\CMU\UTILS\FREEINT :NOVMMSWAP
-
Thread
Mint 19.2 zerschießt sein Dateisystem
151-generic #157-Ubuntu [ 1512.878166] Hardware name: FUJITSU LIFEBOOK E746/FJNB292, BIOS Version 1.28 07/28/2020 [ 1512.878167] Call Trace: [ 1512.878171] dump_stack+0x6d/0x8b [ 1512.878174] print_bad_pte+0x222/0x2e0 [ 1512.878175] _vm_normal_page+0x9c/0x100 [ 1512.878176] follow_page_pte+0x1e2
0000000000000017 R15: 0000000000000000 [ 1020.781978] BUG: unable to handle kernel paging request at 0000006e1bf819a3 [ 1020.781983] IP: show_smap.isra.31+0x320/0x450[/c]
-
Thread
Starterkitt für Anfänger,
Gange. Im Grundstudium mal bisschen C, habe dass Ganze leider nie wirklich vertieft. Aber ich muss um nicht ganz auf dem Abstellgleis zu landen auch mal meine Software Skills aufbessern. Dachte an ein EVAL Kit mit PIC µC den ich u.a.
Religionen" etwas dabei ;-) http://www.mikroe.com/eng/home/index/ Gibt auch Boards, wo man den uC tauschen kann (Arm <-> AVR <-> PIC)
-
Thread
Padauk MCU für 0.038 USD aus Taiwan
erschlagen. Kennt da jemand etwas günstigeres mit freiem C-Compiler programmierbares? https://direct.nuvoton.com/en/n76e003at20
_at(0x10) pa; __sfr __at(0x11) pac; __sfr __at(0x1c) tm2c; __sfr __at(0x17) tm2s; __sfr __at(0x09) tm2b; void send_bit(void) __interrupt { if(!(intrq & 0x40)) return; if(!sending)
-
Thread
DMX Auswertung mit Arduino geht nicht
+= 128; if (digitalRead(S9) == HIGH) dmx_adr_local += 512; DMXaddress = dmx_adr_local; } [/c]
+= 128; if (digitalRead(S9) == HIGH) dmx_adr_local += 512; DMXaddress = dmx_adr_local; } [/c] Bezüglich Deinem Addressierungsproblem mit dem auskommentierten Switch (S9), müsste da nicht eher wie folgt heissen... [c] if (digitalRead(S9) == HIGH) dmx_adr_local += 256; [/c]
-
Thread
GNU ARM Linker Problem, LPC3250 Code soll auf HITEX USB Stick auf RAM ausgeführt werden
-------------- # Stack definitions # size in words! */ #define UND_Stack_Size 256 #define SVC_Stack_Size 256 #define ABT_Stack_Size 256 #define FIQ_Stack_Size 256 #define IRQ_Stack_Size 1024 #define USR_Stack_Size 2048 #define Mode_USR 0x10 #define Mode_FIQ
/* Configure IRQ Mode */ __asm( "ldr r1, [r4, #16]"); __asm( "msr CPSR_c, r1"); __asm( "ldr r13, [r4, #20]"); /* Configure SVC Mode */ __asm( "ldr r1, [r4, #24]"); __asm( "msr CPSR_c, r1"); __asm( "ldr r13, [r4, #28]");
-
Thread
CRC Summe von Konstanten zur Kompilierzeit automatisch berechnen
uint8_t byte(int idx) { return (V) >> (idx * 8); } static constexpr uint8_t crc_polynom = 0x8c; // calculate CRC8 of first 7 bytes of V at compile time static constexpr uint8_t calcCrc() { // value is not accessable/ready at compile time, // so we replicate it here uint8
operator[](const uint8_t idx) const { return pgm_read_byte(&value[idx]); } }; const OwID<0x28A2D984000002> myOwId PROGMEM; ... // access ID's 1st byte auto id0 = myOwId[0]; [/c]
-
Thread
Sind ARM9 wirklich schneller als ARM7
siehst wirst du jede Menge Leute finden, die mit den Chips hochzufrieden sind. Gleiches gilt für Atmels AT91SAM7, dazu allerdings das Forum auf at91.com befragen. Für Aufgaben, die nach noch mehr Performance oder Speicher verlangen, muss dann aber oft ein System mit Caches her - also ARM720t, ARM920t,
zwangsläufig auf Bandbreite bezieht, sondern auch Latenz meint. Für solche Aufgaben gibt es dann Chips wie AT91RM9200, AT91SAM926[0123], EP93xx, S3Cxxxx, LH7xxxx, ... - wer solche Chips in Hobby Projekten einsetzen will kann auf fertige Module zurückgreifen, die uC, Takt, Spannungsregelung, Speicher etc. auf
-
Thread
StartUp - chinesischer FPGA, Open Source Synthese
64K-240K for Lattice and 108K-1,638K for Altera). User flash non-volatile memory (NVM) at 96K-1,792K. NOTE: Gowin claims that one innovation in the GW1N family is this random-access on-chip user flash memory that can be accessed “just as normal NOR flash memory.” (Lattice provides up to 256Kb
hardware multiplier blocks (vs none for Lattice and 16-144 for Altera). Max user I/O is 120-272 pins (28-335 for Lattice, and 27-500 for Altera)." Respektabel? Es zeigt wo es lang geht! Vermutlich auch eine Lücke, in die folgendes stößt: - http://www.clifford.at/yosys/ - http://www.clifford.at