精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

電子發燒友App

硬聲App

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

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

3天內不再提示
電子發燒友網>電子資料下載>單片機>單片機對繼電器方向及開關的控制程序

單片機對繼電器方向及開關的控制程序

2017-09-06 | rar | 0.3 MB | 次下載 | 免費

資料介紹

1、串口COM通信實驗程序

#include
#include
unsigned char key_s, key_v, tmp;
char code str[] = "www.pp51.com";

void send_str();
bit?scan_key();
void proc_key();
void delayms(unsigned char ms);
void send_char(unsigned char txd);
sbit?K1 = P1^4;
main()
{
?TMOD = 0x20;???// 定時器1工作于8位自動重載模式, 用于產生波特率
?TH1 = 0xFD;????// 波特率9600
?TL1 = 0xFD;
?
?SCON = 0x50;???// 設定串行口工作方式
?PCON &= 0xef;???// 波特率不倍增
??
?TR1 = 1;????// 啟動定時器1
?IE = 0x0;????// 禁止任何中斷
?
?while(1)
?{
??if(scan_key())??// 掃描按鍵
??{
???delayms(10);???// 延時去抖動
???if(scan_key())???// 再次掃描
???{
????key_v = key_s;??// 保存鍵值
????proc_key();???// 鍵處理
???}
??}
??if(RI)??????// 是否有數據到來
??{
???RI = 0;
???tmp = SBUF;????// 暫存接收到的數據
???P0 = tmp;????// 數據傳送到P0口
???send_char(tmp);???// 回傳接收到的數據
??}??
?}
}
bit scan_key()?
// 掃描按鍵
{
?key_s = 0x00;
?key_s |= K1;
?return(key_s ^ key_v);?
}
void proc_key()
// 鍵處理
{
?if((key_v & 0x01) == 0)
?{???// K1按下
??send_str();????// 傳送字串"welcome!...
?}
}
void send_char(unsigned char txd)
// 傳送一個字符
{
?SBUF = txd;
?while(!TI);????// 等特數據傳送
?TI = 0;?????// 清除數據傳送標志
}
void send_str()
// 傳送字串
{
?unsigned char i = 0;
?while(str[i] != '\0')
?{
??SBUF = str[i];
??while(!TI);????// 等特數據傳送
??TI = 0;?????// 清除數據傳送標志
??i++;?????// 下一個字符
?}?
}
void delayms(unsigned char ms)?
// 延時子程序
{??????
?unsigned char i;
?while(ms--)
?{
??for(i = 0; i < 120; i++);
?}
}
?
?

2、串口COM通訊(匯編語言)


K1?EQU?P1.4???; 按鍵端口
; 變量定義
KEY_S?EQU?50H???; 當前的按鍵狀態???
KEY_V?EQU?51H???; 上次的按鍵狀態

?ORG?0000H
?LJMP?MAIN
?
MAIN:
?MOV?TMOD,#20H??; 定時器1工作于8位自動重載模式,用于產生波特率
?MOV?TH1,#0FDH
?MOV?TL1,#0FDH??; 波特率9600
?
?MOV?SCON,#50H??; 設定串行口工作方式
?ANL?PCON,#0EFH??; 波特率不倍增
?
?SETB?TR1???; 啟動定時器1
?MOV?IE,#0???; 禁止任何中斷
?MOV?KEY_V,#01H??;?
?
MAIN_RX:
?JNB?RI,MAIN_KEY??; 是否有數據到來
?CLR?RI
?MOV?A,SBUF???; 暫存接收到的數據
?MOV?P0,A???; 數據傳送到P0口
?LCALL?SEND_CHAR??; 回傳接收到的數據
?
MAIN_KEY:
?LCALL?SCAN_KEY??;? 掃描按鍵
?JZ?MAIN_RX
?LCALL?DELAY_15MS??;? 延時去抖動
?LCALL?SCAN_KEY
?JZ?MAIN_RX
?MOV?KEY_V,KEY_S??;? 保存鍵值
?LCALL?PROC_KEY??; 鍵處理
?SJMP?MAIN_RX
;===============================================================================
SCAN_KEY:
; 掃描按鍵, (在此實例中僅掃描按鍵K1)?
; 傳入參數: 無
; 返回值: 無
?CLR?A
?MOV?C,K1
?MOV?ACC.0, C
?MOV?KEY_S,A
?XRL?A,KEY_V???; 檢查按鍵狀態是否改變
?RET
;===============================================================================?
PROC_KEY:
; 按鍵處理子程序 --- 發送字符串到PC
; 傳入參數: KEY_V --- 按鍵值
; 返回值: 無?
?JB?K1,END_PROC_KEY?; K1未按下時,直接返回
?MOV?DPTR,#TAB_WWW??; 字串表格地址
SEND_STRING:
?CLR?A
?MOVC?A,@A+DPTR
?JZ?END_PROC_KEY??; 查到00H時,表示字串結束
?ACALL?SEND_CHAR
?INC?DPTR???; 下一字符
?SJMP?SEND_STRING
END_PROC_KEY:
?RET?
;===============================================================================
SEND_CHAR:
; 傳送一個字符
; 傳入參數: ACC(要發送的數據)
; 返回值: 無
?MOV?SBUF,A
?JNB?TI,$???; 等特數據傳送
?CLR?TI???; 清除數據傳送標志
?RET
;===============================================================================
; 掃描按鍵, (在此實例中僅掃描按鍵K1)?
; 傳入參數: 無
; 返回值: 無
DELAY_15MS:
?MOV?R7,#15
DELAY15MS_1:
?MOV?R6,#0E8H
DELAY15MS_2:
?NOP
?NOP
?DJNZ?R6,DELAY15MS_2
?DJNZ?R7,DELAY15MS_1
?RET
?
TAB_WWW:
?DB?"www.pp51.com"
?DB?0AH,0DH??;換行/回車
?DB?00H
?END
?
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1TC358743XBG評估板參考手冊
  2. 1.36 MB  |  330次下載  |  免費
  3. 2開關電源基礎知識
  4. 5.73 MB  |  6次下載  |  免費
  5. 3100W短波放大電路圖
  6. 0.05 MB  |  4次下載  |  3 積分
  7. 4嵌入式linux-聊天程序設計
  8. 0.60 MB  |  3次下載  |  免費
  9. 5基于FPGA的光纖通信系統的設計與實現
  10. 0.61 MB  |  2次下載  |  免費
  11. 651單片機窗簾控制器仿真程序
  12. 1.93 MB  |  2次下載  |  免費
  13. 751單片機大棚環境控制器仿真程序
  14. 1.10 MB  |  2次下載  |  免費
  15. 8基于51單片機的RGB調色燈程序仿真
  16. 0.86 MB  |  2次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應用800例(新編版)
  4. 0.00 MB  |  33564次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關電源設計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數字電路基礎pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅動電路設計》 溫德爾著
  16. 0.00 MB  |  6653次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉中文版)
  4. 78.1 MB  |  537796次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191185次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費