Als «c» getaggte Fragen

C ist eine zwingende (prozedurale) Systemimplementierungssprache. Es wurde entwickelt, um mit einem relativ einfachen Compiler kompiliert zu werden, um einen einfachen Zugriff auf den Speicher zu ermöglichen, um Sprachkonstrukte bereitzustellen, die Maschinenanweisungen effizient zuordnen, und um eine minimale Laufzeitunterstützung zu erfordern. C war daher für viele Anwendungen nützlich, die zuvor in Assemblersprache codiert waren. von http://en.wikipedia.org/wiki/C_(programming_language)

8
Warum ist printf () schlecht für das Debuggen eingebetteter Systeme?
Ich denke, es ist eine schlechte Sache, ein Mikrocontroller-basiertes Projekt mit zu debuggen printf(). Ich kann verstehen, dass Sie keinen vordefinierten Ort für die Ausgabe haben und dass dieser wertvolle Stifte verbrauchen könnte. Gleichzeitig habe ich gesehen, dass Leute einen UART-TX-Pin für die Ausgabe an das IDE-Terminal mit einem benutzerdefinierten …
16 c  debugging 

3
Von C bis zur Montage
Angenommen, wir haben den folgenden C-Code für ein avr-8bit: int v1=1; int v2=2; v2=v2+v1; Ich habe folgendes Zerlegen erwartet ldi r18, 1; ldi r19, 2; add r19, r18; aber nachdem ich gelaufen bin: avr-gcc -mmcu=atmega2560 Test.c -o Test.elf und avr-objdump -S Test.elf > Test.lss Ich habe das folgende zerlegen ldi …
16 avr  c  assembly 

1
Sinus-Signalerzeugung mit PWM
Mit einem MC68HC908GP32- Mikrocontroller kann kein ordnungsgemäßes Sinussignal generiert werden . Die PWM-Beschreibung beginnt ab Seite 349. Die Taktfrequenz beträgt 2,4 MHz, während wir 7 kHz PWM verwendet haben, indem wir den Prescaler verwendet und das Timer-Modulo wie folgt auf 350 eingestellt haben: T1SC = 0x60; // Prescaler: Div entre …
16 microcontroller  c  pwm 

2
STM32F2: Kombination aus Makefile, Linker-Skript und Startdatei ohne kommerzielle IDE
Ich arbeite seit ungefähr zwei Monaten mit einem STM32F2 (speziell dem STM32F217IGH6 auf einer Entwicklungsplatine). Bei weitem mein größtes Problem hatte mit dem "Setup" zu tun, das Makefile, Linker-Skript und Startdatei enthält. Insbesondere konnte ich meine Interrupt-Vektortabelle nicht richtig einrichten und habe Interrupt-Handler aufgerufen. ST bietet Beispiele, die auf kommerzielle …
16 c  stm32  gcc 

4
Implementieren kritischer Abschnitte in ARM Cortex A9
Ich portiere einen älteren Code von einem ARM926-Kern auf CortexA9. Dieser Code ist barmetallisch und enthält keine benutzerdefinierten Betriebssystem- oder Standardbibliotheken. Ich habe einen Fehler, der anscheinend mit einer Rennsituation zusammenhängt, die durch eine kritische Unterteilung des Codes verhindert werden sollte. Ich möchte ein Feedback zu meiner Vorgehensweise, um festzustellen, …
15 c  embedded  interrupts 

3
C Integer Promotion auf 8-Bit-MCUs
Am Beispiel von avr-gcc wird für int-Typen eine Breite von 16 Bit angegeben. Das Ausführen von Operationen mit 8-Bit-Operanden in C führt dazu, dass diese Operanden aufgrund der Ganzzahl-Heraufstufung in C in 16-Bit-Int-Typen konvertiert werden. Bedeutet dies, dass alle 8-Bit-Arithmetikoperationen auf einem AVR viel länger dauern, wenn sie in C …
14 microcontroller  avr  c 

9
Was ist der beste Ansatz beim Schreiben von Funktionen für eingebettete Software, um eine bessere Leistung zu erzielen? [geschlossen]
Geschlossen . Diese Frage ist meinungsbasiert . Derzeit werden keine Antworten akzeptiert. Möchten Sie diese Frage verbessern? Aktualisieren Sie die Frage, damit sie mit Fakten und Zitaten beantwortet werden kann, indem Sie diesen Beitrag bearbeiten . Geschlossen vor 2 Jahren . Ich habe einige Bibliotheken für Mikrocontroller gesehen und deren …


3
Variablendeklaration mit @ in C.
Ich lese einen C-Code und bin auf diese Erklärung im Programm gestoßen: unsigned char serv_ctr @0x0002; Kann mich jemand auf die Dokumentation verweisen oder erklären, wofür "@ 0x0002" im Mplab XC8 v1.35 C-Compiler gedacht ist?
11 c  embedded  mplabx  xc8  variable 

4
Endian-Problem auf STM32
Ich benutze arm gcc (CooCox), um eine STM32F4-Entdeckung zu programmieren, und ich habe mit einem Endian-Problem gerungen Ich probiere mit einem 24-Bit-ADC über SPI. Da drei Bytes eingehen, hatte MSB zuerst die Idee, sie in eine Union zu laden, um sie (ich hoffte jedenfalls!) Ein wenig benutzerfreundlicher zu machen. typedef …
11 c  stm32  cortex-m  gcc 

2
Programmieren Sie das AVR-EEPROM direkt von der C-Quelle
Wenn Sie den folgenden Code in eine AVR C-Quelle aufnehmen, können Sie die Sicherungen anscheinend direkt programmieren, ohne dass ein zusätzlicher Befehl oder eine zusätzliche .hex-Datei erforderlich ist: #include <avr/io.h> FUSES = { .low = LFUSE_DEFAULT , .high = HFUSE_DEFAULT , .extended = EFUSE_DEFAULT , }; Gibt es einen ähnlichen …
11 avr  c  attiny  eeprom 

3
Mikrocontroller Schlaf Race Zustand
Bei einem Mikrocontroller, auf dem der folgende Code ausgeführt wird: volatile bool has_flag = false; void interrupt(void) //called when an interrupt is received { clear_interrupt_flag(); //clear interrupt flag has_flag = true; //signal that we have an interrupt to process } int main() { while(1) { if(has_flag) //if we had an …


1
PIC18F4550 C-Compiler, der Open Source und plattformübergreifend ist?
Ich bin ein langjähriger AVR-Benutzer. Ich mag es wirklich, dass AVR-GCC auf den beiden von mir verwendeten Hauptbetriebssystemen (Mac OS X und Linux) funktioniert, Open Source ist und von Atmel unterstützt wird. Ich würde gerne wieder in die PIC-Programmierung einsteigen (sie wurden in den 90ern verwendet), da es einige ziemlich …
11 pic  c  compiler 

1
Was ist die Anstiegsgeschwindigkeit für I2C?
Ich konfiguriere I 2 C auf einem PIC18 mithilfe der integrierten Funktionen des C18-Compilers, wie in Abschnitt 2.4 der Dokumentation beschrieben : void OpenI2C2( unsigned char sync_mode, unsigned char slew ); Ich bin mir nicht sicher, was ich damit machen soll slew. Ich kann aus zwei Optionen wählen, die definiert …
10 pic  c  i2c  software  c18 

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.