国产精品专区在线I成人免费在线看片I99资源网I国产亚洲91I久久99国产精品自在自在appI亚洲精品欧洲精品I91精品国产乱码久久I欧美一区二区三区在线看

技術文章您的位置:網站首頁 >技術文章>旋轉編碼器程序簡介
旋轉編碼器程序簡介
更新時間:2013-05-08   點擊次數:4777次
zui近用到旋轉編碼器,在網上找了一大堆資料,發現這篇好文章。供大家參考!
[ME850擴展應用]旋轉編碼器計數程序(飛梭旋鈕功能)-數碼管顯示
/*******************************************************************
* *
* ME850單片機開發實驗儀演示程序 - 旋轉編碼器計數程序 *
* *
* 3位數碼管顯示 *
* *
* MCU: AT89S52 晶振:11.0592MHz *
* *
* 版本:V1.1 (2009/04/29) *
* 作者:gguoqing (: gguoqing@) *
* : (碩飛科技) *
* (偉納單片機世界) *
* :sofitech@ *
* *
*【版權】Copyright(C) 深圳碩飛科技有限公司 All Rights Reserved *
*【聲明】此程序僅用于學習與參考,引用請注明版權和作者信息! *
* *
********************************************************************
* *
* 功能簡述: (飛梭旋鈕功能) *
* 當旋鈕順時針旋轉時,計數值增加。達到zui大值255后,不再響應。 *
* 當逆鈕順時針旋轉時,計數值減小。達到zui小值0后,不再響應。 *
* 當按下旋鈕時,將計數值清零(歸位)。 *
* *
*******************************************************************/
#Include <reg52.h>
sbit PINA = P1^0;
sbit PINB = P1^1;
sbit PIND = P1^2;
unsigned char display[3];
unsigned char code LEDData[ ] =
{
0xC0,0xF9,0xA4,0xB0,0x99,0x92,
0x82,0xF8,0x80,0x90,0xff
};
char code reserve[3]_at_ 0x3b; //保留0x3b開始的3個字節
unsigned char counter = 0; //編碼器脈沖計數
unsigned char n,shift;
/**********************************************************
ms延時子函數
**********************************************************/
void delayms(unsigned int ms)
{
unsigned char k;
while (ms--)
{
for (k = 0; k < 114; k++)
;
}
}
/**********************************************************
掃描編碼器子函數
在編碼器引腳A為低電平期間:
編碼器引腳B從0到1為正轉,編碼器引腳B從1到0為反轉。
**********************************************************/
void scan_encoder(void)
{
static bit Curr_encoder_b; //定義一個變量來儲存當前B信號
static bit Last_encoder_b; //定義一個變量來儲存上次B腳信號
static bit updata= 0;
if( PINA && PINB) //編碼器無轉動退出
{
updata = 0;
return;
}
Last_encoder_b = PINB; //記錄B信號
while(!PINA) //等待A由低變高
{
Curr_encoder_b = PINB; //記錄等待期間的B信號(指當前B信號)
updata = 1;
}
if(updata)
{
updata = 0 ;
if( (Last_encoder_b == 0)&&(Curr_encoder_b== 1) ) //B從0到1為正轉
{
if(counter == 255)
return;
counter++; //正轉計數加
}
else if( (Last_encoder_b == 1)&&(Curr_encoder_b == 0) ) //B從1到0為反轉
{
if(counter == 0)
return;
counter--; //反轉計數減
}
}
}
/**********************************************************
主函數
**********************************************************/
void main(void)
{
P0 = 0xff;
P1 = 0xff;
P2 = 0xff;
T2CON = 0x00; //設置T2CON寄存器
TH2 = 0xfc; //1ms定時
TL2 = 0x66;
ET2 = 1; //啟用Timer2中斷
EA = 1; //總中斷允許
TR2 = 1; //啟動定時器2
counter = 0; //計數單元清零
while(1)
{
scan_encoder();
if(! PIND) //當按下旋鈕時
{
counter = 0; //計數單元清零(歸位)
delayms(10);
}
}
}
/*********************************************************
Timer2中斷函數
**********************************************************/
void timer2() interrupt 5
{
TR2 = 0;
TF2 = 0; //手工清中斷標志
TH2 = 0xfc; //1ms定時常數
TL2 = 0x66;
if(n >= 3) //3位數碼管顯示
{
n = 0;
shift = 0xfe; //送位碼初值
P2 = 0xff; //關閉顯示
}
else
{
display[0] = counter%10; //個位數據
display[1] = (counter%100)/10; //十位數據
display[2] = counter/100; //百位數據

if(display[2] == 0)
{
display[2] = 0x0a; //百位為0,不顯示
if(display[1] == 0)
display[1] =0x0a; //十位為0,不顯示
}
P0 = LEDData[display[n++]]; //送段碼
P2 = shift; //送位碼
shift = (shift<<1)|0x01; //調整位碼
}
TR2 = 1;
}
網站首頁 關于我們 新聞中心 產品中心 聯系我們
備案號:滬ICP備09051314號-3   GoogleSitemap   技術支持:智能制造網 管理登陸
© 2018 上海德晶光電科技有限公司DECHING(m.sz-tenda.com) 版權所有 總訪問量:543473
主站蜘蛛池模板: 国产精品国产三级国产专区53 | 97视频播放 | 婷婷婷国产在线视频 | 国产成人精品在线 | 欧美成人中文字幕 | 婷婷在线视频观看 | 91精品办公室少妇高潮对白 | 久久国产区 | 国际精品久久 | 亚洲成人av片在线观看 | 在线观看色视频 | 美女视频黄的免费的 | 日韩免费一级电影 | 日韩美女免费线视频 | 免费的黄色的网站 | 久久超碰97| 亚洲区另类春色综合小说校园片 | 国产一区二区在线观看视频 | 国产一区二区在线影院 | 97色在线观看 | 91在线区 | 99久久999久久久精玫瑰 | 国产成人一区在线 | 最近中文字幕免费 | 最近中文字幕mv | 国产99久久久国产精品免费二区 | av中文字幕网址 | 久久综合影院 | 色婷婷av国产精品 | 天天草视频 | 成人亚洲免费 | 最新中文字幕在线观看视频 | 婷婷久久精品 | 欧美日韩aaaa| 亚洲a成人v | 免费黄色网止 | 综合网天天色 | 日韩有码第一页 | 91精品国产成 | 999久久a精品合区久久久 | 久久九九影视 | 美女视频一区 | 九九久 | 欧美一级片在线 | 国产精品中文 | 国产永久免费高清在线观看视频 | 综合色在线观看 | 九九免费在线观看视频 | 婷婷色社区 | 欧美三级在线播放 | 在线视频 成人 | 免费看片亚洲 | 91精品国产91p65 | 国产精品mv在线观看 | 成人国产亚洲 | 玖玖在线免费视频 | 国产福利a | 人人草在线视频 | 国产91影院 | 亚洲手机天堂 | 91激情小视频 | 成年人av在线播放 | 久久99精品热在线观看 | 欧美日韩国产精品一区二区 | 亚洲更新最快 | 丰满少妇对白在线偷拍 | 国产精品资源网 | 国产不卡在线视频 | 久草在线国产 | 久久一区二区三区国产精品 | 丁香电影小说免费视频观看 | 国产精品原创av片国产免费 | 97色婷婷人人爽人人 | 午夜精品福利一区二区三区蜜桃 | 91麻豆传媒| 狠狠躁夜夜躁人人爽超碰97香蕉 | 2017狠狠干| 国产区免费| 日韩欧美一级二级 | 中文字幕91视频 | 久久婷婷国产 | 精品五月天 | 日本不卡视频 | 成人免费在线观看入口 | 日韩久久精品一区二区 | 亚洲成人黄色在线 | 国产精品免费久久久久久久久久中文 | 日韩城人在线 | 国产成人精品女人久久久 | 91香蕉久久 | 九九欧美 | 97av在线| av线上免费看| 欧美成人精品欧美一级乱 | 国产精品a级 | 亚洲九九影院 | 国产精品区免费视频 | 天天做天天干 | 狠狠躁天天躁综合网 |