那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

單片機C語言雙向通信程序設計

GReq_mcu168 ? 來源:未知 ? 作者:胡薇 ? 2018-11-21 16:33 ? 次閱讀

/*名稱:甲機串口程序

說明:甲機向乙機發送控制命令字符,

甲機同時接收乙機發送的數字,并顯示在

數碼管上。

*/

#include

#defineucharunsignedchar

#defineuintunsignedint

sbitLED1=P1^0;

sbitLED2=P1^3;

sbitK1=P1^7;

ucharOperation_No=0;//操作代碼

//數碼管代碼

ucharcodeDSY_CODE[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

//延時

voidDelayMS(uintms)

{

uchari;

while(ms--)for(i=0;i<120;i++);

}

//向串口發送字符

voidPutc_to_SerialPort(ucharc)

{

SBUF=c;

while(TI==0);

TI=0;

}

//主程序

voidmain()

{

LED1=LED2=1;

P0=0x00;

SCON=0x50;串口模式1,允許接收

TMOD=0x20;//T1工作模式2

PCON=0x00;波特率不倍增

TH1=0xfd;

TL1=0xfd;

TI=RI=0;

TR1=1;

IE=0x90;//允許串口中斷

while(1)

{

DelayMS(100);

if(K1==0)//按下K1時選擇操作代碼0,1,2,3

{

while(K1==0);

Operation_No=(Operation_No+1)%4;

switch(Operation_No)根據操作代碼發送A/B/C或停止發送

{

case0:Putc_to_SerialPort('X');

LED1=LED2=1;

break;

case1:Putc_to_SerialPort('A');

LED1=~LED1;LED2=1;

break;

case2:Putc_to_SerialPort('B');

LED2=~LED2;LED1=1;

break;

case3:Putc_to_SerialPort('C');

LED1=~LED1;LED2=LED1;

break; }

}

}

}

//甲機串口接收中斷函數

voidSerial_INT()interrupt4

{

if(RI)

{

RI=0;

if(SBUF>=0&&SBUF<=9)?P0=DSY_CODE[SBUF];

elseP0=0x00;

}

}

/*名稱:乙機程序接收甲機發送字符并完成相應動作

說明:乙機接收到甲機發送的信號后,根據相應信號控制LED完成不同閃爍動作。

*/

#include

#defineucharunsignedchar

#defineuintunsignedint

sbitLED1=P1^0;

sbitLED2=P1^3;

sbitK2=P1^7;

ucharNumX=-1;

//延時

voidDelayMS(uintms)

{

uchari;

while(ms--)for(i=0;i<120;i++);

}

//主程序

voidmain()

{

LED1=LED2=1;

SCON=0x50;串口模式1,允許接收

TMOD=0x20;//T1工作模式2

TH1=0xfd;

TL1=0xfd;//波特率9600

PCON=0x00;波特率不倍增

RI=TI=0;

TR1=1;

IE=0x90;

while(1)

{

DelayMS(100);

if(K2==0)

{

while(K2==0);

NumX=++NumX%11;//產生0~10范圍內的數字,其中10表示關閉

SBUF=NumX;

while(TI==0);

TI=0;

}

}

}

voidSerial_INT()interrupt4

{

if(RI)//如收到則LED則動作

{

RI=0;

switch(SBUF)//根據所收到的不同命令字符完成不同動作

{

case'X':LED1=LED2=1;break;//全滅

case'A':LED1=0;LED2=1;break;//LED1亮

case'B':LED2=0;LED1=1;break;//LED2亮

case'C':LED1=LED2=0;//全亮

}

}

}

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6043

    文章

    44622

    瀏覽量

    638535
  • C語言
    +關注

    關注

    180

    文章

    7614

    瀏覽量

    137712

原文標題:單片機C語言程序設計:單片機之間雙向通信

文章出處:【微信號:mcu168,微信公眾號:硬件攻城獅】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    單片機原理及c語言程序設計

    0417、C語言程序設計及應用實例單片機C語言應用程序設計
    發表于 08-14 16:31

    求一單片機之間的雙向通信其中要包括點陣顯示的仿真和C語言程序

    各位大神求一單片機之間的雙向通信其中要包括點陣顯示的仿真和C語言程序
    發表于 06-13 19:33

    單片機C 語言的精確延時程序設計

    單片機C 語言的精確延時程序設計
    發表于 05-16 14:50 ?47次下載

    單片機C語言應用程序設計

    單片機C語言應用程序設計針對目前最通用的單片機8051和最流行的程序設計語言——
    發表于 10-09 17:53 ?171次下載
    <b class='flag-5'>單片機</b><b class='flag-5'>C</b><b class='flag-5'>語言</b>應用<b class='flag-5'>程序設計</b>

    單片機C語言程序設計_從零開始學習單片機系列

    【從零開始學習單片機系列】第03章單片機C語言程序設計
    發表于 01-06 17:56 ?0次下載

    PIC單片機C語言程序設計實例精粹

    PIC單片機C語言程序設計實例精粹,非常有用的資料。
    發表于 01-15 17:17 ?98次下載

    單片機C語言程序設計實訓100例

    單片機C語言程序設計實訓100例單片機C語言
    發表于 04-05 16:44 ?73次下載

    AVR單片機C語言程序設計實例精粹程序

    單片機C語言程序設計精要,學習單片機開發的重點,很不錯的資料哦。
    發表于 06-01 10:39 ?10次下載

    基于8051的Proteus仿真-單片機之間雙向通信

    基于8051的Proteus仿真-單片機之間雙向通信
    發表于 09-01 23:33 ?17次下載

    單片機C51語言程序設計基礎的資料合集免費下載

    本文檔的主要內容詳細介紹的是單片機C51語言程序設計基礎的資料合集免費下載包括了:單片機開發概述,構建C
    發表于 03-16 08:00 ?19次下載
    <b class='flag-5'>單片機</b><b class='flag-5'>C</b>51<b class='flag-5'>語言</b><b class='flag-5'>程序設計</b>基礎的資料合集免費下載

    單片機C語言程序設計實例之雙向來回的流水燈

    本文檔的主要內容詳細介紹的是單片機C語言程序設計實例之雙向來回的流水燈免費下載。
    發表于 02-01 16:45 ?14次下載
    <b class='flag-5'>單片機</b><b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>程序設計</b>實例之<b class='flag-5'>雙向</b>來回的流水燈

    使用單片機實現雙機串口雙向通信C語言程序設計實例免費下載

    本文檔主要內容詳細介紹的是使用單片機實現雙機串口雙向通信C語言程序設計實例免費下載。
    發表于 03-30 15:52 ?28次下載

    實現PC單片機雙向通信C語言程序設計實例免費下載

    本文檔的主要內容詳細介紹的是使用單片機實現PC單片機雙向通信C語言
    發表于 03-30 15:52 ?27次下載

    單片機C語言程序設計教程

    單片機C語言程序設計教程免費下載。
    發表于 04-15 11:12 ?78次下載

    基于AT89C51單片機之間雙向通信仿真及代碼

    基于AT89C51單片機單片機之間雙向通信仿真及代碼
    發表于 05-05 10:29 ?17次下載
    大发888婚庆车队| 蓝盾百家乐娱乐场开户注册| SHOW| 百家乐统计软件| 百家乐玩法开户彩公司| 打百家乐官网纯打庄的方法| 真人百家乐官网打法| 大发888官网吧| 百家乐棋牌游戏开发| 澳门百家乐有没有假| 百家乐官网庄闲偏差有多大| 抚宁县| 大发888游戏平台17| 百家乐群sun811| 百家乐官网群详解包杀| 百家乐官网黑牌靴| 邛崃市| 三宝娱乐| 如何看百家乐官网路| 百家乐官网扑克玩法| 博彩网站| 足球平台开户| 大发888亚洲城娱乐城| 威尼斯人娱乐城品牌| 百家乐园云顶娱乐主页| 澳门百家乐怎么赢钱| 百家乐趋势图怎么看| 风水24山读法| 百家乐官网专业赌| 老人头百家乐官网的玩法技巧和规则| 太阳城百家乐官网杀祖玛| 鲁甸县| 辰溪县| 游戏百家乐官网押发| 合法赌博网站| 会昌县| 真人百家乐怎么玩| 百家乐园有限公司| 丽星百家乐的玩法技巧和规则 | 百家乐官网的薇笑打法| 優博百家乐官网客服|