-
Thread
Float-Berechnung auf 8051 mit SDCC
Konto auf 0 ist auch ein (schlechter) Zustand! Float ist zu aufwendig. Besser so: URef * AD_Wert 5* AD_Wert Um= --------------- = ------------- = (5 MUL AD_Wert) DIV 1024 1024 1024 Das geht also in Integer zu rechnen, ist so einfacher und schneller. Sieh auch
das klappt, wenn ich die angaben änbdere? das einzige, was ich jeweils angebe, ist --code-loc 0x8000 und --xram-size 0x8000. das reicht also nicht? gruss
-
Thread
WEEE und ElektroG für Kleinserien
einigen Hintergrundinformationen: http://www.faz.net/s/Rub58F0CED852D8491CB25EDD10B71DB86F/Doc~EF9A94AD631DE487EAF8F0E47B2A315C3~ATpl~Ecommon~Scontent.html Das Elektroschrottgesetz ist Schrott und sollte umgehend entsorgt werden. Nice week, Zardoz
einiges gefasst machen. Das Umweltbundeamt verfolgt jedes Vergehen gegen das WEEE mit mindestens 8000 Euro. Da kommt doch einiges für die Staatskasse szusammen. Armes Deutschland.
-
Thread
Low power devices
das niederfrequente FSK-Frequenzen und welche max. Baudrate? Eventuell geht ja ein Prozessor mit AD-Wandlereingang und eine Software-Decodierung zum Beispiel mit dem Goertzel-Algorithmus
Add, Sub, Shift und Compare. Müsste sogar auf einem PIC laufen... Das Ding ist berechnet für 8000Samples/s, das kann man aber ändern, man muss dann die Zähler und Entscheidungsschwellen für die Frequenzerkennung anpassen, da die ja in Relation zur Abtastfrequenz definiert sind. Die angehängte
-
Thread
arthernet extern memory test program
32kByte) -- Dumping 256 bytes: Address: 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 0x8000: 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F :................: 0x8010: 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F :................: 0x8020: 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E
96 97 98 99 9A 9B 9C 9D 9E 9F : . : 0x80a0: A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD AE AF : ¡¢£¤¥¦§¨©ª«¬®¯: 0x80b0: B0 B1 B2 B3 B4 B5 B6 B7 B8 B9 BA BB BC BD BE BF :°±²³´µ¶·¸¹º»¼½¾¿: 0x80c0: C0 C1 C2 C3 C4 C5 C6 C7 C8 C9 CA CB CC CD CE CF :ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏ: 0x80d0: D0 D1 D2 D3
-
Thread
F2013 MSP Serie
Vref/2 = -0.6 = -FSR lässt man sich das im Binary Offset ausgeben ergibt sich +FSR = 0xffff, 0 = 0x8000, -FSR = 0
von "Zwischenwerten" erreicht man üblicherweise mittels Referenzumschaltung z.B. die ersten Video AD Wandler lieferten 7,5 BIT hier wurde einfach in der Zwischenabtastung die Referenz umgeschaltet, somit die Auflösung erhöht. Ähnliche Beispiele finden sich zu hauf, man muß das System derart beeinflussen
-
Thread
Hilfe bei XRam
| (1<<SRW10); // externes RAM enablen, 1 } Ich steuere z.B den A/D-Wandler über uint8_t *ad = (uint8_t *) 0xC000; unsigned char read_ad(void) { unsigned char byte; // AD Wandler starten *ad = 0xff; for (unsigned char i=0;i < 25;i++) { asm volatile("
AVR funktioniert. Wie schon gesagt entweder mit JTAG testen oder mit Programm. volatile uint8_t *ad = (volatile uint8_t *) 0x500; for (ad=0x500;ad<0x800;ad++)*ad= Testwert; damit Blöcke mit einem Testwert beschreiben und wieder auslesen. Testwerte (0 und 0xff) Wenn das klappt einzelne Bytes
-
Thread
Fractional Format
sorgen. Zum Thema SS, US, SU bzw. UU empfehle ich dir ein genaueres Studium der Datenblätter/AN von AD. Wenn du dein Zahlenformat signed machen willst, dann musst du die H-Teile mittels SS, die "Querprodukte" mit US bzw. SU und die L-Teile mit UU multiplizieren. So, und jetzt lass mal ein wenig Eigeninitiative
16.16 ergibt 32.32) Bsp: 4660.5 * 4660.5 = 21720260.25 0x12348000 * 0x12348000 (0x1234.0x8000) = 0x14b6cc440000000 (0x14b6cc4.0x40000000) = 21720260.25 Anderes Beispiel 1.15 * 16.16 = (17.31) 1.5 (0xc000) * 1.5 (0x00018000) = 0x120000000 (0b10010...) Einleuchtender wird's wenn man
-
Thread
Rechnen mit AVR
Hallo, habe das auf ganz einfache weise gelöst, denn ich habe auch mit dem AD9851 einen DDS Synthi aufgebaut: Fout(Hertz) * FF FF FF FF Delta Phase = ------------------------- 0A BA 95 00 im klartext: es sollen 20 MHz ausgegeben
durch 2^(37-32=5)=32, bleibt 0xBEE32EF7. 20000000*128 * 3202559735 = 8198552921600000000 9896 8000 * BEE3 2EF7 = 71C7 1C71 C435 8000 71C7 1C71 C435 8000 / 4 = 1C71 C71C 710D 6000 ^ ^ DDS-Wert Einfacher wird es, wenn beide Male
-
Thread
Welches Microcontroller board nehmen?
- die nötige FFT verschlingt Rechenzeit und Speicher... Welche Tonqualität stellst du dir vor? 8000Hz Samplefrequenz (Telefonqualität)?
Der ATMega162 hat auch 2 USART, dafür aber keinen AD-Wandler. Die Anbindung des DTMF-Dekoders ist sogar relativ simpel, und wenn man mit Mikrocontrollern rumbastelt, muß man sich eh auch um die Hardware kümmern...
-
Thread
Lötstation ZD-931 von Pollin
Ich habe es befürchtet.... :) Dumm nur, dass meine Lötstation gerade runde 8000 km von mir entfernt ist. :) Ich bin nämlich gerade in Peking (bis Ende nächster Woche) und da kann ich leider nicht weiterhelfen. :) Kann sich niemand anderes opfern? Viele Grüße aus Peking! (
define u16 unsigned int /* Variablen */ char s[4]; // Hilfsvariable u16 adWert; // AD-Wert u16 Tist; // IstTemperatur u16 Tsoll; // Solltemperatur u16 eeFooWord EEMEM = 280; // EEprom
-
Thread
Servo am Mikrocontroller
// /*Timer0 so setzen, dass es 1ms bis zum erneutem Auslösen des Interrupt dauert 8M *1000m = 8000; 1ms sind bei 8MHZ 8000 Takte 8000 / 64 = 125; 8000 Takte durch Prescaler = 64 bedeutet der Timer muss 125 mal weiter zählen, damit 1ms um ist 256 -125 = 131; Bei 256 läuft der Timer über
Von 51ern habe ich keine Ahnung, schade. Tut mir leid. Du müsstest eigentlich mit einem AD-Wandler die Potiposition des Servomotors auslesen (da hängt meist ein POTI am Getriebedrann, oder mit Lochscheibe und Lichtschranke) und die gewonnenen Positionsinformationen mit deiner Sollposition
-
Thread
Gleichstromquelle Luxeon led
Richtig? und ist es eigentlich egal wieviel mAh die akkus haben? bzw kann ich Ansmann Mono D NiMH 8000 mAh verwenden oder würdest du andere nehmen gruss steve
man aber schon aus Umweltschutzgründen nicht nehmen und weniger Kapazität haben sie meist auch. Die 8000er Monos sind in einer 3D Mag sicher eine sehr gute Wahl und sollten für grob geschätzt gute 5 Stunden Licht geben. Wenn du das ganze runterdimmst, kannst du sogar viele Stunden mehr erreichen. mfg
-
Thread
Samples bei Maxim-ic bestellen
Weiss einer, in welchen Mengen bei Maxim samples beziehen kann ? Bei AD sinds immer max. 2 Stueck pro device. Bei Maxim hab ich nichts dergleichen gesehen.
letzten Jahres. Ich hatte über die Jahre klein- bis mittelpreisige Samples im Wert von insgesamt ca. 8000 Euro erhalten. Da läßt es sich verschmerzen, dass ich kürzlich eine Rechung über 1200,- erhielt (allein die zuletzt bestellten Samples kosteten über 500,- ).
-
Thread
EAR Gesetz in Kraft - was bedeutet das in der Praxis ?
anderer Link "Code Mercenaries Forum": http://www.codemercs.com/phpBB2/viewforum.php?f=11&sid=804aed1efde99c2b65118771b0cca0b0 Ansonsten sind hier auch viele Fallbeispiele die sehr nützlich sein können!!! Gruß :)
Welteke. Ehemals höchster Deutscher Beamter, korrupt, verurteilt, aus dem Amt entfernt! Und? Bekommt 8000,00EUR Pension jeden Monat, 13x im Jahr! Und dieser Herr hatte die Frechheit besessen in einem Interview zu sagen, daß ihm 8000,00EUR Pension im Monat zu wenig sind, er dagegen klagen will da ihm mehr
-
Thread
Audiosignal verzögern
dem Telefon entspricht (ISDN hat genau 8 kHz). Du brauchst also für eine Sekunde einen Puffer von 8000 Werten. Dein AVR müßte also mit externem RAM arbeiten, denn meines Wissens gibt's keinen, der intern genügend hat.
Anwendung wäre aber ein Flash-Speicher gnadenloser Overkill; mit einem einfachen 8-kByte-SRAM, 'nem AD- und 'nem DA-Wandler, 'ner Takterzeugung, einem 13-Bit-Binärzähler sowie einer Handvoll Kleinkram lässt sich das Ganze auch "diskret" ohne µC aufbauen.
-
Thread
The Siemens S65 132x176, 65536 color display with AVR
Versucht mal folgende shut down sequence: 0xEF00,0x1B04,0xFEFE,0xFEFE,0x7E04,0xE304,0xE404,0xE201,0x8000,0xE001,0x7F01 5µS (MIN) 0xE000,0x7F01 5µs (MIN) 0x0101 Nach der Sequence werden bei meinem Display alle Pixel weiß, und nach Abschalten der Spannungsversorgung bleibt es unverändert (
ms 0xbc02 -156,335 ms 0xef00 -156,325 ms 0x7f01 -137,892 ms 0xe200 -119,433 ms 0x8000 -119,423 ms 0xe204 -100,970 ms 0xe200 -82,508 ms 0xe100 -64,046 ms 0xefb0 -64,037 ms 0xbc00 -64,028 ms 0xef00 -64,019 ms 0x7f01 -4,027 ms /RESET → low 0,000 ms
-
Thread
Tms320F2812, ADC-Problem
Hallo, habe ein Problem beim AD-Wandeln mit dem TMS320F2812 von TI. Egal welches Eingangssignal auch anliegt, es erscheint in den ADCRESULT Registern immer der Wert 0x8000, manchmal 0x7F80, abgelesen am WatchWindow des CCS. VREFLO
-
Thread
zu langsame Programmausführung bei TMS320F2812 DSP
CCS nicht im Schrittbetrieb sehen, was mit jedem Takt abgearbeitet wird? Ich kann zwar nur für AD sprechen, aber auch dort ist C-Code in meinen Augen eine Katastrophe, weshalb ich in Assembler programmiere. Geh einfach davon aus, dass dir der Compiler unter Umständen einen ordentlichen Overhead
*******************************************/ MEMORY { PAGE 0 : BOOT(R) : origin = 0x3f8000, length = 0x80 PAGE 0 : PROG(R) : origin = 0x3f8080, length = 0x1f80 PAGE 0 : RESET(R) : origin = 0x000000, length = 0x2 PAGE 1 : XINTF6 : origin = 0x100000, length = 0x80000 /
-
Thread
Daten vom ADC in externen Speicher schreiben
Hallo, vielleicht könnt Ihr mir helfen. Möchte die Daten, die ich von einem AD-Wandler kriege, in einen externen 32k Speicher schreiben. Ich benutze den MSC1210Y4, einen µC mit integriertem ADC. Bin mit der Materie aber noch nicht vertraut und finde keine Infos mehr im Netz.
Standard SRAM-Typ. Verdrahtung hört sich gut an. Demnach liegt der extrne Speicher ab Speicheradresse 0x8000 bis 0xFFFF. Wie man den jetzt in C anspricht, weiss ich leider auch nicht.
-
Thread
Informationen zu folgendem Drucksensor
sagte, Piezotechnik scheint sinnvoller. D.h. einen Ladungsverstärker mit hinterhergeschaltetem AD Wandler und einer entsprechenden externen Triggerquelle um den Zeitpunkt zu bestimmen sollte reichen oder? Gruß Malte.
das in Angriff. Aber wenn ihr Infos von Kistler bekommt nur her mit. Angenommen man möchte max. 8000 U/Min dann ist 1° Kurbelwelle 20,8333..µSek in der Zeit sollte der A/D-Wandler also ein Sample hinbekommen. Aber wie heist es so schön "umso mehr desto gut"
-
Thread
Logic Analyzer bauen
Das Teil (XC95144XL10TQG14 ) ist cool, kurze Rechnung: 2x SRAM 256k x 16: 18 AD, 16 DB, 3 Ctrl = 2x 37 I/O = 74 I/O 2x 8-bit-Channel: 16 I/O uC parallel Port: 8 DB, Ctrl (CS_ und R/W_) = 10 I/O 2x Clock (CPLD und uC externer Takt) 2 I/O JTAG 4 I/O Summe
was ich bei AD gefunden habe, war ja schon toll, aber entweder kein Dual-DAC oder keine interne Reference. Imo sind 8-Bit ausreichend, dass sind 32.25mV Auflösung bei 5V max. Schnelligkeit ist eher untergeordnet. Immerhin
-
Thread
Probleme mit 6502 uP
> ZPDATA = $8000 ;zero-page data area Ist das zur gezielten Verwirrung des Lesers gedacht? Den Anfang vom ROM als data area und dann auch noch also zeropage zu bezeichnen? Wenn das LCD ein üblicher HD44780 ist
ein Rest vom alten Programm, das mit Unterprogrammen wie PutString arbeitet. Der ROM beginnt bei $8000 und das ist eigentlich das einzig wichtige, das der Assembler auch richtig umsetzt: .org $8000 0067 FFFC *= $fFFC;Rest Vektor 0068 .DB $00 0069 .DB $80 0070 .DB 12
-
Thread
-
Thread
Filtern durch Rechnen
2kHz, d.h. du hättest bei 16MHz Taktfrequenz des AVRs 8000 Zyklen Zeit je Sample. Wie sollen die Frequenzen wieder ausgegeben werden? An deiner Stelle würde ich eher zu einem IIR-Filter greifen. Bei ordentlicher Dimensionierung erreichst du was den Betrag
digitalen Filter gebacken bekommt. Das braucht naemlich nicht nur einen AVR sondern zudem: ordentlichen AD und einen DA. Bamms! Wenn ich frage ob das mit einem AVR geht kann ich bestimmt die AD und DA Wandler backen. Sicher. b, gar nicht gesagt was er genau will. Also erstmal her mit der genauen App und
-
Thread
linker: symbol referencing errors
Die cmd-Datei sieht folgendermassen aus: MEMORY { PAGE 0 : BOOT(R) : origin = 0x3f8000, length = 0x80 PAGE 0 : PROG(R) : origin = 0x3f8080, length = 0x1f80 PAGE 0 : RESET(R) : origin = 0x3fffc0, length = 0x2 PAGE 1 : M0RAM(RW) : origin = 0x000000, length = 0x400
bekomme aber beim Laden der out-Datei auf den DSP folgende Meldung: ".text 800 of 21270 at 0x3f82ad" und eine Meldng, dass versucht wird, auf einen nicht schreibbaren Speicherbereich zu schreiben. In der Doku von TI http://focus.ti.com/lit/ds/symlink/tms320f2812.pdf findet man auf Seite 29 die
-
Thread
Schnelle FFT in Assembler
die ad s nacheinander auslesen und ausgeben sollte doch möglich sein ?
ja also was spricht dann gegen n externen rom bzw ad ? die 3 sachen wären doch dann die hauptbestandteile der fft platine ! @ape welcher 16bitter AD z.b. @3-4 euro
-
Thread
PIC ICD 2 selbstgebaut
in dem Gerätemanager. Es gibt auch noch diese "icd2w2kl.inf & icd2w2kl.sys" USB\VID_04D8&PID_8000.DeviceDesc="Microchip MPLAB ICD 2 Firmware Loader" Das Layout darfst du gerne einstellen, darf aber bei Eagle die Version 3.55 nicht überschreiten. Gruß Siegfried
Das wird nicht gehen. 2k2 geht natürlich,hat aber oft andere Nachteile. Der Spannungsteiler für den AD-Eingang an ISP-VDD wird bei der Sanierung der VPP-Regelschleife ev. auch noch mal ins Blickfeld kommen. Gruß, HvS