Perguntas com a marcação «c»

C é uma linguagem de implementação de sistemas imperativa (processual). Ele foi projetado para ser compilado usando um compilador relativamente simples, para fornecer acesso de baixo nível à memória, fornecer construções de linguagem que mapeiam eficientemente as instruções da máquina e exigir suporte mínimo em tempo de execução. C foi, portanto, útil para muitos aplicativos que anteriormente eram codificados em linguagem assembly. de http://en.wikipedia.org/wiki/C_(programming_language)

8
Por que printf () é ruim para depurar sistemas incorporados?
Eu acho que é uma coisa ruim tentar depurar um projeto baseado em microcontrolador usando printf(). Entendo que você não tem um local predefinido para saída e que isso pode consumir pinos valiosos. Ao mesmo tempo, vi pessoas consumindo um pino UART TX para enviar para o terminal IDE com …
16 c  debugging 

3
De C para montagem
Suponha que tenhamos o seguinte código C para um avr-8bit: int v1=1; int v2=2; v2=v2+v1; Eu esperava o seguinte desmontar ldi r18, 1; ldi r19, 2; add r19, r18; mas depois eu corri: avr-gcc -mmcu=atmega2560 Test.c -o Test.elf e avr-objdump -S Test.elf > Test.lss Eu tenho o seguinte desmontar ldi …
16 avr  c  assembly 

1
Geração de sinal senoidal usando PWM
Não conseguimos gerar um sinal senoidal adequadamente usando um microcontrolador MC68HC908GP32 . A descrição do PWM começa na página 349. A frequência do relógio é de 2,4 MHz, enquanto usamos o PWM de 7 kHz usando o prescaler e configurando o módulo do temporizador para 350 da seguinte maneira: T1SC …
16 microcontroller  c  pwm 


4
Como implementar seções críticas no ARM Cortex A9
Estou portando algum código legado de um núcleo ARM926 para o CortexA9. Esse código é baremetal e não inclui um SO ou bibliotecas padrão, todas personalizadas. Estou com uma falha que parece estar relacionada a uma condição de corrida que deve ser evitada pelo corte crítico do código. Quero alguns …
15 c  embedded  interrupts 

3
Promoção de número inteiro C em MCUs de 8 bits
Usando o avr-gcc como exemplo, os tipos int são especificados para ter 16 bits de largura. Executar operações em operandos de 8 bits em C resulta na conversão desses operandos em tipos int de 16 bits devido à promoção de números inteiros em C. Isso significa que todas as operações …
14 microcontroller  avr  c 



3
Declaração variável com @ em C
Estou lendo um código C e me deparei com esta declaração no programa: unsigned char serv_ctr @0x0002; Alguém pode me indicar documentação ou explicar para que serve o "@ 0x0002" no compilador Mplab XC8 v1.35 C?
11 c  embedded  mplabx  xc8  variable 

4
Problema Endian no STM32
Estou usando arm gcc (CooCox) para programar uma descoberta STM32F4, e estou lutando com um problema endian Estou amostrando com um ADC de 24 bits via SPI. Como três bytes estão chegando, primeiro o MSB teve a idéia de carregá-los em uma união para torná-los (eu esperava!) Um pouco mais …
11 c  stm32  cortex-m  gcc 

2
Programar AVR EEPROM diretamente da fonte C
Quando você inclui o seguinte código em uma fonte do AVR C, aparentemente pode programar diretamente os fusíveis, sem a necessidade de um comando extra ou arquivo .hex: #include <avr/io.h> FUSES = { .low = LFUSE_DEFAULT , .high = HFUSE_DEFAULT , .extended = EFUSE_DEFAULT , }; Existe um truque semelhante …
11 avr  c  attiny  eeprom 

3
Microcontrolador Sleep Race Condition
Dado um microcontrolador que está executando o seguinte código: 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 …


1
PIC18F4550 C-compilador de código aberto e plataforma cruzada?
Eu sou um usuário AVR de longa data. Eu realmente gosto do AVR-GCC funcionar nos dois principais sistemas operacionais que eu uso (Mac OS X e Linux), é de código aberto e é suportado pela Atmel. Gostaria de voltar à programação PIC (usada nos anos 90), pois existem alguns PICs …
11 pic  c  compiler 

1
Qual é a taxa de variação do I2C?
Estou configurando I 2 C em um PIC18 usando as funções internas do compilador C18, conforme descrito na seção 2.4 da documentação : void OpenI2C2( unsigned char sync_mode, unsigned char slew ); Não tenho certeza do que devo fazer slew. Eu posso escolher entre duas opções, definidas em i2c.h: SLEW_OFF: …
10 pic  c  i2c  software  c18 

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.