AVR RS232 segítség kérés
AVR RS232 segítség kérés
Sziasztok!
Üdvözlöm a fórum látogatóit! Nemrég reggeltem ide, igyekeztem szinte mindent elolvasni, nagyon hasznos dolgok vannak a lapon egy ilyen kezdő számára!
Még csak néhány napja próbálgatom a Diecimila boardot, most vásároltam.
Sok mindent sikerült már kipróbálni, sokat olvastam, de most elakadtam.
Szeretnék a fenti AVR-el összekötni egy Siemens telót, vagy egy Wavecom GSM modemet a 0 (Rx) és 1(Tx) kivezetéseken. Mindkét kivezetésen folyamatosan ott van 5V fesz, ha összekötöm van ECHO, de sem a teló, sem Max232-n keresztül a GSM moden nem áll vele szóba. Külön a tella, a modem is PC terminállal működik, a board az USB - virtual (Com=7) porton szintén végzi a dolgát.
Az alábbi egyszerű dolgot bróbálom: kiküldök egy AT-t, várok vissza egy OK-t, amit kiírok az LCD-re.
Később azt szeretném, hogy AT parancsokkal hívást indítsak egy adott számra, ha bizonyos feltételek megvannak. Egyszerű felügyelet.
Itt van amit próbálgatok:
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 10, 6,7,8,9);
int szam;
void setup()
{
pinMode(0,INPUT);
pinMode(1,OUTPUT);
Serial.begin(9600);
Serial.print("at");
delay(100);
}
void loop()
{
if (Serial.available()) {
delay(100);
lcd.clear();
while (Serial.available() > 0) {
szam = Serial.read();
lcd.write(szam);
}
}
}
Segítséget kérnék, hol találok valami infót erre a témára, a Googlit már két napja nyomom.
Előre is köszi!
Üdvözlöm a fórum látogatóit! Nemrég reggeltem ide, igyekeztem szinte mindent elolvasni, nagyon hasznos dolgok vannak a lapon egy ilyen kezdő számára!
Még csak néhány napja próbálgatom a Diecimila boardot, most vásároltam.
Sok mindent sikerült már kipróbálni, sokat olvastam, de most elakadtam.
Szeretnék a fenti AVR-el összekötni egy Siemens telót, vagy egy Wavecom GSM modemet a 0 (Rx) és 1(Tx) kivezetéseken. Mindkét kivezetésen folyamatosan ott van 5V fesz, ha összekötöm van ECHO, de sem a teló, sem Max232-n keresztül a GSM moden nem áll vele szóba. Külön a tella, a modem is PC terminállal működik, a board az USB - virtual (Com=7) porton szintén végzi a dolgát.
Az alábbi egyszerű dolgot bróbálom: kiküldök egy AT-t, várok vissza egy OK-t, amit kiírok az LCD-re.
Később azt szeretném, hogy AT parancsokkal hívást indítsak egy adott számra, ha bizonyos feltételek megvannak. Egyszerű felügyelet.
Itt van amit próbálgatok:
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 10, 6,7,8,9);
int szam;
void setup()
{
pinMode(0,INPUT);
pinMode(1,OUTPUT);
Serial.begin(9600);
Serial.print("at");
delay(100);
}
void loop()
{
if (Serial.available()) {
delay(100);
lcd.clear();
while (Serial.available() > 0) {
szam = Serial.read();
lcd.write(szam);
}
}
}
Segítséget kérnék, hol találok valami infót erre a témára, a Googlit már két napja nyomom.
Előre is köszi!
Az AT parancsot Serial.println-nel iratnam ki. Ha nincs ott a sor vege (vagy a jo eg tudja, eppen melyik a CR LF parosbol ) karakter, akkor szvsz a telefon/modem bekesen var a folytatasra. Apropo, a sima AT parancsra sima OK-ot kellene kapni? En mindig ATZ paranccsal teszteltem... (ez egy reset modem, vagy mi...)
Tovabba a 9600 baudos sebesseg az helytallo, amikor a tel/modem indul? (azaz a PC terminallal hasznalatkor is ezt a sebesseget allitottad be?)
Tovabba a tel/modemnek nincs veletlenul igenye hardware flow controlra? (azaz a PC terminalban mi van erre beallitva?)
Tovabba a 9600 baudos sebesseg az helytallo, amikor a tel/modem indul? (azaz a PC terminallal hasznalatkor is ezt a sebesseget allitottad be?)
Tovabba a tel/modemnek nincs veletlenul igenye hardware flow controlra? (azaz a PC terminalban mi van erre beallitva?)
Köszi a gyors segítséget!
A küldés serial.println lett, így az ipari modem megszólalt, de a Siemens nem akar. Szerintem az M35i-nek még illesztési problémája van. Az 3,3V-ot vár de az AVR 5V-on működik.
Most az történik, hogy állandó ECHO van, a modem visszaküldi a kapott AT parancsot és pár azonosíthatatlan karakter után hozzáfűzve a választ kiírja az LCD-re. Ha hívom a számot, rendben kiírja a RING-et, de azt is ismeretlen karakterek közé teszi. Olyan mint egy sorminta.
A kommunikáció így létrejött, most jöhet az igazi kód megírása.
A serial.readln nekem nem működik, nem szinezi a parancsot barnára sem.
A küldés serial.println lett, így az ipari modem megszólalt, de a Siemens nem akar. Szerintem az M35i-nek még illesztési problémája van. Az 3,3V-ot vár de az AVR 5V-on működik.
Most az történik, hogy állandó ECHO van, a modem visszaküldi a kapott AT parancsot és pár azonosíthatatlan karakter után hozzáfűzve a választ kiírja az LCD-re. Ha hívom a számot, rendben kiírja a RING-et, de azt is ismeretlen karakterek közé teszi. Olyan mint egy sorminta.
A kommunikáció így létrejött, most jöhet az igazi kód megírása.
A serial.readln nekem nem működik, nem szinezi a parancsot barnára sem.
Még nem halt be, a Siemens mindent kibír szerencsére. Átdugom a szervízkábelre, mindent megcsinál. A fesz osztót már csak holnap próbálom ki.
A readln-t nem fogadja el nekem, csak simán read.
Még a nyelvet szokom, eddig PLC-t próbálgattam, régen Turbo Pascal, mostanában Visual Basic for Applications.
Hatalmas segítség lenne valami működő példa, de sajna nem találok.
Ha elkészül, majd én publikálom és lesz! (remélem)
A readln-t nem fogadja el nekem, csak simán read.
Még a nyelvet szokom, eddig PLC-t próbálgattam, régen Turbo Pascal, mostanában Visual Basic for Applications.
Hatalmas segítség lenne valami működő példa, de sajna nem találok.
Ha elkészül, majd én publikálom és lesz! (remélem)
- zoli_varga
- DrótVégénSzéndarab
- Hozzászólások: 20
- Csatlakozott: 2009. november 9. hétfő, 7:00
Üdv!
Arduinoban használok egy mega168 chippet usbAsp programozóval, mert a programozó hamarább volt meg mint hogy beszereztem volta egy usb rs232 átalakítót.
Viszont most már kommunikációra is szeretném használni a vasat ezért beszereztem egy usb-rs232 átalakítót és egy max232-t. Összeszerelés után a tesztnél olyan furcsaságot tapasztaltam hogy a terminálban fogadott adatok első 3-4 karaktere hibásan jelenik meg míg a többit rendesen írja. profilic chippel szerelt átalakító win7 64bit rendszerben. Tudtok-e ötletet adni hogy a hibát mi okozhatja (chip órajel, zaj, szoftver) ?
Arduinoban használok egy mega168 chippet usbAsp programozóval, mert a programozó hamarább volt meg mint hogy beszereztem volta egy usb rs232 átalakítót.
Viszont most már kommunikációra is szeretném használni a vasat ezért beszereztem egy usb-rs232 átalakítót és egy max232-t. Összeszerelés után a tesztnél olyan furcsaságot tapasztaltam hogy a terminálban fogadott adatok első 3-4 karaktere hibásan jelenik meg míg a többit rendesen írja. profilic chippel szerelt átalakító win7 64bit rendszerben. Tudtok-e ötletet adni hogy a hibát mi okozhatja (chip órajel, zaj, szoftver) ?
- zoli_varga
- DrótVégénSzéndarab
- Hozzászólások: 20
- Csatlakozott: 2009. november 9. hétfő, 7:00
- zoli_varga
- DrótVégénSzéndarab
- Hozzászólások: 20
- Csatlakozott: 2009. november 9. hétfő, 7:00