Preguntas con etiqueta 'c'

4
respuestas

Problemas con la conversión PIC A / D

Estoy intentando leer la señal analógica para una especie de mouse con un controlador pic18f14k50. Aquí el circuito simple: enlace . Tengo que leer la señal analógica del puerto del circuito AN9. La función principal lee desde el puerto y par...
3
respuestas

¿Cómo leer todos los datos enviados a USART con interrupción?

Actualmente puedo leer byte por byte de USART con este código ISR(USART_RX_vect) { cli(); while(!(UCSR0A&(1<<RXC0))){}; // clear the USART interrupt received = UDR0; if(pinState == 0) { OCR2A = rece...
3
respuestas

Comportamiento extraño o extraño: uint8_t en for loop en avr MCU

Estoy aprendiendo a programar MCU con c Estoy usando atmel studio 7, averdude, USBasp y Atmega16a este es mi código #define F_CPU 1000000 #include <avr/io.h> #include <util/delay.h> int main(void) { DDRA = 0xff; DDRC = 0xf...
2
respuestas

Teensy USB Interrupts

Estoy tratando de aprender acerca de las interrupciones utilizando una de las tarjetas Teensy USB . Tiene un chip AVR AT90USB1286 en él. Estoy usando el código a continuación, y espero que se llame a mi bloque ISR y parpadee periódicamente el L...
3
respuestas

Escribir en los pines en un puerto sin afectar a otros pines en ese puerto

Estoy emitiendo un número de 6 bits en PORTA (RA0-RA5), ¿cómo escribo en esos bits sin desordenar lo que ya está en RA6 y RA7? Por ejemplo, si quiero generar 0x3F en los bits RA0-RA5. Si utilizo PORTA = 0x3F; , la salida 00111111 se bor...
4
respuestas

void loop se ejecuta incluso cuando el bucle while dentro es verdadero en arduino

Hice una aplicación móvil simple para enviar LED_ON o LED_OFF cuando se hace clic en un botón. En el código a continuación, el bucle while no se completa completamente durante la ejecución, pero el controlador va al void loop () y continúa desde...
3
respuestas

Uso de la directiva del compilador #pragma pack (1) en aplicaciones integradas

Recientemente he encontrado esta directiva de preprocesador #pragma pack (1) y me preguntaba por qué se está utilizando. Busqué en Google el uso y descubrí que tiene otras opciones como push, pop, etc. ¿Alguien lo ha usado en su aplicación in...
1
respuesta

STM32 Semihosting - SIGTRAP recibido cuando se llama a printf

Siga esta guía aquí ( enlace ) para obtener información sobre el funcionamiento del STM32F103. Básicamente, mi objetivo es hacer que printf funcione a través de JTAG (ST-Link / v2). El único cambio de la guía fue que _sbrk estaba buscando "fi...
3
respuestas

¿Cómo reducir al mínimo el código de interrupción?

Tengo un poco de interrupción, digamos desde UART para hacer un ejemplo real: void USART2_IRQHandler(void) { int i = 0; if(USART_GetITStatus(USART2, USART_IT_RXNE) != RESET) { static uint8_t cnt = 0; char t = USART_...
3
respuestas

¿Por qué la función malloc de mi atmega32 me devuelve la dirección del puntero en múltiplo de 4?

Estoy en una fase de aprendizaje, por lo que no soy un profesional a la hora de entender la memoria y, por lo tanto, me cuesta un poco entender algunas cosas La hoja de datos de atmega32 dice que viene con 2K de SRAM ¿Cómohaceesto2k? Cuan...