標題:
初學(xué)單片機同步通信 大俠,幫忙找找問題
[打印本頁]
作者:
linan_111linan
時間:
2025-6-8 11:51
標題:
初學(xué)單片機同步通信 大俠,幫忙找找問題
初學(xué)同步通信,幫忙找找出什么問題了?為什么接收不到數(shù)據(jù)。
#include <reg51.h>// 延時函數(shù),用于控制發(fā)送頻率
void delay(unsigned int time) {
unsigned int i, j;
for(i = 0; i < time; i++)
for(j = 0; j < 120; j++);
}
void main() {
unsigned char switch_data;
// 配置串口為方式0(同步移位寄存器方式)
SCON = 0x00; // SM0=0, SM1=0, 方式0
// ES=1;
// EA=1;
while(1) {
// 讀取P1端口的開關(guān)狀態(tài)
switch_data = P1;
// 發(fā)送數(shù)據(jù)
SBUF = switch_data;
// 等待發(fā)送完成(TI置位)
while(!TI);
TI = 0; // 清除發(fā)送完成標志 // 適當(dāng)延時,避免頻繁發(fā)送
delay(5000);
}
}
#include <reg51.h>void main() {
// 配置串口為方式0(同步移位寄存器方式),并使能接收
SCON = 0x10; // SM0=0, SM1=0, REN=1(允許接收)
REN=1;
// ES=1;
// EA=1;
while(1) {
// 等待接收完成(RI置位)
while(!RI);
// 將接收到的數(shù)據(jù)輸出到P1端口控制LED
P1 = SBUF;
// 清除接收完成標志,準備下一次接收
RI = 0;
}
}
1.png
(66.85 KB, 下載次數(shù): 0)
下載附件
2025-6-8 11:48 上傳
作者:
紅花無常
時間:
2025-6-9 09:10
是不是接線錯了?甲機的RX應(yīng)該接乙機的TX,甲機的TX應(yīng)該接乙機的RX
作者:
haiyang201
時間:
2025-6-9 09:24
你這接法都有問題,RX接TX,TX接RX才對, 你這接法怎么能通訊呢
作者:
zsyzdx
時間:
2025-6-11 09:51
第一:硬件的接線錯了,上面的壇友已經(jīng)回復(fù)了;第二:程序建議用中斷的形式,很多開發(fā)板都有模板,在中斷里面去接收數(shù)據(jù)。
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1