亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

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

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

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

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

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

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













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

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

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

中斷里面加延時???  這樣 還敢連續PC發3個數據?  數據不會丟失的?

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




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