標(biāo)題: 51單片機(jī)紅外傳送帶設(shè)計(jì) [打印本頁(yè)]
作者: 榆木G 時(shí)間: 2018-5-10 10:36
標(biāo)題: 51單片機(jī)紅外傳送帶設(shè)計(jì)
技術(shù)要求:
(1)用獨(dú)立按鍵控制傳送帶的啟動(dòng)或停止;
(2)用光電傳感器檢測(cè)通過(guò)其的產(chǎn)品數(shù)量;
(3)用LED顯示傳送帶通過(guò)產(chǎn)品的數(shù)量;
(4)用矩陣鍵盤預(yù)置終值,當(dāng)計(jì)數(shù)達(dá)到終值時(shí),傳送帶停止;
傳動(dòng)采用步進(jìn)電機(jī)模擬,資料很多,本程序未附該部分源碼。
單片機(jī)源程序如下:
- /*16進(jìn)制數(shù)碼管顯示對(duì)應(yīng)按鍵鍵值,單一數(shù)碼管顯示,無(wú)需掃描*/
- #include < reg52.h >
- sbit IR_INPUT = P3^2; //P3.3引腳設(shè)定
- //sbit led = P0^0;
- sbit ADDR0 = P1^0;
- sbit ADDR1 = P1^1;
- sbit ADDR2 = P1^2;
- sbit ADDR3 = P1^3;
- sbit ENLED = P1^4;
- sbit KEY_IN_1 = P2^4;
- sbit KEY_IN_2 = P2^5;
- sbit KEY_IN_3 = P2^6;
- sbit KEY_IN_4 = P2^7;
- sbit KEY_OUT_1 = P2^3;
- sbit KEY_OUT_2 = P2^2;
- sbit KEY_OUT_3 = P2^1;
- sbit KEY_OUT_4 = P2^0;
- unsigned char code LedChar[] = {
- 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,
- 0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E
- };
- unsigned char KeySta[4][4] = {
- {1,1,1,1},{1,1,1,1},{1,1,1,1},{1,1,1,1}
- };
- unsigned char OptCnt = 0; //產(chǎn)品數(shù)量
- void intinit(){
- EA= 1;
- EX0 = 1; //使能INT0中斷
- IT0 = 1; //設(shè)置INT0為正邊沿觸發(fā)
- PX0 = 1; //外部中斷0優(yōu)先
- }
- void main(){
- unsigned char i,j;
- unsigned char backup[4][4] = {
- {1,1,1,1},{1,1,1,1},{1,1,1,1},{1,1,1,1}
- };
- EA = 1;
- ENLED = 0;
- ADDR3 = 1;
- ADDR2 = 1;
- ADDR1 =1 ;
- ADDR0 = 1;
- TMOD = 0x01;
- TH0 = 0xFC;
- TL0 = 0x67;
- intinit();
- ET0 = 1;
- TR0 = 1;
- P0 = LedChar[0];
-
- while (1){
- for(i=0;i<4;i++){
- for(j=0;j<4;j++){
- if(backup[i][j] != KeySta[i][j]){
- if(backup[i][j] != 0){
- P0 = (LedChar[i*4+j-OptCnt]);
- }
- }
- }
-
- }
-
- }
- }
- void IterruptTimer0() interrupt 1{
- unsigned char i;
- static unsigned char keyout = 0;
- static unsigned char keybuf[4][4] = {
- {0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF},
- {0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF}
- };
- TH0 = 0xFC;
- TL0 = 0x67;
- keybuf[keyout][0] = (keybuf[keyout][0] << 1) | KEY_IN_1;
- keybuf[keyout][1] = (keybuf[keyout][1] << 1) | KEY_IN_2;
- keybuf[keyout][2] = (keybuf[keyout][2] << 1) | KEY_IN_3;
- keybuf[keyout][3] = (keybuf[keyout][3] << 1) | KEY_IN_4;
- for (i=0;i<4;i++){
- if ((keybuf[keyout][i] & 0x0F) == 0x00){
- KeySta[keyout][i] = 0;
- }
- else if ((keybuf[keyout][i] & 0x0F) == 0x0F){
- KeySta[keyout][i] = 1;
- }
- }
- keyout++;
- keyout = keyout & 0x03;
- switch(keyout){
- case 0:KEY_OUT_4 = 1;KEY_OUT_1 = 0;break;
- case 1:KEY_OUT_1 = 1;KEY_OUT_2 = 0;break;
- case 2:KEY_OUT_2 = 1;KEY_OUT_3 = 0;break;
- case 3:KEY_OUT_3 = 1;KEY_OUT_4 = 0;break;
- default: break;
- }
- }
- void chufa() interrupt 0{ /*需設(shè)置中斷優(yōu)先級(jí),與數(shù)碼管動(dòng)態(tài)掃描區(qū)分*/
- IE0 = 0;
- OptCnt++;
- led=~led;
-
- }
復(fù)制代碼
所有資料51hei提供下載:
51傳送帶設(shè)計(jì).zip
(30.53 KB, 下載次數(shù): 67)
2018-5-10 10:36 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
作者: 1465633027 時(shí)間: 2020-6-20 21:19
有protues文件嗎
作者: 1465633027 時(shí)間: 2020-6-20 21:19
有protues文件嗎
作者: cds_63405 時(shí)間: 2020-6-21 14:54
能不能幫做一個(gè)封箱機(jī)簡(jiǎn)單控制程序?
歡迎光臨 (http://www.zg4o1577.cn/bbs/) |
Powered by Discuz! X3.1 |
主站蜘蛛池模板:
久草中文在线
|
久久免费看
|
亚洲精品在线免费观看视频
|
华人黄网站大全
|
久久天堂网|
久久精品久久久久久
|
免费一级黄色录像
|
国产一二区视频
|
国产精品成人一区二区三区夜夜夜
|
欧美日韩国产一区二区三区不卡
|
在线中文av
|
成人影院免费视频
|
午夜视频一区二区三区
|
麻豆av一区二区三区久久
|
亚洲精品一
|
国产精选一区
|
精品不卡
|
国产一二三区免费视频
|
日本一本在线
|
欧美一区二区在线
|
色黄爽
|
亚洲国产成人精品女人久久久野战
|
国产农村妇女毛片精品久久麻豆
|
www.日本精品
|
一呦二呦三呦国产精品
|
国产欧美在线播放
|
欧美亚洲一区二区三区
|
一区二区在线视频
|
国产午夜精品一区二区三区嫩草
|
日韩亚洲视频在线
|
国产精品揄拍一区二区久久国内亚洲精
|
日韩欧美视频在线
|
国产精品视频综合
|
国产精品成人国产乱一区
|
久久国产亚洲
|
欧美激情一区二区三区
|
中文字幕电影在线观看
|
日本久久久一区二区三区
|
精品国产一区二区久久
|
国产视频日韩
|
国产一区二区三区视频
|