Zdravím,
bluetooth jsem rozchodil. Na stisk tlačítek to posílá písmenka. Potřebuji ale aby mi to posílalo hodnoty např. ze slideru… (id a jeho hodnota)Nemáte někdo nějaký vyzkoušený kód? Popřípadně upravte ten můj. Děkuji.
#define F_CPU 8000000 // 1 MHz
#define BAUDRATE 9600
#define MYUBRR F_CPU/16/BAUDRATE-1
#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/delay.h>
#include <string.h>
#include <stdlib.h>
#include "C:\Users\kabli\esp\LCD.h"
void uartInit(unsigned int ubrr) {
// set baud rate
UBRR0H = (unsigned char)(ubrr>>8);
UBRR0L = (unsigned char)ubrr;
UCSR0B = (1<<RXEN0)|(1<<TXEN0)|(1<<RXCIE0);
// set frame format: 8 data bits, 1 stop bit, no parity */
CLKPR = 0b10000000; // set CLKPCE bit to 1
CLKPR = 0b00000000; // set all other bits to 0 => divide by 1
}
unsigned char uartReceive() {
// Wait for byte to be received
while(!(UCSR0A&(1<<RXC0))){
DDRD =0xFF;
PORTD = 0xFF;
};
// Return received data
return UDR0;
}
void uartTransmit(unsigned char data) {
/* Wait for empty transmit buffer */
while ( !( UCSR0A & (1<<UDRE0)) )
;
/* Put data into buffer, sends the data */
UDR0 = data;
}
ISR(USART0_RXC_vect) {
PORTD |= 0x01;
unsigned char rec = uartReceive();
switch (rec) {
case 'A':
//nejaka akce
break;
}
}
int main(void) {
DDRD =0xFF;
PORTD = 0xFF;
DDRE &= ~(1 << PINE0); //PinD7 jako vstup
PORTE |= 1 << PINE0; //Čtení ze vstupu PinD7
DDRE &= ~(1 << PINE1); //PinD7 jako vstup
PORTE |= 1 << PINE1; //Čtení ze vstupu PinD7
DDRA &= ~(1 << PINA7); //PinD7 jako vstup
PORTA |= 1 << PINA7; //Čtení ze vstupu PinD7
// configure the microprocessor pins for the data lines
lcd_D7_ddr |= (1<<lcd_D7_bit); // 4 data lines - output
lcd_D6_ddr |= (1<<lcd_D6_bit);
lcd_D5_ddr |= (1<<lcd_D5_bit);
lcd_D4_ddr |= (1<<lcd_D4_bit);
lcd_E_ddr |= (1<<lcd_E_bit); // E line - output
lcd_RS_ddr |= (1<<lcd_RS_bit); // RS line - output
// initialize the LCD controller as determined by the defines (LCD instructions)
lcd_init_4d();
uint16_t r;
//HCSR04Init();
// initialize the LCD display for a 4-bit interface
uartInit(MYUBRR);
sei();
while(1) {
}
}