-         

Ergebnis 1 bis 5 von 5

Thema: Btm 222

  1. #1

    Btm 222

    Anzeige

    Hallo,

    Mein Name ist Yan und habe eine Frage, wenn ihr ein bisschen Zeit für mich habt

    Ich habe eine Schaltung aufgebaut, die aus Mikrocontroller PIC18f2450, BTM 222 besteht. Nach dem Löten wollte ich das BTM konfigurieren. Meine Schaltung ist durch Pickit 3 an meinem Laptop verbunden werden und ich programmiere meine Mikrocontroller durch das Programm MPLAB und benutze dafür C Sprache. Ich habe schon RX und TX Bluetooth mit TX und RX Mikrocontroller verbunden.

    Mein Mikrocontroller und BTM 222 brauchen 3.3 V und wird die Spannung von PICKIT 3 besorgt. PIN 2 und 17 an BTM 222 haben schon 3,3 V und alle Pins, die zu GND sind, sind schon mit GND verbunden und Pin nummer 37 an die Antenne.

    Was ich verstanden habe, dass ich die BT Befehle schicken muss um die Bluetooth zu konfigurieren. Meine Bluetooth in der Schaltung muss Slave sein und will ihn mit anderer Bluetooth verbinden.

    Ich habe schon ein C Code geschrieben aber ich weiss es nicht, dass ich die richtige Reihenfolge gemacht habe oder nicht. wenn ich das Programm in MPLAB laufen lass, kann ich die Bluetooth mit meinem Handy nicht sehen, d.h die Bluetooth funktioniert nicht oder? ich glaube ich habe was vergessen, ich muss noch im Code was schreiben aber ich habe keine Ahnung was ich schreiben muss. In Internet gibt es nicht viele Info. darüber

    Hier ist mein Programm:

    Code:
    #include <stdio.h>
    #include <delays.h>
    #include <usart.h>
    #include <adc.h>
    #include <string.h>
    #include <math.h>
    #include "p18f2450.h"
    #pragma config PLLDIV    = 2     // Divide by 2 (8 MHz oscillator input)
    #pragma config CPUDIV    = OSC3_PLL4    //CPU Clock = 96 MHz/4 = 24 MHz <=> CPUDIV = 4 
    #pragma config USBDIV    = 2     // 96MHz PLL/2 = 48 MHz for USB clock 
    #pragma config FOSC     = HSPLL_HS    // High Speed Crystal / Resonator with PLL enabled
    #pragma config VREGEN    = ON     // USB Internal Voltage Regulator enabled
    #pragma config FCMEN = ON     //Fail-Safe Clock Monitor enabled
    #pragma config IESO = OFF     //Oscillator Switchover mode disabled
    #pragma config PWRT = OFF //Power-up Timer disabled
    #pragma config MCLRE = ON     //MCLR pin enabled, RE3 input pin disabled 
    #pragma config LPT1OSC = OFF    //Disabled, T1 operates in standard power mode
    #pragma config PBADEN = OFF    //PORTB<4:0> pins are configured as digital I/O on Reset 
    #pragma config STVREN = ON     //Stack full/underflow will cause Reset 
    #pragma config LVP = OFF //Single-Supply ICSP disabled 
    #pragma config WDT = OFF     // NO WATCH DOG TIMER
    #define BAUD_RATE_GEN 38
    #define UART_BAUD_RATE 19200 
    
    
    
    
    void main(void)
    {
    int go = 0;
    int i;
    char buffer[20];
    //Defining uC-I/O-pin directions --------------------------------------------
    TRISC=0x80;     //Initialize PORTC, just C7 are used as inputs 
    
    
    //configure USART -----------------------------------------------------------
    OpenUSART(USART_TX_INT_ON & USART_RX_INT_ON & USART_ASYNCH_MODE & USART_EIGHT_BIT & USART_CONT_RX & USART_BRGH_LOW, BAUD_RATE_GEN);
    //
    for(i = 0; i < 10; i++){
    putrsUSART("A"); //Standart baud rate des Bluetooth-Moduls
    Delay10KTCYx(20);
    putrsUSART("T");
    Delay10KTCYx(20);
    putrsUSART("L");
    Delay10KTCYx(20);
    putrsUSART("2");
    Delay10KTCYx(20);
    putsUSART("A"); //Ist ein Slave...
    Delay10KTCYx(20);
    putsUSART("T");
    Delay10KTCYx(20);
    putsUSART("R");
    Delay10KTCYx(20);
    putsUSART("1");
    Delay10KTCYx(20); 
    }
    while(go != 1){
    getsUSART(buffer, 20);
    if(buffer == "Pair with BT_A2B61AA")
    go = 1;
    }
    putsUSART("ATD0"); //Jeder darf eine Verbindung aufbauen
    putsUSART("6624"); //Pincode wird benötigt
    
    
    while(1)
    {
    
    }
    
    
    }//end main
    Am anfag habe ich versucht die Befehle so ATR0 zu schicken und dann habe versucht jede Buchstabe alleine.
    Pin Code 6624 ist für die andere Bluetooth ( Andere Bluetooth ist Master und hat das Passwort 6624) und diese andere Bluetooth wird so programmiert, dass wenn sie eine andere Bluetooth sieht, fragt sie über die Verbindung, deswegen soll ich ATD0 schicken und sofort dann fragt sie über das Passwort.

    Ich hoffe, dass ihr ein bisschen Zeit habt um mir zu helfen und ich bedanke mich im Voraus.

    Gruss,
    Yan
    Geändert von BASTIUniversal (21.06.2011 um 15:05 Uhr)

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    03.04.2005
    Beiträge
    181
    Hallo,
    leider kann ich den Worten kaum einen Sinn entnehmen.

    Deswegen allgemein.
    BTM222 einfach einschalten, d.h. mit Spannung versorgen.
    Nun können BT fähige Gegenstellen ihn finden, z.Bsp ein PC
    Es wird die Pin am PC abgefragt, 2222 ist der Standard.
    Ab jetzt sind BTM222 und PC gekoppelt.
    Wenn man nun auf BTM222 RX TX Pins mit 19200 Baud serielle Daten reinschickt, kommt das am PC auf dem virtuellen COM Port raus
    Das ist alles.

    Wenn man den BTM222 umkonfigurieren will, muß man Befehle an ihn schicken über seine RX TX Pins. Das ist aber nicht völlig trivial.
    In dem Fall hier, ist es aber wohl nicht nötig

    Bernhard

  3. #3
    Danke für deine Antwort Bernhard

    BTM222 einfach einschalten, d.h. mit Spannung versorgen. D.h. wenn ich Spannung an BTM222 anlege, soll ich das mit meinem Handy sehen??
    Ich will BTM222 mit anderen Bluetooth ( Bluetooth eines medizinisches Geräts) verbinden wie mache ich das durch eines Mikrocontroller?

    Danke im Voraus

  4. #4
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    03.04.2005
    Beiträge
    181
    Hallo,
    BTM222 nutzt das SPP Protokoll um die serielle Schnittstelle über Bluetooth zu transportieren.

    Unterstützt denn das andere BT Geräte das SPP Protokoll?
    Wenn nicht, wird es wohl nicht gehen.
    Kopple doch zumindest mal an den PC, um ein Lebenszeichen zu haben.

    Bernhard

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    03.04.2005
    Beiträge
    181
    Oops,
    Standard Pin ist natürlich 1234 und nicht 2222

    Bernhard

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •