Skocz do zawartości
Naelektryzowany

[Kurs] Tworzenie własnej aplikacji Android do sterowania przez Bluetooth Cz. 3

Pomocna odpowiedź

Niestety nie wiem 🙁 Sam posiadam tylko tego HTC z androidem 2.3 i nie zagłębiałem się w temat, no i zresztą nie miałem takiej potrzeby, ani możliwości. Jak dojdziesz o co chodzi i jak rozwiązać problem z przyjemnością uzupełnię kurs, dodając oczywiści Twój nick, bo jeśli na androidzie 4 nie działa, to jest to spory problem.

Udostępnij ten post


Link to post
Share on other sites

Czy można w tym programie odbierać dane które zostaną wysłane przez uP ?

Udostępnij ten post


Link to post
Share on other sites

A co jeśli ktoś nie posiada tego małego bloczku ? Przeszukałem dokładnie wszystko po kilka razy i nie ma 🙁

Udostępnij ten post


Link to post
Share on other sites

Czy ktoś wie skąd można wziąć taką przejściówkę z pionową kreską jak na obrazku?

IMG_5249ddb285d30812.jpg

Bez niej nie da się połączyć z btm.

Udostępnij ten post


Link to post
Share on other sites

Built-in przejdż do Definition i tam znajdziesz "kreseczkę" którą szukasz.

Pozdrowionka.

Udostępnij ten post


Link to post
Share on other sites

Niestety nie mam takiej kategorii jak definition

Udostępnij ten post


Link to post
Share on other sites

Sam tego szukałem.

To powinno zadziałać. Znajdziesz w Control

Udostępnij ten post


Link to post
Share on other sites

Dzięki, udało mi się połączyć telefon z btm 🙂

Udostępnij ten post


Link to post
Share on other sites

Witam. Przede wszystkim dziękuję za tutorial, bo bez niego było by ciężko ruszyć...

Mam kilka pytań:

- czy można stworzyć aplikację tak, żeby z automatu łączyła się z konkretnym urządzeniem (po nazwie lub po MAC)?

- czy można jakoś zmienić PIN w module? - 1234 jest za bardzo standardowy

- czy mógłbym prosić o pomoc w skonfigurowaniu suwaka?

suwak miałby odpowiadać za jasność diody, w arduino mam zmienną i, która odpowiada za jasność, nie wiem jak się za to zabrać, czy suwak miałby wysyłać liczbę, czy może już wysyłać gotową wartość zmiennej

pozdrawiam

Z góry dzięki

Udostępnij ten post


Link to post
Share on other sites

1. Można. W przykładzie łączy się po naciśnięciu guzika. dając to do bloku screen1.initialize zrobi to przy starcie

2. Pin w module to raczej zmienia się podłączając do modułu a nie zdalnie.

3. Jaki masz problem?? wysyłasz przez BT wartość suwaka.

Udostępnij ten post


Link to post
Share on other sites

AD.3, wartości z suwaka nie da się przesłać przez bt bezpośrednio, wyskakuje błąd, że wartość nie mieści się w bajcie.

Udostępnij ten post


Link to post
Share on other sites

Ja robię wiec się da.

Użyj call bluetoothclient1.sendtext

w arduino odbierzesz to bezproblemowo komendą

int wartosc = Serial.parseInt();

Udostępnij ten post


Link to post
Share on other sites

Witam. Jestem początkujący w programowaniu mikroprocesorów. Chciałbym korzystając z tego kursu, na początek móc zapalać diody przez bluetooth. Wykonałem program na telefon, taki jak w przykładzie dla start/stop w robocie, z tą różnicą, że dla przycisku button 1 - włącz diodę wysyłam numer 1, zaś dla button 2 - wyłącz diodę wysyłam 0. Nie wiem jak napisać program na uC. Próbowałem korzystać z przykładowego programu ze strony: mikrokontrolery.blogspot

Przerobiłem go następujaco:

#include <avr\io.h>  
#include <stdio.h>  
#include <avr/interrupt.h>  
#include <util/delay.h>  

//zmienne dot. odbioru danych  
volatile unsigned char odb_x;       //odebrana liczba X  
volatile unsigned char odb_flaga =0;//flaga informująca main o odebraniu liczby  

void usart_inicjuj(void)  
{  
//definiowanie parametrów transmisji za pomocą makr zawartych w pliku  
//nagłówkowym setbaud.h. Jeżeli wybierzesz prędkość, która nie będzie   
//możliwa do realizacji otrzymasz ostrzeżenie:   
//#warning "Baud rate achieved is higher than allowed"  

#define BAUD 19200        //tutaj podaj żądaną prędkość transmisji  
#include <util/setbaud.h> //linkowanie tego pliku musi być   
                          //po zdefiniowaniu BAUD  

//ustaw obliczone przez makro wartości  
UBRRH = UBRRH_VALUE;    
UBRRL = UBRRL_VALUE;  
#if USE_2X  
UCSRA |=  (1<<U2X);  
#else  
UCSRA &= ~(1<<U2X);  
#endif  


//Ustawiamy pozostałe parametry moduł USART  
//U W A G A !!!  
//W ATmega8, aby zapisać do rejestru UCSRC należy ustawiać bit URSEL  
//zobacz także: http://mikrokontrolery.blogspot.com/2011/04/avr-czyhajace-pulapki.html#avr_pulapka_2   
UCSRC = (1<<URSEL) | (1<<UCSZ1) | (1<<UCSZ0);  //bitów danych: 8  
												//bity stopu:  1  
												//parzystość:  brak  
//włącz nadajnik i odbiornik oraz ich przerwania odbiornika  
//przerwania nadajnika włączamy w funkcji wyslij_wynik()  
UCSRB = (1<<TXEN) | (1<<RXEN) | (1<<RXCIE);   
}  

ISR(USART_RXC_vect)  
{  
//przerwanie generowane po odebraniu bajtu  
odb_x = UDR;   //zapamiętaj odebraną liczbę  
odb_flaga = 1; //ustaw flagę odbioru liczby dla main()  
}  

int main(void)  
{  
usart_inicjuj(); //inicjuj moduł USART (RS-232)  
sei();           //włącz przerwania globalne  

DDRC=0xff;

while(1)
{  

	if(odb_x==0x00){PORTC=0x00;}
	if(odb_x==0x01){PORTC=0xff;}

	//czekamy na informację o odebraniu danej nie blokując mikrokontrolera  
	if(odb_flaga)
	{  

		odb_flaga = 0; //zgaś flagę  
	}
}
}

Podsumowując, usunąłem części programu dotyczące nadawania, zmieniłem prędkość BAUD na 19200 i wpisałem w pętli głównej 2 warunki dotyczące diody. Program nie działa, nie mam pojęcia dlaczego. Mógłby ktoś mnie nakierować, jakie błędy popełniłem, bądź też podać linki do jakiś sprawdzonych programów lub opracowań na ten temat? Próbowałem też korzystać z dokumentacji Atmegi 8 (str. 135 i 139 - program bez przerwań gdzie obie opisane funkcje wywoływałem w funkcji głównej programu (tak jak na str. 135 tyle że dodatkowo w pętli dodałem USART_Receive()😉. Mógłby ktoś pomóc? Korzystam z Atmegi8.

Udostępnij ten post


Link to post
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Gość
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.


×
×
  • Utwórz nowe...