/*********************
程序功能:接收上位機發過來的一個字符串,然后把該字符串發送給上位機,
字符串必須以!結尾
**********************/
#include #define uchar unsigned char #define uint unsigned int sbit LED = P2^7; uchar flag = 0; uchar index = 0; uchar data c[100]; void Delay_ms(uint n) { uchar i; while(n--) for(i = 0;i < 120;i++); } void Send_string(uchar *c) { while(*c != '!') { SBUF=*c; c++; while(TI==0); TI=0; } } void main() { SCON=0x50; //串口模式1,允許接收 TMOD=0x20; //T1工作模式2 TH1=0xF3; //波特率4800 TL1=0xF3; PCON=0x80; //波特率倍增 EA = 1;//開總中斷 ES = 1;//開串口中斷 TR1=1;//開定時器1中斷 while(1) { if((SBUF == '!')&&(flag == 1)) { Send_string(c); LED = ~LED; index = 0; flag = 0; } /* 需要理解雖然 讀取SBUF和寫入SBUF所用的SBUF是不同的,這里可以理解為有兩個SBUF, 一個SBUF_read和一個SBUF_write,當往SBUF中寫數據時SBUF_read不變。 */ } } //串口接收中斷函數 void Serial_INT() interrupt 4 { if(RI==0) return; ES=0; //關閉串口中斷 RI=0; //清接收中斷標志 c[index++]=SBUF; if(SBUF == '!') flag = 1; ES=1; }
上一篇:單片機 軟件延時時間控制
下一篇:【51單片機】(手把手教你)串口通信-基礎篇
推薦閱讀
史海拾趣
隨著市場的不斷變化,明微公司意識到單一業務領域的發展空間有限。于是,公司決定拓展業務領域,實現多元化發展。在保持數字電視芯片領域優勢的同時,明微公司積極進軍數據通信、汽車電子等領域,通過引進優秀人才、加強技術研發,成功推出了一系列具有市場競爭力的新產品。這些新業務的拓展不僅為公司帶來了新的增長點,也進一步提升了公司的市場競爭力。
在Auris公司的發展歷程中,2017年夏天的一次收購事件具有重要意義。Auris以8000萬美元的價格收購了Hansen Medical,這是一家專門開發工具來操控導管的公司。這次收購不僅增強了Auris在手術機器人領域的技術實力,也為其后續的產品研發和市場拓展提供了更多可能性。
FERYSTER公司的創始人在一次國際電子展覽會上,被一款新型半導體芯片技術深深吸引。他意識到這項技術將引領電子行業的新一輪革命。于是,他果斷決定投入大量資金和資源,組建研發團隊,對該技術進行深入研究。經過數年的努力,FERYSTER公司成功掌握了這項技術,并推出了基于該技術的全新產品系列。這些產品以其卓越的性能和穩定性,迅速在市場上取得了成功,為公司的快速發展奠定了堅實基礎。
CTC公司在創立初期便致力于半導體技術的研發。一次偶然的實驗中,公司團隊成功研發出了一種新型的晶體管結構,這一創新使得晶體管的工作效率大大提升,同時降低了能耗。這一技術突破迅速引起了行業的關注,CTC公司的名字開始在電子行業中嶄露頭角。隨著該技術的普及和應用,CTC公司的業務逐漸擴大,奠定了在電子行業的重要地位。
以前我是做龍珠的(DragonBall VZ)軟件的,使用的是uClinux,因為一直使用公司的板子,也就是那塊Motorola的ADS板。覺得上面的東西看起來不是很復雜,因此很想自己做一個龍珠的板子來玩uClinux,但是我不會使用任何一個畫板的軟件,最多也就會使用pr ...… 查看全部問答∨ |
|
RTOS應用程序開發指南,大量實例!!!! 一個自己寫的RTOS,運行起來很不錯,使用與51等RAM,ROM小容量的單片機 轉自 ouravr… 查看全部問答∨ |
|
自己在學習linux 嵌入式開發兩個多月了,主是linux系統移植,和驅動程序開發。本人現在在武漢,希望你在武漢工作。不會占用你太多時間,在你有空的時候指導一下。價錢面議 qq 41013774… 查看全部問答∨ |
|
誰給個串口通信寫進線程的例子(。NET),主要針對里面這個問題,進來說~~ 我最近用.net自帶的serialport類寫的串口通信的程序。對方是一個電子稱,我的是一個PDA(WINCE)。電子稱隨這重量不斷變化,不斷的通過串口向PDA發送數據。看起來就這么簡單。由于連續的發數據,所以我要不段的讀串口的數據。我使用了recevied的事 ...… 查看全部問答∨ |
設計資源 培訓 開發板 精華推薦
- 預約有禮:以光代電,硅光芯片了解一下~ 走進工程師網絡學堂直播,贏好禮
- 第三代半導體如何測試 進階技能備好了!收集能量抽好禮!
- 電源情報站 MPS小程序干貨推薦,下載有好禮!3月活動開始啦~
- 有獎電源小課堂 | PI 1250V高壓氮化鎵芯片
- ADI有獎下載活動之20:基于NDIR和PID的ADI氣體探測器解決方案和新產品
- Digi-key干貨視頻教程來襲,意見領袖講解疑難設計問題,帶你突破成長瓶頸~
- 免費試用Atmel MCU開發板,搶“鮮”體驗優越性能,更有大獎等你拿!
- 看專題答題贏好禮!PI 穩定可靠的TOPSwitch-JX開關電源IC
- 想要更直觀的了解5G?觀看羅德與施瓦茨主題演講,填問卷贏好禮!