«c» etiketlenmiş sorular

C, zorunlu (prosedürel) sistem uygulama dilidir. Nispeten basit bir derleyici kullanılarak derlenecek, belleğe düşük düzeyde erişim sağlayacak, makine talimatlarına verimli bir şekilde eşleşen dil yapıları sağlayacak ve minimum çalışma zamanı desteği gerektirecek şekilde tasarlanmıştır. Bu nedenle C, önceden montaj dilinde kodlanmış birçok uygulama için kullanışlıdır. http://en.wikipedia.org/wiki/C_(programming_language)

8
Printf () neden gömülü sistemlerde hata ayıklamak için kötü?
Mikrodenetleyici tabanlı bir projede hata ayıklamaya çalışmak kötü bir şey printf(). Çıktı için önceden tanımlanmış bir yeriniz olmadığını ve değerli pimleri tüketebileceğini anlayabiliyorum. Aynı zamanda insanların özel bir DEBUG_PRINT()makro ile IDE terminaline çıkış için bir UART TX pin kullandığını gördüm .
16 c  debugging 

3
C'den Meclise
Bir avr-8bit için aşağıdaki C koduna sahip olduğumuzu varsayalım: int v1=1; int v2=2; v2=v2+v1; Aşağıdaki sökülmeyi bekledim ldi r18, 1; ldi r19, 2; add r19, r18; ama koştuktan sonra: avr-gcc -mmcu=atmega2560 Test.c -o Test.elf ve avr-objdump -S Test.elf > Test.lss Aşağıdaki parçalara ayırdım ldi r24, 0x01 ; 1 ldi r25, …
16 avr  c  assembly 

1
PWM kullanarak sinüs sinyali üretimi
Bir MC68HC908GP32 mikrodenetleyici kullanarak sinüs sinyali doğru şekilde üretemiyoruz . PWM açıklaması sayfa 349'da başlar. Saat frekansı 2.4MHz iken, ön ölçekleyiciyi kullanarak ve zamanlayıcı modulo'unu 350'ye aşağıdaki gibi ayarlayarak 7 kHz PWM kullandık: T1SC = 0x60; // Prescaler: Div entre 64 //Counter modulo = 0x015E = 350 T1MODH = 0x01; …
16 microcontroller  c  pwm 

2
STM32F2: Ticari IDE'siz Makefile, bağlayıcı komut dosyası ve başlangıç ​​dosyası kombinasyonu
Yaklaşık iki aydır bir STM32F2 (özellikle bir geliştirme kartında STM32F217IGH6) ile çalışıyorum. Şimdiye kadar benim en büyük sorunum makefile, linker komut dosyası ve başlangıç ​​dosyası içeren "kurulum" ile ilgiliydi. Özellikle, kesinti vektör tablomu düzgün bir şekilde ayarlayamadım ve kesinti işleyicileri çağırdım. ST, ticari IDE'lere uyarlanmış örnekler sunmaktadır. Bunun yerine, GCC …
16 c  stm32  gcc 

4
ARM Cortex A9 üzerinde kritik bölümler nasıl uygulanır
Bir ARM926 çekirdeğinden CortexA9'a bazı eski kodları taşıyorum. Bu kod baremetaldir ve tümü özel olan bir işletim sistemi veya standart kitaplıklar içermez. Kodun kritik bölüm tarafından engellenmesi gereken bir yarış durumu ile ilgili gibi görünen bir hata yaşıyorum. Kritik bölümlerimin bu CPU için doğru bir şekilde uygulanıp uygulanamayacağını görmek için …
15 c  embedded  interrupts 

3
8-bit MCU'larda C Tamsayı Tanıtımı
Örnek olarak avr-gcc kullanıldığında int türlerinin 16 bit genişliğinde olduğu belirtilir. C'de 8 bit işlenenlerde işlem yapılması, C'de tamsayı yükselmesi nedeniyle işlenenlerin 16 bit int türlerine dönüştürülmesiyle sonuçlanır. Bu, bir AVR'deki 8 bitlik aritmetik işlemlerin tümünün, C C'nin tamsayı tanıtımı nedeniyle mecliste yazılmışsa?
14 microcontroller  avr  c 

9
Daha iyi performans elde etmek için gömülü yazılım için işlev yazarken en iyi yaklaşım nedir? [kapalı]
Kapalı . Bu soru görüş temelli . Şu anda cevapları kabul etmiyor. Bu soruyu geliştirmek ister misiniz? Bu yayını düzenleyerek gerçekler ve alıntılarla yanıtlanabilmesi için soruyu güncelleyin . 2 yıl önce kapalı . Mikrodenetleyiciler için bazı kütüphaneleri gördüm ve işlevleri bir seferde bir şey yapıyor. Örneğin, böyle bir şey: void …

6
Gömülü sistemlerde kesinti kullanırken global değişkenlerden kaçınma
Küresel değişkenlerden kaçınan gömülü bir sistem için bir ISR ile programın geri kalanı arasında iletişim kurmanın iyi bir yolu var mı? Genel örüntü, ISR ve programın geri kalanı arasında paylaşılan ve bir bayrak olarak kullanılan küresel bir değişkene sahip olmak gibi görünüyor, ancak küresel değişkenlerin bu kullanımı bana tahılda gidiyor. …

3
C'de @ ile değişken bildirim
Bazı C kodu okuyorum ve programda bu beyanı rastladı: unsigned char serv_ctr @0x0002; Birisi beni belgelere yönlendirebilir veya Mplab XC8 v1.35 C derleyicisindeki "@ 0x0002 " ne için olduğunu açıklayabilir mi?
11 c  embedded  mplabx  xc8  variable 

4
STM32'de Endian sorunu
Kol gcc (CooCox) bir STM32F4discovery programlamak için kullanıyorum ve bir endian sorunu w / güreş SPI üzerinden 24 bitlik ADC ile örnek alıyorum. Üç bayt geldiğinden, MSB ilk önce onları (daha önce umuyorum!) Kullanımı biraz daha kolay hale getirmek için bir sendikaya yükleme fikrim vardı. typedef union { int32_t spilong; …
11 c  stm32  cortex-m  gcc 

2
AVR EEPROM'u doğrudan C kaynağından programlayın
Aşağıdaki kodu bir AVR C kaynağına eklediğinizde, ekstra bir komut veya .hex dosyasına ihtiyaç duymadan sigortaları doğrudan programlayabilirsiniz: #include <avr/io.h> FUSES = { .low = LFUSE_DEFAULT , .high = HFUSE_DEFAULT , .extended = EFUSE_DEFAULT , }; EEPROM'daki değerleri programlamak için benzer bir hile var mı? /usr/lib/avr/include/avr/fuse.hBir makro hakkında bazı yorumları …
11 avr  c  attiny  eeprom 

3
Mikrodenetleyici Uyku Yarışı Durumu
Aşağıdaki kodu çalıştıran bir mikro denetleyici verildi: 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 interrupt { has_flag …

6
PIC16 çoklu görev RTOS çekirdeğimin çalışmamasının nedeni nedir?
PIC x16 mikrodenetleyicileri için yarı önleyici (kooperatif) bir RTOS oluşturmaya çalışıyorum. Benim içinde önceki soruya, ben donanım yığın işaretçisi erişen bu çekirdeklerinde mümkün olmadığını öğrendik. PIClist'teki bu sayfaya baktım ve C kullanarak uygulamaya çalışıyorum. Derleyicim Microchip XC8 ve şu anda yapılandırma bitlerinde 4MHz dahili RC osilatörü seçilmiş bir PIC16F616 üzerinde …

1
Açık kaynaklı ve çapraz platformlu PIC18F4550 C-derleyicisi?
Uzun zamandır AVR kullanıcısıyım. AVR-GCC'nin kullandığım iki ana işletim sisteminde (Mac OS X ve Linux) çalışmasını, açık kaynak olmasını ve Atmel tarafından desteklenmesini gerçekten seviyorum. PIC programlamaya geri dönmek istiyorum (90'larda kullandım), çünkü PIC18F4550 sınıfı cips gibi oldukça iyi PIC'ler var. Ne yazık ki, PIC18'lerin tüm derleyicileri sadece Windows ve …
11 pic  c  compiler 

1
I2C için dönüş hızı nedir?
Belgelerin 2.4 bölümünde açıklandığı gibi C18 derleyicisinin yerleşik işlevlerini kullanarak bir PIC18 üzerinde I 2 C yapılandırıyorum : void OpenI2C2( unsigned char sync_mode, unsigned char slew ); Ne yapmam gerektiğinden emin değilim slew. Ben tanımlanmış iki seçenek arasından seçim yapabilirsiniz i2c.h: SLEW_OFF: 100 kHz modu için dönüş hızı devre dışı …
10 pic  c  i2c  software  c18 

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.