Mình có làm cái Quang Báo sử dụng 8951 và đã sử dụng toàn bộ các cổng của IC, bây giờ mình muốn nhận dữ liệu từ máy tính qua RS232 để điều khiển và hiển thị. Như vậy hai chân RxD và TxD có thể vừa làm Port I/O vừa làm nhiệm vụ trao đổi dữ liệu qua RS232 được không? Các bác có thể chỉ rõ cho mình chút được không? Thanks!
Thông báo
Collapse
No announcement yet.
Hỏi về giao tiếp RS232 ??????????????
Collapse
X
-
Nếu như mình còn dư 2 chân RxD và TxD thì sao? Và mình có cần sử dụng thêm 1 chân nào đó ( khác cổng P3 ) để làm công tắc chuyển từ trạng thái hiển thị dữ liệu sang trạng thái nhận dữ liệu từ CPU và ngược lại không? Hay là có thể làm trực tiếp công việc đó bằng phần mềm? Bạn có thể chỉ cho mình một cái hướng nào đó để giải quyết vấn đề này được không?Học cho lắm, tắm hổng có quần thay
Học cho hay, tắm thay hoài cái quần cũ.
Comment
-
Nguyên văn bởi hamchoiMình có làm cái Quang Báo sử dụng 8951 và đã sử dụng toàn bộ các cổng của IC, bây giờ mình muốn nhận dữ liệu từ máy tính qua RS232 để điều khiển và hiển thị. Như vậy hai chân RxD và TxD có thể vừa làm Port I/O vừa làm nhiệm vụ trao đổi dữ liệu qua RS232 được không? Các bác có thể chỉ rõ cho mình chút được không? Thanks!
còn I/0 thì bạn vô hiệu hóa chức năng này đi
nhưng mạch nên có một số thay đổi
mạch tôi làm tôi thường sử dụng các jumper ,bằng các này thì có thể thay đổi chức năng của mạch dcSHARE KHO PHIM LỚN
Comment
-
Bạn cần quản lý tốt bit RI (có thể thêm TI), tuy nhiên, cách dùng này không tối ưu lắm! Tiết kiệm pin IO thế?
Nếu TxD và RxD rảnh để chỉ thực hiện việc giao tiếp UART thì hình như trong diễn đàn này đã có bài nói về nó rồi đó, bạn chịu khó tìm lại!Last edited by Family; 12-05-2006, 23:05.------------------
------------------
Comment
-
Chào các bạn, mình là người mới sử dụng 8951 nên chưa biết nhiều.
Các bạn có tài liệu của thầy Tăng Văn Cường về vi điều khiển không, file pdf, nếu có các bạn có thể share cho minh với.
Mình đang làm 1 mạch giao tiếp 89C51 với máy tính mà truyền nhận dữ liệu nối tiếp không được. Có sử dụng serial watcher để giao tiếp thử thì chỉ nhận được ký tự 0. mình pó tay rồi.
Đã kiểm tra mạch OK rồi.
Địa chỉ mail của mình: herocdt@yahoo.com
Cám ơn các bạn trước nhé.
Comment
-
Chào các bạn, mình là người mới sử dụng 8951 nên chưa biết nhiều.
Các bạn có tài liệu của thầy Tăng Văn Cường về vi điều khiển không, file pdf, nếu có các bạn có thể share cho minh với.
Mình đang làm 1 mạch giao tiếp 89C51 với máy tính mà truyền nhận dữ liệu nối tiếp không được. Có sử dụng serial watcher để giao tiếp thử thì chỉ nhận được ký tự 0. mình pó tay rồi.
Đã kiểm tra mạch OK rồi.
Địa chỉ mail của mình: herocdt@yahoo.com
Cám ơn các bạn trước nhé.
@all: anh em thử nghĩ xem có dc ko nhé: đầu tiên truyền từ PC xuống, VDK nhận dc dữ liệu thì tức thì chỉnh thanh ghi cho thành cổng I/O ??? cái thằng 8051 này mình bỏ roài nên cũng ko biết chắc có dc ko?
Comment
-
mình đã thử truyền từ máy tính xuống con 89 mà không có ngắt nối tiếp gì hết. Không biết con Max232 có vấn đề gì không.
Minh lập trình bằng VB, khởi động CT ở máy tính trước rồi mới bật 89 lên, sử dụng button để tác động gửi ký tự => không hiện tượng ngắt ( xử lý ngắt nối tiếp để led sáng)
ở dưới là đoạn code mình chạy thử, các bạn xem có sai không nhé:
CT VB
Private Sub Command1_Click()
MSComm1.Output = Trim(Text1.Text)
End Sub
---------
CT C
unigneed chr flagngat;
void ngatnoitiep() interrupt 4
{
flagngat=1;
}
void khoidong()
{
TMOD=0x20;
SCON=0x52;
TH1=0xFD;baund 9600
TR1=1;
EA=1;
P0=0;
P1=0;
P2=0;
}
void main()
{
flagngat=0;
while(1)
{
if(flagngat)
{
led=1;
delay(100);
led=0;
delay(100);
}
}
}
Comment
-
ý quên phần khai báo trong VB:
Private Sub Form_Load()
With MSComm1
.CommPort = 1 'chose COM1
.Settings = "9600,N,8,1" 'baud 9600bps, none parity, 8 bit data, 1 bit stop
.InBufferSize = 1024
.InputLen = 0
.RThreshold = 1
.SThreshold = 0
.OutBufferSize = 512
.InputMode = comInputModeBinary
'.InputMode = comInputModeText
.PortOpen = True
End With
End Sub
Comment
-
Nguyên văn bởi newbite Xem bài viếtmình đã thử truyền từ máy tính xuống con 89 mà không có ngắt nối tiếp gì hết. Không biết con Max232 có vấn đề gì không.
Minh lập trình bằng VB, khởi động CT ở máy tính trước rồi mới bật 89 lên, sử dụng button để tác động gửi ký tự => không hiện tượng ngắt ( xử lý ngắt nối tiếp để led sáng)
ở dưới là đoạn code mình chạy thử, các bạn xem có sai không nhé:
CT VB
Private Sub Command1_Click()
MSComm1.Output = Trim(Text1.Text)
End Sub
---------
CT C
unigneed chr flagngat;
void ngatnoitiep() interrupt 4
{
flagngat=1;
}
void khoidong()
{
TMOD=0x20;
SCON=0x52;
TH1=0xFD;baund 9600
TR1=1;
EA=1;
P0=0;
P1=0;
P2=0;
}
void main()
{
flagngat=0;
while(1)
{
if(flagngat)
{
led=1;
delay(100);
led=0;
delay(100);
}
}
}
cho hàm khoidong() vào mian() đi
email:mahaco@fpt.vn
Comment
-
Nguyên văn bởi newbite Xem bài viếtmình đã cho vô rồi hoctro89 ơi. tại mình quên ghi.
sorry.
Theo bạn thì max232 thường có lỗi gì không?
cần thận trường hợp max232 tèo đó. tôi gặp nhiều rồi
email:mahaco@fpt.vn
Comment
-
Nguyên văn bởi newbite Xem bài viếtmình đã thử truyền từ máy tính xuống con 89 mà không có ngắt nối tiếp gì hết. Không biết con Max232 có vấn đề gì không.
Minh lập trình bằng VB, khởi động CT ở máy tính trước rồi mới bật 89 lên, sử dụng button để tác động gửi ký tự => không hiện tượng ngắt ( xử lý ngắt nối tiếp để led sáng)
ở dưới là đoạn code mình chạy thử, các bạn xem có sai không nhé:
CT VB
Private Sub Command1_Click()
MSComm1.Output = Trim(Text1.Text)
End Sub
---------
CT C
unigneed chr flagngat;
void ngatnoitiep() interrupt 4
{
flagngat=1;
}
void khoidong()
{
TMOD=0x20;
SCON=0x52;
TH1=0xFD;baund 9600
TR1=1;
EA=1;
P0=0;
P1=0;
P2=0;
}
void main()
{
flagngat=0;
khoidong();
while(1)
{
if(flagngat)
{
led=1;
delay(100);
led=0;
delay(100);
}
}
}
if(P2_0)
{
EA=0;
TI=0;
SBUF='A';
While(!TI);
TI=0;
EA=1
}
Comment
-
Nguyên văn bởi hoctro89xxx Xem bài viếtMax232 thường có lỗi: TRUYỀN nhận không đúng data vì sai tốc độ và sai lung tung... tại vì con max232 này chết mà.
cần thận trường hợp max232 tèo đó. tôi gặp nhiều rồi
Comment
Bài viết mới nhất
Collapse
-
bởi nguyendinhvanSau bao năm nghiên cứu cái dtvn. Tôi phát hiện công thức này. Các anh em xem đúng bao nhiêu phần trăm nhé !
Chập thì thay. Cháy thì tháo
Làm thì láo. Báo thì hay
May thì khoe. Rủi thì bỏ
Thành tích nhỏ. Báo thành to
Làm cho có. Báo chi li
Sai cả li. Báo...-
Channel: Tâm tình dân kỹ thuật
hôm nay, 00:35 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi yname11có chắc ko b, màn lcd phải có cao áp mới sáng, màn led thì ko có, ko có cáp chuyển đổi thì lắp thế nào đc ??...
-
Channel: Thiết bị điện tử cá nhân
Hôm qua, 22:31 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi mèomướpDạ ý chú là màn oled ấy ạ. Cùng chuẩn lvds cùng độ phân giải thì cắm được ạ. Còn nó mà khác thì hơi khó vì oled các điểm ảnh nó tự phát sáng chứ ko dùng đèn nền như lcd. Cháu chỉ biết đến vậy thôi ạ. Chú muốn nghịch phải tự tìm hiểu kỹ trước khi mua thôi, khó mà ông thợ nào tư vấn vụ này...
-
Channel: Thiết bị điện tử cá nhân
Hôm qua, 22:14 -
-
Trả lời cho Tự làm máy đo Cuộn cảmbởi bacthoHay đấy bạn ạ. Đây có thể hiểu là máy đo cuộn dây. Tiện đây xin cho hỏi bạn có hiểu rõ về máy nạp rôm pcb 45 của hãng thiên minh không giúp mình cách cài fw của nó với vì mình vừa được anh bạn cho nhưng lại không biết cài fw nên chưa dùng được. Nếu có thể thì bạn giúp mình với...
-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 21:48 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi yname11màn của mình là LCD , giờ m muốn mua màn LED để thay thế (ko muốn dùng màn LCD nữa) , lên muốn hỏi xem có cáp chuyển đổi nào có thể cắm đc màn LED vào ko , tất nhiên phải có cùng số chân pin với màn cũ rồi . VD: màn cũ là lcd mỏng , 40 pin...
-
Channel: Thiết bị điện tử cá nhân
Hôm qua, 21:43 -
-
Trả lời cho các bạn giúp mình về file HEX với!!!bởi bacthoBạn vào trang phuclanshop.com ,tìm đến góc kỹ thuật. Tác giả vương khánh hưng nói rất rõ về điều bạn tìm...
-
Channel: Vi điều khiển họ 8051
Hôm qua, 21:21 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi mèomướpDạ màn hình lcd đều có thể lai cấy cho nhau được hết ạ. Các loại cáp, bo mạch chuyển đổi lvds rất nhìu, với dòng sony còn phải nhổ cả chip nhớ của main cũ đưa lên gỗ thì mới lắp sang máy khác đc, chưa kể các bệnh về màu... ngay cả...
-
Channel: Thiết bị điện tử cá nhân
Hôm qua, 20:43 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi yname11Màn của e là LCD , e muốn thay thế bằng màn led thì có cáp chuyển đổi nào thực hiện đc việc đó ko nhỉ, nếu có bác mách e với....
-
Channel: Thiết bị điện tử cá nhân
Hôm qua, 16:34 -
-
bởi bqvietServo cuối cùng vẫn chỉ là điều chỉnh tốc độ và đọc phản hồi vị trí
Qua cổng song song LPT cổ
https://www.electronicsforu.com/elec...eed-controller
Qua cổng USB - xem thêm đám FT232RL-
Channel: Điện tử công nghiệp
22-11-2024, 15:56 -
Comment