欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
一個電腦控制單片機通訊程序分享
[打印本頁]
作者:
red_R
時間:
2018-4-12 22:36
標題:
一個電腦控制單片機通訊程序分享
電腦控制單片機視頻演示:
0.jpg
(49.07 KB, 下載次數: 55)
下載附件
2018-4-13 01:51 上傳
有需要直接下載就可以了,附件里面還有視頻演示,和下位機單片機的源碼
0.jpg
(25.37 KB, 下載次數: 55)
下載附件
2018-4-13 01:52 上傳
單片機源程序如下:
/**********************單片機與PC機通訊例程************************
* STC89C52RC+
* 編寫:顏
* 晶振:11.0592MHZ
******************************************************************/
#include <reg52.h>
#define jingzhen 11059200UL /*使用22.1184M晶體*/
#define botelv 9600UL /*波特率定義為9600*/
volatile unsigned char sending;
#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long
uchar code LED_L[] = {0xfe, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7f};
uchar code LED_R[] = {0x7f, 0xbf, 0xdf, 0xef, 0xf7, 0xfb, 0xfd, 0xfe};
uchar code LED_1[] = {0xe7, 0xe7, 0xdb, 0xdb, 0xbd, 0xbd, 0x7e, 0x7e};
uchar code LED_2[] = {0x7e, 0x7e, 0xbd, 0xbd, 0xdb, 0xdb, 0xe7, 0xe7};
#define u16 unsigned int
#define u8 unsigned char
//流水燈
u16 LED_Delay = 0;
u8 KeyFlag = 0;
u8 LEDState = 0;
u8 Data = 0;
u8 Flag = 0;
void delay(unsigned char i)
{
unsigned char j,k;
for(j=i;j>0;j--)
for(k=90;k>0;k--);
}
void init(void) //串口初始化
{
EA=0; //暫時關閉中斷
TMOD&=0x01; //定時器0工作在16位模式
TMOD|=0x20; //定時器1工作在模式2,自動重裝模式
SCON=0x50; //串口工作在模式1
TH1=256-jingzhen/(botelv*12*16); //計算定時器重裝值
TL1=256-jingzhen/(botelv*12*16);
PCON|=0x80; //串口波特率加倍
ES=1; //串行中斷允許
TR1=1; //啟動定時器1
REN=1; //允許接收
//定時器0
TH0 = (65535 - 5000) >> 8; //寫入定時器0初值
TL0 = (65535 - 5000);
ET0 = 1; //打開定時器0中斷
TR0 = 1; //啟動定時器0
EA=1; //允許中斷
}
void main()
{
init();
while(1)
{
if(Flag != 0)
{
Flag = 0;
KeyFlag = 0;
switch(Data) //補充用戶所需代碼
{
case 0x00:P0 = 0xfe;break; //第一個按鍵
case 0x01:P0 = 0xfd;break;
case 0x02:P0 = 0xfb;break;
case 0x03:P0 = 0xf7;break;
case 0x04:P0 = 0xef;break;
case 0x05:P0 = 0xdf;break;
case 0x06:P0 = 0xbf;break;
case 0x07:P0 = 0x7f;break;
case 0x08:KeyFlag = 1;LEDState = 0;break;
case 0x09:KeyFlag = 2;LEDState = 0;break;
case 0x0A:KeyFlag = 3;break;
case 0x0B:KeyFlag = 4;break;
case 0x0C:break;
case 0x0D:break;
case 0x0E:break;
case 0x0F:break;
}
}
if(KeyFlag != 0)
{
switch(LEDState)
{
case 0:
case 2:
case 4:
case 6:
case 8:
case 10:
case 12:
case 14:
LED_Delay = 0;
switch(KeyFlag)
{
case 1:P0 = LED_L[LEDState/2];break; //流水燈左模式
case 2:P0 = LED_R[LEDState/2];break; //流水燈右模式
case 3:P0 = LED_1[LEDState/2];break;
case 4:P0 = LED_2[LEDState/2];break;
}
LEDState++;
break;
default:
if(LED_Delay >= 50)
{
LED_Delay = 0;
LEDState++;
if(LEDState == 16)
{
LEDState = 0;
}
}
break;
}
}
}
}
void uart(void) interrupt 4 //串口發送中斷
{
if(RI) //收到數據
{
RI=0; //清中斷請求
……………………
…………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
所有資料51hei提供下載:
電腦控制單片機小軟件.rar
(16.36 MB, 下載次數: 83)
2018-4-12 22:35 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
作者:
pmsjzj
時間:
2018-4-13 08:52
蠻好的源碼
作者:
hulujia
時間:
2018-4-14 10:42
請問樓主有上位機源代碼嗎?求
作者:
lvlv99
時間:
2018-4-14 19:22
樓主上位機放出來嗎?
作者:
程工260634
時間:
2018-12-15 09:37
樓主上位機放出來嗎?
作者:
周旭林ing
時間:
2019-1-9 17:31
非常好,多謝樓主
作者:
謝科鑫
時間:
2019-6-5 19:21
樓主你好,我是個學習單片機的新手 嗯就是最近也在學習關于上位機控制51單片機,然后就是希望可以分享一下你的上位機程序嘛?
嗯 萬分感謝 ~
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1