在微控制器實際開發的過程中,可能會出現串列埠不夠用的情形。如果你需要更多的串列埠,又無奈於手頭沒有資源更豐富的微控制器,那麼,軟體模擬串列埠通訊也許可以幫到你。
軟體模擬串列埠通訊的主要思想是通過定時器來定時產生相應的波特率。
#include
sbit pin_rxd = p3^0;
sbit pin_txd = p3^1;
bit rxdend =0;
//接收完成標誌
bit rxdortxd =0;
//rxd = 0,txd = 1
bit txdend =0;
//傳送完成標誌
unsigned
char rxdbuf =0;
//資料接收緩衝區
unsigned
char txdbuf =0;
//資料傳送緩衝區
void
configuart
(unsigned
int baud)
;//配置串列埠
void
startrxd()
;//開始接收
void
starttxd
(unsigned
char dat)
;//開始傳送
void
main()
}void
configuart
(unsigned
int baud)
void
startrxd()
void
starttxd
(unsigned
char dat)
void
interrupttimer0
() interrupt 1
else
if(cnt ==9)
else
}else
//接收部分
else
}else
if(cnt <=8)
cnt++;}
else}}
}
別著了 型別推斷 的道
自打.net出了泛型之後,型別推斷 type inference 就變得愈加強大。比如下面的 常規泛型方法 var tuple1 tuple.create int,string 2012,二零一二 泛型方法的自動型別推斷 編譯時 var tuple2 tuple.create 2012,二零一二 以...
Why 許可權不夠「?
x configure bash configure bin sh bad interpreter 許可權不夠 今日,實在是需要編譯程式,沒辦法又搜了大半天,和上次一樣的結果。沒辦法之後自己反覆嘗試了幾次,明明直接敲 sh 就可以執行,咋就是最後還是出錯呢,而且難道我每次都非得敲 sh 更是鬱悶!突...
Why 許可權不夠「?
x configure bash configure bin sh bad interpreter 許可權不夠 今日,實在是需要編譯程式,沒辦法又搜了大半天,和上次一樣的結果。沒辦法之後自己反覆嘗試了幾次,明明直接敲 sh 就可以執行,咋就是最後還是出錯呢,而且難道我每次都非得敲 sh 更是鬱悶!突...