PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   PIC - Thiết kế và Ứng dụng (http://www.picvietnam.com/forum/forumdisplay.php?f=23)
-   -   SIM908 GSM/GPRS + GPS Module (http://www.picvietnam.com/forum/showthread.php?t=13608)

haiduongVui 18-09-2013 12:32 PM

Cần mua lại module sim908
 
chào các bạn!
mình đang làm đồ án về mạch định vị GPS hiển thị tọa độ lên LCD và giao tiếp với máy tính. bạn nào đã từng làm đồ án liên quan tới cái này thì để lại module và phần cứng ccho mình nhé giá cả thỏa thuận :)
mình ở HN. có gì thì liên hệ với mình nhé sđt : 0985230460
cảm ơn đã đọc tin! ^^

hoangsangbk09 20-09-2013 01:16 AM

Trích:

Nguyên văn bởi thienlong1989 (Post 82534)
Em gặp hiện tượng là module sim908 sau một thời gian hoạt động bình thường thì không nhận được tin nhắn nữa mặc dù call đến vẫn thấy connect, đèn led nháy đúng, và khi tháo sim đó ra cho vào máy mobile phone bình thường thì lại nhận được. Nếu đổi sim khác thì sẽ khắc phục được nhưng một thời gian sau gặp hiện tượng trên. Mọi người có lời khuyên gì không ah?

Bởi vì trên SIM của ta chỉ có thể chứa được một số lượng tin nhắn hạn chế( mình nhớ không lầm hình như là khoản 50 tin thì phải. Khi số lượng tin nhắn chứa đầy ngăn xếp thì SIM sẽ không thể nhận được thêm tin mới được. do đó trong code config ta phải thiết lập cho nó tự động xóa ngăn xếp cũ.

mrtamtran 08-10-2013 05:27 PM

Bộ kít GPS, GSM trên SIM908 phát triển cần cho bạn
 
Trích:

Nguyên văn bởi haiduongVui (Post 83012)
chào các bạn!
mình đang làm đồ án về mạch định vị GPS hiển thị tọa độ lên LCD và giao tiếp với máy tính. bạn nào đã từng làm đồ án liên quan tới cái này thì để lại module và phần cứng ccho mình nhé giá cả thỏa thuận :)
mình ở HN. có gì thì liên hệ với mình nhé sđt : 0985230460
cảm ơn đã đọc tin! ^^

Chào bạn ! Mình có 1 bộ kít mua từ Hlab cách đây 2 tháng để học tập và tìm hiểu nghiên cứu làm đồ án.
Thông tin về bộ kít bạn có thể tham khảo tại đây

http://titans.com.vn/index.php?optio...hk=1&Itemid=30

Khi mua thì bạn có các hướng dẫn sử dụng bộ kít 1 cách chi tiết và code demo cho sản phẩm. Ngoài ra, sau khi mua và nghiên cứu sản phẩm trên thì trong quá trình nghiên cứu mình có phát triển được 1 số code mở rộng cho bộ kít. Nếu bạn có hứng thú và muốn tham khảo thì mình sẵn sàng hỗ trợ.
Hiện tại mình đã bảo vệ xong và có nhu cầu nhượng lại bộ kít trên. Nếu bạn còn có nhu cầu muốn tìm hiểu và nghiên cứu thì liên lạc với mình .
Số điện thoại của mình : 01636.567.998

Địa chỉ email: tranminhtam1102@gmail.com
Mình ở Hà nội bạn nhé !

truong1993 29-10-2013 11:26 PM

hiện e đang làm cái đề tài về điều khiển thiết bị điện bằng sim 900.các a cho e biết chân kết nối của 300cz và 900 có khác j ko a.liên tục cho e hỏi là sim300cz và 900 có thể dùng code chung được không ạ.e đang rất cần tài liệu về đề tài này.mong được giúp đỡ.mail của e.xuantruongdt2@gmail.com

diendanxxx 22-11-2013 11:13 PM

Trích:

Nguyên văn bởi longtu (Post 57280)
Vohinh2052,

Bạn sai rồi, không phải tôi tiết mà không đưa lên phần kết nối với MCU. Bạn có thể mỗi bài viết của tôi đều rõ ràng và chi tiết không?...Nếu tiết, tôi đã không post bài lên đây.

Quan điểm của tôi là không có gi gọi là bí mất cả, kiến thức thôi mà. Cần phải cho đi để nhận về nhiều hơn. Rất nhiều bạn trong diễn dàn này cũng email hỏi riêng tôi, tôi đều nói như vậy, rằng các bạn sau khi hoàn thành ứng dụng/đồ án của mình thì hãy chia sẽ lên đây cho các bạn đi sau. Tôi cho rằng, người đi sau có thể kế thừa những gì người đi trước đã làm, rồi từ đó phát triển tiếp cho hoàn thiện hơn...nhưng phải nhớ hãy cùng chia sẽ để cùng nhau tiến bộ.

Trở lại với câu hỏi của bạn: Phần khó nhất là so đồ kết nối cho SIM908 thôi, còn về phần MCU, tùy vào ứng dụng của từng người, từng sãn phẩm...sẽ có 1 sơ đồ kết nối riêng, đâu có ai giống ai được bạn. Bạn là người làm ứng dụng, bạn cần tìm hiểu và chọn lựa MCU cũng như kết nối phần cứng tôi thiểu cho MCU chạy. Hơn nữa, ở đây không phải là luồng nối về MCU.

Trong các bài đã post, tôi cũng nói là việc giao tiếp giữa Sim908 và MCU qua bộ UART(chân TX, RX). Chú ý GPS_TX/RX(Vcc 3.3V) và MCU_TX/RX(Vcc=5V)...(xem lại các bài đã post).

Bạn đã quen với Pic16F887 rồi, tôi cho rằng bạn hoàn toàn có thể sử dụng 1 con PIC khác vì nó cũng tương tự như PIC16F877 mà thôi.
PIC16F877 chỉ có 1 bộ UART, theo tôi sẽ khó khăn cho bạn khi làm với Sim908 đấy. Vì khi bắt đầu làm với SIm908, bạn cần 1 bộ UART giao tiếp với GMS của Sim908 rồi, bạn cần thêm 1 bộ nữa để có thể test/gưi lệnh AT/upload firmware(sử dụng bootloader CCC qua Siow.exe...) rất tiện lợi và nhanh chóng. Hơn nữa giá thành 1 con PIC có 2 bộ UART có thể còn rẽ hơn, nhỏ gọn hơn 16F877 đấy...Tôi sử dung: 18F24K22.

Hiển thị lên LCD: Các chân LCD giao tiếp với chân GPIO của MCU thôi, khong có gì đặt biệt cả. Khi bạn đã lấy được thông tin về tọa độ, bạn có thể hiển thị lên LCD rồi. Cũng chỉ là tương tự như việc hiển thị 1 số đã có sẵn lên LCD mà thôi.

Thân,

thừa kế và phát triển !

greatnew1992 27-11-2013 01:21 AM

ai giải thích hộ mình đoạn code ngắt nhận dữ liệu này được không
#int_rda
void int_uart(void)
{
char c;
c=getc();
switch(c)
{
case 10: index=0; // bat ki tu LF
break;
case 13: check_sms(); // bat ki tu CR
break;
default:
{
buffer_gsm[index]=c;
index++;
}
break;
}
}

greatnew1992 02-12-2013 10:07 AM

minh k dùng rs232 để giao tiếp giữa mcu và moduléim 908 có đc không vậy,không dùng và có dùng thì code có gì khác nhau.ai giup minh với

tranngocthe 22-12-2013 03:39 PM

hoangsangbk09 có thể chỉ mình cách xây dựng chương trình để hiển thị tọa độ lên google map như bạn đã làm không ? cảm ơn !

leanhdung90 24-12-2013 03:15 PM

Trích:

Nguyên văn bởi longtu (Post 55066)
Mình tạo luồn này để nói về Sim908, cách thiết kế phần cứng cũng cách sử dụng.

Các bạn nếu quan tâm đến GPS module thôi thì đọc bài viết này của mình:
http://www.picvietnam.com/forum/showthread.php?p=54876

Sau thời gian tìm hiểu em đã viết chương trình giám sát nhiệt độ và điều khiển thiết bị nhưng không biết bị lỗi gì mà nó không chạy. Anh có thể xem chương trình của em rồi tìm nguyên nhân giúp em với. Gần đến ngày nộp lắm rồi. Em dùng module sim900d giao tiếp với vdk 16f877. điều khiển led ra ở chân C0 C1.
Đây là code của em:
#include <16f877a.h>
#device PIC16F877A*=16 ADC=10
#include <string.h>
#include <lcd_lib_4bit.c>
#fuses nowdt,hs,noput,noprotect,nodebug,nobrownout,nolvp, nocpd,nowrt
#use delay(clock=12000000)
#use fast_io(b)
#use fast_io(e)
#define Led0 PIN_C0
#define Led1 PIN_C1
#use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7,bi ts=8)
char chuoi[90],noidung_sms[20],tu_khoa[20];
int8 dem,i,j,k,new_sms,z,vitri,x,y,adc,f;
/*********** Khai bao ngat nhan noi tiep ***********/
#INT_RDA
void ngat()
{
chuoi[dem]=getc();
if(chuoi[dem]=='')
{
z++;
if(z==2)new_sms=1;
}
dem++;
}
void xuly();
void xuly_sms();
void gsm_config();
void xoa();
void nhiet_do();
void main()
{
enable_interrupts(global);//Cho phep ngat toan cuc
enable_interrupts(int_rda);//Cho phep ngat nhan noi tiep
setup_adc(ADC_clock_internal); // thiet lap tan so lay mau ADC
setup_adc_ports(AN0); // ngo vao A0
set_adc_channel(0); // chan doc gia tri adc bang read_adc()
portd=1;delay_ms(1000);portd=0;delay_ms(1000); //1 led sang
LCD_init(); //khoi tao LCD
Printf(LCD_putchar," DO AN ");
LCD_putcmd(0xC0);Printf(LCD_putchar,"Dang cau hinh ");delay_ms(1000);
gsm_config();//goi chuong trinh con cau hinh Module GSM
LCD_putcmd(0xC0);Printf(LCD_putchar,"Cau hinh xong ");delay_ms(2000);
new_sms=0;
z=0;
while(1)
{
signed int16 x;
signed int16 adc;
int16 y=70; // nhiet do bao dong
x=read_ADC();
adc=x/2; // do C
f=adc*1.8+32; // do F
LCD_putcmd(0x01);// xoa man hinh chi thi
LCD_putcmd(0x80);Printf(LCD_putchar," Nhiet do phong ");
LCD_putcmd(0xC0);Printf(LCD_putchar,"%u",adc);LCD_ putcmd(0xC0+4);Printf(LCD_putchar,"C");
LCD_putcmd(0xC0+8);Printf(LCD_putchar,"%u",f);LCD_ putcmd(0xC0+12);Printf(LCD_putchar,"F");
delay_ms(500);
if(new_sms==1)
{
LCD_putcmd(0x01);// xoa man hinh chi thi
LCD_putcmd(0x80); Printf(LCD_putchar,"Co tin nhan moi ");
LCD_putcmd(0xC0); Printf(LCD_putchar,"Dang xu ly");
xoa();
puts("at+cmgr=1");
delay_ms(500);
xuly_sms();
LCD_putcmd(0x01);// xoa man hinh chi thi
xuly();
trang_thai();
nhiet_do();
delay_ms(200);
puts("at+cmgd=1");
delay_ms(500);
xoa();
delay_ms(500);
}
if(adc>=y) // kiem tra nhiet do cao
{
LCD_putcmd(0x01);// xoa man hinh chi thi
LCD_putcmd(0x80);Printf(LCD_putchar," Nhiet do cao ! ");
LCD_putcmd(0xC0);Printf(LCD_putchar,"Dang goi dien ");
printf("ATD01674577163;");
putc(13);
delay_ms(20000);
puts("ATH");
delay_ms(1000);
printf("AT+CMGS=\"01675491246\"\r\n");
delay_ms(500);
printf("Nhiet do luc nay la:\r\n %u",adc); // gui nhiet do ve may
delay_ms(500);
printf("do C");
delay_ms(500);
putc(26); // ctrl +Z
delay_ms(500);
}

}
void gsm_config()
{
delay_ms(2000);
printf("at\r\n");
delay_ms(500);
printf("at\r\n");
delay_ms(500);
printf("at\r\n");
delay_ms(500);
printf("at\r\n");
delay_ms(500);
printf("ate0\r\n");
delay_ms(500);
printf("at+cmgf=1\r\n");
delay_ms(500);
printf("at+cmgd=1\r\n");
delay_ms(500);
xoa();
delay_ms(500);
}
//+++++++++++++++ xoa +++++++++++++++++//
void xoa()
{
new_sms=0;
z=0;
dem=0;
y=0;
vitri=0;
for(i=0;i<=90;i++) //Xoa chuoi[]
{chuoi=0;}
for(i=0;i<=20;i++) //Xoa noidung_sms[]
{noidung_sms=0;}
}
//+++++++++++++++++++++ xu ly tin nhan ++++++++++++++//
void xuly_sms()
{
y=0;
k=0;
for(i=0;i<=strlen(chuoi);i++)
{
if(chuoi=='\n')
{
k++;
if(k==2)vitri=i+1 ;
}
}
for(x=vitri;x<strlen(chuoi)-8;x++)
{noidung_sms[y]=chuoi[x];
y++ ; // lay noi dung
}
}
//+++++++++++++++ XU LY va DIEU KHIEN +++++++++++++++++++//
void xuly()
{
strcpy(tu_khoa,"On1");
if(strcmp(tu_khoa,noidung_sms)==0)
{
output_bit(Led1,1);
LCD_putcmd(0x80); Printf(LCD_putchar,"Den 1 da mo ");
LCD_putcmd(0xC0); Printf(LCD_putchar,"Gui sms p.hoi");
printf("AT+CMGS=\"01675491246\"\r\n");
delay_ms(500);
printf("den 1 da mo");
delay_ms(500);
putc(26); // ctrl +Z
delay_ms(500);
}
strcpy(tu_khoa,"Off1");
if(strcmp(tu_khoa,noidung_sms)==0)
{
output_bit(Led1,0);
LCD_putcmd(0x80); Printf(LCD_putchar,"Den 1 da tat ");
LCD_putcmd(0xC0); Printf(L CD_putchar,"Gui sms p.hoi");
printf("AT+CMGS=\"01675491246\"\r\n");
delay_ms(500);
printf("den 1 da tat");
delay_ms(500);
putc(26); // ctrl +Z
delay_ms(500);
}
strcpy(tu_khoa,"On2");
if(strcmp(tu_khoa,noidung_sms)==0)
{
output_bit(Led2,1);
LCD_putcmd(0x80); Printf(LCD_putchar,"Den 2 da mo ");
LCD_putcmd(0xC0); Printf(LCD_putchar,"Gui sms p.hoi");
printf("AT+CMGS=\"01675491246\"\r\n");
delay_ms(500);
printf("den 2 da mo");
delay_ms(500);
putc(26); // ctrl +Z
delay_ms(500);
}
strcpy(tu_khoa,"Off2");
if(strcmp(tu_khoa,noidung_sms)==0)
{
output_bit(Led2,0);
LCD_putcmd(0x80); Printf(LCD_putchar,"Den 2 da tat ");
LCD_putcmd(0xC0); Printf(LCD_putchar,"Gui sms p.hoi");
printf("AT+CMGS=\"01675491246\"\r\n");
delay_ms(500);
printf("den 2 da tat");
delay_ms(500);
putc(26); // ctrl +Z
delay_ms(500);
}
}
void nhiet_do()
{
strcpy(tu_khoa,"nhietdo");
if(strcmp(tu_khoa,noidung_sms)==0)
{
LCD_putcmd(0x80); Printf(LCD_putchar,"Kiem tra nhiet ");
LCD_putcmd(0xC0); Printf(LCD_putchar,"do ve dt ");
printf("AT+CMGS=\"01675491246\"\r\n");
delay_ms(500);
printf("Nhiet do luc nay la:\r\n %u",adc); // gui nhiet do ve may
delay_ms(500);
printf("do C");
delay_ms(500);
putc(26); // ctrl +Z
delay_ms(500);
}
}

longtu 31-12-2013 09:54 AM

Sim908
 
Lâu quá không ghé thăm diễn dàn. Tuy nhiên, thấy các bạn trao đổi rất nhiệt tình về luồng này của mình.

Cám ơn các bạn. Hy vọng các bạn nhanh chóng giải quyết được vấn đề của mình.

Thân.

vannguyen4491 24-01-2014 06:10 PM

Các anh ơi cho em hỏi em đang viết 1 chương trình dùng pic 16f877a để thưc hiện lệnh gọi lên module sim nhưng sao mãi không, các anh xem code em viết đúng không, mong các anh giúp đỡ em
#include <16f877a.h>

#device *=16 adc=10
#FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use delay(clock=12000000)
#use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7)
#include <lcd.h>
void main()
{
int8 str[20];
LCD_Init();
delay_ms(10);
LCD_Gotoxy(1,0);
sprintf(str,"gps");
LCD_Puts(str);
delay_ms(1000);
LCD_Clear();
LCD_Gotoxy(1,0);
sprintf(str,"goidien");
LCD_Puts(str);
delay_ms(1000);
LCD_Clear();
while(1)
{
printf("ATD090......;");
putc(13);
delay_ms(20000);
}
}

vanhung4050 27-03-2014 12:31 PM

Chào các anh ,em hiện đang gặp khúc mắc ở chỗ gửi tin nhắn cho nhiều số điện thoại và nội dung tin nhắn muốn chèn 1 dữ liệu (chẳng hạn nhiệt độ) vào thì làm cách nào ạ,em đã đọc kỹ trong manual sim nhưng chưa tìm ra cách
Chân thành cảm ơn các anh

laiquangtuyen 27-03-2014 09:29 PM

Trích:

Nguyên văn bởi vanhung4050 (Post 84257)
Chào các anh ,em hiện đang gặp khúc mắc ở chỗ gửi tin nhắn cho nhiều số điện thoại và nội dung tin nhắn muốn chèn 1 dữ liệu (chẳng hạn nhiệt độ) vào thì làm cách nào ạ,em đã đọc kỹ trong manual sim nhưng chưa tìm ra cách
Chân thành cảm ơn các anh

Bạn đã làm được cái hàm gửi tin nhắn chạy chưa?

vanhung4050 28-03-2014 10:32 AM

Trích:

Nguyên văn bởi laiquangtuyen (Post 84259)
Bạn đã làm được cái hàm gửi tin nhắn chạy chưa?

Mình làm nó gửi tin nhắn được rồi bạn,chỉ chưa biết cách gửi tin nhắn đến nhiều người (chẳng hạn 5) và chèn dữ liệu nhiệt độ vào thôi !
Bạn Tuyên này hồi trước học bách khoa chung với mình thì phải ,khóa 2005

vanhung4050 31-03-2014 02:51 PM

Vẫn chưa làm được và đang cần cao nhân giúp đỡ ạ!


Múi giờ GMT. Hiện tại là 07:26 AM.

Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam