em có cái module thu phát rf 315mh, có 4 kênh, sử dụng ic pt2262 và pt2272 , nhưng em chỉ sử dụng có 1 kênh, em cho nó kết nối với vi điều khiển, khi em muốn sử dụng chức năng này thì em cho vi điều khiển kích ra 5 xung vào bên phát, khi muốn sử dụng chức năng khác thì kích ra 10xung, nhưng chỉ có thế làm được ở khoảng cách gần chứ khoảng cách xa(khoảng 2-3m) thì lại không làm được, bác nào có biết tại sao, hay là có cao kiến gì trong vụ này không, xin giúp em với
Thông báo
Collapse
No announcement yet.
mạch thu phát rf 315m
Collapse
X
-
PT2262/PT2272 mà làm được như vậy thì quá tốt rồi . Sao không dùng Vi điều khiển mà mã hóa/ giải mã luôn lại dùng PT2262/PT2272 ... khổ thế !Nguyên văn bởi quochien9999 Xem bài viếtem có cái module thu phát rf 315mh, có 4 kênh, sử dụng ic pt2262 và pt2272 , nhưng em chỉ sử dụng có 1 kênh, em cho nó kết nối với vi điều khiển, khi em muốn sử dụng chức năng này thì em cho vi điều khiển kích ra 5 xung vào bên phát, khi muốn sử dụng chức năng khác thì kích ra 10xung, nhưng chỉ có thế làm được ở khoảng cách gần chứ khoảng cách xa(khoảng 2-3m) thì lại không làm được, bác nào có biết tại sao, hay là có cao kiến gì trong vụ này không, xin giúp em vớiModule RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com
Comment
-
Vậy là không làm được sao bác, em tưởng đâu dùng pt2262/pt2272 sẽ tốt hơn chứNguyên văn bởi queduong Xem bài viếtPT2262/PT2272 mà làm được như vậy thì quá tốt rồi . Sao không dùng Vi điều khiển mà mã hóa/ giải mã luôn lại dùng PT2262/PT2272 ... khổ thế !
Comment
-
Em mua module cũng bị hiện tượng xung ra ngẫu nhiên như bác. Của em chỉ điều khiển đóng mở thôi.... Em kết nối trực tiếp module thu vào MCU và truyền UART, không mã hóa, tốc độ baud thiết lập 19200, module phát thì dùng nguồn 3V...kết quả là truyền xa được tầm 25m trong môi trường trong nhà có nhiều vật cản.
Nhưng nếu 100m như bác thì chắc khó
Comment
-
cao kiến gì nữa , mấy cái module này truyền theo serial ( bit ) ... thì việc mã hóa/ giải mã là ta đã giải quyết được vấn đề " nhiều chức năng ". Đã nói ở mấy bài trên rồi đó ... không đọc, không làm lại hỏi cao kiến ?Nguyên văn bởi quochien9999 Xem bài viếtkhông biết bác nào có cao kiến gì trong vụ này không nhỉ, chỉ cần 1 kênh ta có thể làm nhiều chức năng khác nhau bằng cách xuất ra số xung khác nhau tùy theo số xung mà ta đã quy ước
cái này là thấp kiến ( kiến thức )
Module RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com
Comment
-
Nguyên văn bởi kurapika312 Xem bài viếtEm mua module cũng bị hiện tượng xung ra ngẫu nhiên như bác. Của em chỉ điều khiển đóng mở thôi.... Em kết nối trực tiếp module thu vào MCU và truyền UART, không mã hóa, tốc độ baud thiết lập 19200, module phát thì dùng nguồn 3V...kết quả là truyền xa được tầm 25m trong môi trường trong nhà có nhiều vật cản.
Nhưng nếu 100m như bác thì chắc khó
Cái này thì tùy vào nhà sản xuất , túi tiền bỏ ra của người mua sản phẩm. Chứ đã RẺ MÀ lại còn TỐT ... thì người VIỆT NAM ai ai cũng thích
Module RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com
Comment
-
Bác QD cho em hỏi cái này với ak. Em mua modul thu phát RF 315mHz. Có các chân D0-D3,GND,VT,VCC. Em kết hợp nó với vi điều khiển (cụ thể là 89S52). Thì từ các chân D0-D3 trước khi đưa vào VDK có cần kích qua tran hay dùng Opto ko, hay đưa trực tiếp. Em nghe nói là khi nhận được tín hiệu từ tay phát thì mức tín hiệu đầu ra D0-D3 từ mức 0v lên mức 5v, thì bên VDK e có treo trở treo có ảnh hưởng gì ko ak. Em cám ơn nhiều ak
Hotmail: tien168bn.utehy@hotmail.com
Gmail: tien168bn.utehy@gmail.com
Comment
-
đưa thẳng vào , trở treo lên 5V hay GND không ảnh hưởng . cẩn thận hơn bạn vẫn có thể sài opto ( lãng phí )Nguyên văn bởi tien168bn Xem bài viếtBác QD cho em hỏi cái này với ak. Em mua modul thu phát RF 315mHz. Có các chân D0-D3,GND,VT,VCC. Em kết hợp nó với vi điều khiển (cụ thể là 89S52). Thì từ các chân D0-D3 trước khi đưa vào VDK có cần kích qua tran hay dùng Opto ko, hay đưa trực tiếp. Em nghe nói là khi nhận được tín hiệu từ tay phát thì mức tín hiệu đầu ra D0-D3 từ mức 0v lên mức 5v, thì bên VDK e có treo trở treo có ảnh hưởng gì ko ak. Em cám ơn nhiều akModule RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com
Comment
-
loại analog video ạ ? bác gửi thông số hay liên lạc qua email bên dưới !Nguyên văn bởi ladykiller Xem bài viếtbác queduong cho em hỏi bên bác có bán module thu phát RF để truyền tín hiệu video của camera trực tiếp mà không cần chuyển ADC không ?Module RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com
Comment
-
Thu phat RF
Anh que duong giúp e vs.
em mới tìm hiểu về thu phát rf nên kiến thức còn hạn chế mong annh chỉ bảo dùm cho.
A xem hộ em 2 phần code thu phát giao tiếp với PIC18F4520 có sai chỗ nào không.mà khi bấm công tắc led lại không sang vậy.
THAK YOU A trc!!!!
/////////////////////////////PHAT://///////////////////////////////////////////
#include<p18f4520.h>
#include<stdio.h>
#include<delays.h>
#include<string.h>
#pragma config OSC=HS
#pragma config WDT=OFF
#pragma config MCLRE=ON
#define M_Data_Out PORTCbits.RC0
// Cac nut bam
#define SW1 PORTDbits.RD0
#define SW2 PORTDbits.RD1
#define SW3 PORTDbits.RD2
void M_Data_Start(); // Truyen 3 byte de lam sach khung truyen
void M_Pulse_Start(); // Truyen 1 bit bat dau khung truyen
void M_Pulse_Finish(); // Truyen 1 bit ket thuc khung truyen
void M_Sent_Bit(unsigned char i); // Ham truyen 1 bit du lieu
void M_Sent_Byte(unsigned char byte); // Ham truyen 1 byte du lieu
void M_Sent_Array(unsigned char *array,unsigned char length); // Ham truyen nhieu byte du lieu
void M_Sent_Frame(unsigned char *data,unsigned char length); // Ham truyen khung truyen
// ------------------END OF FILE-------------
void M_Sent_Bit(unsigned char i)
{
/*
Ma hoa Manchester:
Bit 1 --> 10
Bit 0 --> 01
*/
if(i) // toc do truyen 1K
{
M_Data_Out=1;
Delay100TCYx(25); //delay 500us
M_Data_Out=0;
Delay100TCYx(25);
}
else // toc do truyen 1K
{
M_Data_Out=0;
Delay100TCYx(25);
M_Data_Out=1;
Delay100TCYx(25);
}
}
// ================================================
void M_Data_Start()
{
M_Sent_Byte(0xff);
M_Sent_Byte(0xff);
M_Sent_Byte(0xff);
}
// ================================================
void M_Pulse_Start() // Truyen bit 1 co toc do 4ms de bat dau khung truyen
{
M_Data_Out=1;
Delay1KTCYx(10); //delay 2ms
M_Data_Out=0;
Delay1KTCYx(10);
}
// ================================================
void M_Pulse_Finish() // Truyen bit 1 co toc do 6ms de ket thuc khung truyen
{
M_Data_Out=1;
Delay1KTCYx(15);
M_Data_Out=0;
Delay1KTCYx(15);
}
// ================================================
void M_Sent_Byte(unsigned char byte)
{
unsigned char temp,i;
temp=byte;
for(i=0;i<8;i++)
{
// M_Sent_Bit((temp>>i)&0x01); truyen tu bit thap den bit cao
M_Sent_Bit(temp&(0x80>>i)); // truyen tu bit cao den bit thap
}
}
// ================================================
void M_Sent_Array(unsigned char *array,unsigned char length)
{
unsigned char i;
for(i=0;i<length;i++)
{
M_Sent_Byte(array[i]);
}
}
// ================================================
void M_Sent_Frame(unsigned char *data,unsigned char length)
{
M_Data_Start();
M_Pulse_Start();
Delay100TCYx(25); // luu y
M_Sent_Array(data,length);
M_Pulse_Finish();
}
// ------------------END OF FILE-------------------
void main ()
{
//TRISD=0x00;
char str1[22];
char str2[20];
char str3[20];
unsigned char i=0;
TRISC = 0x00;
TRISD=0xff;
sprintf(str1,"BAT LED 1");
sprintf(str2,"BAT LED 2");
sprintf(str3,"BAT LED 3");
while (1)
{
// Moi phim khi bam duoc gan mot gia tri i khac nhau
if(SW1==0)
{
Delay10TCYx(5); // chong nhieu cho button
if(SW1==0) // neu dung la nut bam
{
i=1;
while(!SW1); // cho cho den khi nut bam duoc tha ra
}
}
if(SW2==0)
{
Delay10TCYx(5);
if(SW2==0)
{
i=2;
while(!SW2);
}
}
if(SW3==0)
{
Delay10TCYx(5);
if(SW3==0)
{
i=3;
while(!SW3);
}
}
if(i==1)
{
Delay1KTCYx(50); //delay 10ms
M_Sent_Frame(str1,15);
}
if(i==2)
{
Delay1KTCYx(50);
M_Sent_Frame(str2,15);
}
if(i==3)
{
Delay1KTCYx(50);
M_Sent_Frame(str3,15);
}
}
}
/////////////////////THU//////////////////////////////////////////
#include<p18f4520.h>
#include<stdio.h>
#include<delays.h>
#include<string.h>
#pragma config OSC=HS
#pragma config WDT=OFF
#pragma config MCLRE=ON
unsigned char M_Get_Start(); // Ham kiem tra de bat dau qua trinh nhan du lieu
unsigned char M_Get_Pulsestart(); // Ham kiem tra bit bat dau khung truyen
unsigned char M_Get_Pulsefinish(); // Ham kiem tra bit ket thuc khung truyen
unsigned char M_Get_Byte(); // Ham nhan 1 byte du lieu
void M_Get_Array(unsigned char *array,unsigned char length); // Ham nhan cac bye du lieu
unsigned char M_Get_Frame(unsigned char *data,unsigned char length); // Ham kiem tra khung du lieu va nhan du lieu duoc truyen den
#define Man_Data_In PORTCbits.RC0
#define led1 PORTCbits.RC1
#define led2 PORTCbits.RC2
#define led3 PORTCbits.RC3
#define RS PORTDbits.RD0
#define RW PORTDbits.RD1
#define EN PORTDbits.RD2
#define LCD_D4 PORTDbits.RD4
#define LCD_D5 PORTDbits.RD5
#define LCD_D6 PORTDbits.RD6
#define LCD_D7 PORTDbits.RD7
unsigned char M_Get_Start()
{
unsigned char i;
if(Man_Data_In)return 0;
else // kiem tra canh xuong
{
Delay10TCYx(5); // chong nhieu
if(!Man_Data_In)
{
while(!Man_Data_In); // cho cho den khi het bit 0
while(Man_Data_In); // cho cho den khi het bit 1 tiep theo
for(i=0;i<22;i++) // neu dung 20 bit 1 thi dung là 3 byte 0xff
{
Delay100TCYx(38); //delay 760us
if(Man_Data_In)
{
while(Man_Data_In);
}
else
{
return 0;
}
}
return 1;
}
}
}
//================================================== ============================
unsigned char M_Get_Pulsestart()
{
unsigned int i;
while(Man_Data_In);
for(i=0;;i++)
{
Delay100TCYx(10); //delay 200us
if(!Man_Data_In) break;
}
if(i<10) return 0;
else if (i>13) return 0;
else return 1;
}
//================================================== ============================
unsigned char M_Get_Pulsefinish()
{
unsigned int i;
while(!Man_Data_In);
while(Man_Data_In);
for(i=0;;i++)
{
Delay100TCYx(10);
if(!Man_Data_In) break;
}
if(i<13) return 0;
else if(i>15) return 0;
else return 1;
}
//================================================== ============================
unsigned char M_Get_Byte()
{
unsigned char data,i;
char rx_bit;
data=0;
for(i=0;i<8;i++)
{
Delay100TCYx(38); //delay 760us
rx_bit=Man_Data_In;
data|
rx_bit&0x01)<<(7-i)); // nhan bit cao truoc
if(rx_bit)
while(Man_Data_In);
else
while(!Man_Data_In);
}
return data;
}
//================================================== ============================
void M_Get_Array(unsigned char *array,unsigned char length)
{
unsigned char i;
for(i=0;i<length;i++)
{
array[i]=M_Get_Byte();
}
}
//================================================== ============================
unsigned char M_Get_Frame(unsigned char *data, unsigned char length)
{
unsigned char stop;
char start;
start=M_Get_Start();
if(!start)return 0; // Kiem tra xem co xung start khong
else // Neu dung xung start
{
while(!M_Get_Pulsestart()); // Kiem tra bit start
M_Get_Array(data,length); // Neu dung bit start thi tien hanh doc du lieu
return 1;
stop = M_Get_Pulsefinish(); // kiem tra bit stop
if(stop)
{
Delay10KTCYx(250); //delay 500ms
return 1;
}
else return 0;
}
}
///LCD4bit....................................
void LCD_Enable(void); //Tao xung Enable LCD
void LCD_Send4Bit(unsigned char Data);//Ham Gui 4 Bit Du Lieu Ra LCD
void LCD_SendCommand (unsigned char command );// Ham Gui 1 Lenh Cho LCD
void LCD_Init ( void );// Ham Khoi Tao LCD
void LCD_Gotoxy(unsigned char x, unsigned char y);// Ham Thiet Lap Vi Tri Con Tro
void LCD_Clear();// Ham Xoa Man Hinh LCD
void LCD_PutChar ( unsigned char c );// Ham Gui 1 Ki Tu Len LCD
void LCD_Puts (unsigned char *s);// Ham Gui 1 Chuoi Ki Tu Len LCD
void delay_us(unsigned int time); // ham delay micro giay
void delay_ms(unsigned int time); // ham delay mili giay
//ham delay us
void delay_us(unsigned int time)
{
unsigned int i;
for(i=0;i<time;i++)
{
;
}
}
//-----------void delay_ms(unsigned char x)------------
void delay_ms(unsigned time)
{
unsigned int i,j;
for(i=0;i<time;i++)
for(j=0;j<125;j++)
{
;
}
}
//Tao Xung
void LCD_Enable(void)
{
EN =1;
delay_us(3);
EN=0;
delay_us(50);
}
//Ham Gui 4 Bit Du Lieu Ra LCD
void LCD_Send4Bit( unsigned char Data )
{
LCD_D4= Data & 0x01;
LCD_D5= (Data>>1)&1;
LCD_D6= (Data>>2)&1;
LCD_D7= (Data>>3)&1;
}
// Ham Gui 1 Lenh Cho LCD
void LCD_SendCommand (unsigned char command )
{
LCD_Send4Bit ( command >>4 );/* Gui 4 bit cao */
LCD_Enable () ;
LCD_Send4Bit ( command ); /* Gui 4 bit thap*/
LCD_Enable () ;
}
// Ham Khoi Tao LCD
void init ( void )
{
LCD_Send4Bit(0x00);
delay_ms(20);
RS=0;
RW=0;
LCD_Send4Bit(0x03);
LCD_Enable();
delay_ms(5);
LCD_Enable();
delay_us(100);
LCD_Enable();
LCD_Send4Bit(0x02);
LCD_Enable();
LCD_SendCommand( 0x28 );
LCD_SendCommand( 0x28 );
LCD_SendCommand( 0x28 ); // giao thuc 4 bit, hien thi 2 hang, ki tu 5x8
LCD_SendCommand( 0x0c); // cho phep hien thi man hinh
LCD_SendCommand( 0x06 ); // tang ID, khong dich khung hinh
LCD_SendCommand(0x01); // xoa toan bo khung hinh
}
void LCD_Gotoxy(unsigned char x, unsigned char y)
{
unsigned char address;
if(!y)
address = (0x80+x);
else
address = (0xc0+x);
delay_us(1000);
LCD_SendCommand(address);
delay_us(50);
}
// Ham Xoa Man Hinh LCD
void LCD_Clear()
{
LCD_SendCommand(0x01);
delay_us(10);
}
// Ham Gui 1 Ki Tu Len LCD
void LCD_PutChar ( unsigned char Data )
{
RS=1;
LCD_SendCommand( Data );
RS=0 ;
}
void LCD_Puts (unsigned char *s)
{
while (*s)
{
LCD_PutChar(*s);
s++;
}
}
void main(void)
{
char str[17];
char str1[16];
char str2[16];
char str3[16];
char chuoi[32];
//PORTD=0xff;
TRISD=0x00;
TRISC=0b00000001;
//sprintf(str1,"BAT LED 1");
//sprintf(str2,"BAT LED 2");
//sprintf(str3,"BAT LED 3");
init();
//sprintf(&message[0],"DH CONG NGHIEP");
//hienthi_chuoi(&message[0]);
LCD_Gotoxy(0,0);
sprintf(&chuoi[0]," WELLCOM TO!!!");
LCD_Puts(&chuoi[0]);
LCD_Gotoxy(0,1);
sprintf(&chuoi[0]," qacdsfsffd");
LCD_Puts(&chuoi[0]);
delay_ms(1000);
LCD_Clear();
LCD_Gotoxy(0,0);
sprintf(&chuoi[0]," /*--TEST RF--*/");
LCD_Puts(&chuoi[0]);
while (1)
{
if(M_Get_Frame(str,17))
{
if(strcmp(str,"BAT LED 1")) led1=1;
if(strcmp(str,"BAT LED 2")) led2=1;
if(strcmp(str,"BAT LED 3")) led3=1;
//if(strcmp(str,"33")) LED3=0;
//if(strcmp(str,"44")) LED3=0;
}
}
}
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Máy đo khuôn mẫubởi vi van phamQuá dễ, Mua cái máy xq quét tòan thân, lấy bàn và khung di chuyển. Tháo đầu xquang ra bán ve chai, mua cái máy siêu âm gắn vào vị trí đầu đèn. Setup máy là chạy chính xác, còn file Setup thì chưa nghĩ ra....
-
Channel: Đo lường và điều khiển dùng máy tính
07-06-2026, 08:49 -
-
Trả lời cho Máy Phun sương tạo ầm Trung Quốc.bởi nguyendinhvanMạch tạo sương là tự dao động.
Mach 555 là đóng mở chu kỳ tần số thấp.
IC 555 giá rẻ, chỉ chạy lên tần số vài trăm ki lô hẹc thôi. Thăng cao hơn là méo dạng rồi tịt.
Mach sương thì dao động tần số tầm 2 mê ga hẹc cơ !...-
Channel: Tâm tình dân kỹ thuật
07-06-2026, 00:09 -
-
bởi nguyendinhvan
Cái máy đo này mắc tiền quá !
Anh em dtvn có giải pháp nào tự chế được không ?...-
Channel: Đo lường và điều khiển dùng máy tính
07-06-2026, 00:00 -
-
bởi nguyendinhvanOi giời.
Thơi buổi PLC rồi, cậu còn hỏi mấy thứ cổ lỗ sĩ này nữa.-
Channel: Tâm tình dân kỹ thuật
06-06-2026, 22:59 -
-
bởi nguyendinhvanChuyện này cũ rồi.
Họ trả lương cho CN, sau đó lại bán hàng thu tiền về. Họ còn cấp các dịch vụ như chỗ ăn ở, quán cafe , giải trí, phương tiện giao thông. Mục đích là thu tối đa số tiền đã chi trả.
Hàng hóa sx ra, chuyển...-
Channel: Tìm mua
06-06-2026, 22:56 -
-
Trả lời cho Yêu thơ mê nhạc, mời các bác vào đây!bởi vi van phambao nhiêu năm quên bẳng đi, là mình còn có 1 chút xíu nghệ thuật bài bản, đã dạy cho con cháu chơi đàn, dù bố mẹ và chúng không xem là quan trọng. Hôm qua ngày bế mạc lớp lá, bỗng dưng thằng cháu ngoại thấy con bé được sơ giới thiệu...
-
Channel: Tâm tình dân kỹ thuật
06-06-2026, 21:58 -
-
bởi ittcChào các anh em, tình hình là mình lo làm ăn không để ý sức khỏe, giờ có chút vấn đề rồi? không biết trên này có anh em nào độ tuổi U35 -> 40 đang có dùng các loại thuốc, thuốc bổ hay thực phẩm chức năng giúp bổ thận tráng dương,...
-
Channel: Tâm tình dân kỹ thuật
05-06-2026, 12:28 -
-
bởi theidiotcatTrong thế giới phần cứng năm 2026, AMD Ryzen 5 7500X3D không chỉ là một cái tên mới, nó là một tuyên ngôn về hiệu suất. Dựa trên các thử nghiệm khắt khe trong môi trường chơi game chuyên nghiệp, con chip này đã chứng minh rằng: bạn không cần...
-
Channel: Đánh giá sản phẩm DTVN
05-06-2026, 10:05 -
-
bởi VinhPham92Chào các bác,
Em vừa dự một cái Odoo Business Show 2026 tuần rồi, ngồi nghe mấy session về tự động hóa sản xuất mà em thấy có vài điểm thấy đáng chia sẻ với mấy anh em làm kỹ thuật ở đây.
Câu hỏi của các doanh nghiệp.
Hôm đấy đi thì các doanh...-
Channel: Lập trình PLC và ứng dụng
05-06-2026, 09:18 -
-
bởi quang4789Mình có cái tay chuyển số chơi game của PXN, hiệu là PXN shifter A7, nó bị lỗi 1 con biến trở chỗ gạt lên xuống dùng để xác định là đang đẩy lên, ở giữa, hay gạt về. Con biến trở này giá trị là 10kOhm, sau khi bị hư thì mình đo chỉ...
-
Channel: Hướng dẫn tìm thông tin linh kiện
03-06-2026, 12:04 -

Comment