欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 51單片機通過串口控制LED [打印本頁]

作者: zhang1314hong    時間: 2018-11-23 00:02
標(biāo)題: 51單片機通過串口控制LED
通過串口助手控制led,還有加了蜂鳴器,也有響聲,不過不是太大,一點學(xué)習(xí),希望大家多指教。
#include "reg52.h"                    //此文件中定義了單片機的一些特殊功能寄存器

typedef unsigned int u16;   //對數(shù)據(jù)類型進行聲明定義
typedef unsigned char u8;
sbit beep=P1^5;
void delay(u16 i)
{
       while(i--);
}
/*******************************************************************************
* 函數(shù)名         :UsartInit()
* 函數(shù)功能          :設(shè)置串口
* 輸入           :
* 輸出               :
*******************************************************************************/
void UsartInit()
{
       SCON=0X50;               //設(shè)置為工作方式1
       TMOD=0X20;                    //設(shè)置計數(shù)器工作方式2
       PCON=0X80;               //波特率加倍
       TH1=0X30;                         //計數(shù)器初始值設(shè)置,注意波特率是300
       TL1=0X30;
       ES=1;                                        //打開接收中斷
       EA=1;                                        //打開總中斷
       TR1=1;                               //打開計數(shù)器
}

/*******************************************************************************
* 數(shù)        : main
* 函數(shù)功能         : 主函數(shù)
*            :
*                 :
*******************************************************************************/
void main()
{      
       UsartInit();  //    串口初始化
       while(1);
}

/*******************************************************************************
* 函數(shù)名         : Usart() interrupt 4
* 函數(shù)功能         : 串口通信中斷函數(shù)
* 輸入           :
* 輸出               :
*******************************************************************************/
void Usart() interrupt 4
{
       u8m;
       m=SBUF;
       beep=m;
       beep=~beep;
       delay(10);
       P2=m;
       RI= 0;//清除接收中斷標(biāo)志位
       SBUF=m;//將接收到的數(shù)據(jù)放入到發(fā)送寄存器
       while(!TI);                    //等待發(fā)送數(shù)據(jù)完成
       TI=0;
}

1:如果輸入fe,那么P2口p2.0就亮,如果輸入ff,p2.0就滅,如果想有閃爍,就輸入ff fe ff,然后在定時發(fā)送那里有多長時間一次,我們自己設(shè)置,然后勾選,就會看到閃爍的led燈。
2:輸入0011就會有響聲,可以調(diào)節(jié)發(fā)送的次數(shù),聲音也會變化。
3:流水燈,點開擴展,會看到多條字符串定義,依次輸入之后,點自動循環(huán)發(fā)送,就會出現(xiàn)流水燈,可以自己設(shè)置時間。













作者: wxxl    時間: 2018-11-23 12:19
u8m; 這是什么意思?
作者: 13976778401    時間: 2018-11-23 15:01
wxxl 發(fā)表于 2018-11-23 12:19
u8m; 這是什么意思?

估計是樓主忘了u8和m之間空格了
作者: 關(guān)外螻蟻    時間: 2019-12-6 15:17
wxxl 發(fā)表于 2018-11-23 12:19
u8m; 這是什么意思?

樓主漏了個空格,u8 m 相當(dāng)于unsigned char m
作者: 小屁歪歪    時間: 2019-12-14 14:07
我這里為什么不能實現(xiàn)串口控制
作者: zcg888    時間: 2019-12-14 23:09
學(xué)習(xí)一下,謝謝
作者: zijun    時間: 2020-4-16 20:50
貌似并沒有效果
作者: xhw3    時間: 2020-4-17 08:42
求電路
作者: wetzhy    時間: 2020-6-1 13:04
為啥我的不管,愁死我了
作者: zhaobolove    時間: 2020-10-12 16:25

中斷里面加延時???  這樣 還敢連續(xù)PC發(fā)3個數(shù)據(jù)?  數(shù)據(jù)不會丟失的?

而且  中斷里面  還有有發(fā)送的,  不知道 發(fā)送也會觸發(fā)這個中斷嗎?   我的天, 這樣會不會亂套哦??




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1