|
天車(chē)控制系統(tǒng)仿真加控制
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
0.png (19.94 KB, 下載次數(shù): 81)
下載附件
2018-7-1 18:06 上傳
0.png (51.04 KB, 下載次數(shù): 74)
下載附件
2018-7-1 18:06 上傳
單片機(jī)源程序如下:
- #include "AT89X52.h"
- #include "intrins.h"
- // Definition for output port and input pins
- #define out_port P3
- unsigned char const sequence[8] = {0x02,0x06,0x04,0x0c,0x08,0x09,0x01,0x03};
- sbit key_for = P1 ^ 2;
- sbit key_rev = P1 ^ 3;
- sbit Inc = P1 ^ 0;
- sbit Dec = P1 ^ 1;
- sbit Dir = P2 ^ 0;
- sbit PWM = P2 ^ 1;
- int speed;
- void delay(unsigned int j)
- {
- for(; j>0; j--);
- }
- void delayms(unsigned int j)
- {
- unsigned char i;
- for(; j>0; j--)
- {
- i = 120;
- while (i--);
- }
- }
- void DCMotoDeal(void)
- {
- if(!Inc)
- {
- speed = speed > 0 ? speed - 1 : 0;
- }
- if(!Dec)
- {
- speed = speed < 500 ? speed + 1 : 500;
- }
- PWM=1;
- delay(speed);
- PWM=0;
- delay(500-speed);
- }
- void StepMotoDeal(void)
- {
- unsigned char i;
- if (!key_for)
- {
- i = i<8 ? i+1 : 0;
- out_port = sequence[i];
- delayms(50);
- }
- else if (!key_rev)
- {
- i = i>0 ? i-1 : 7;
- out_port = sequence[i];
- delayms(50);
- }
- }
- void main(void)
- {
- // 選擇方向和時(shí)間
- Dir = 1;
- if (Dir)
- {
- speed = 400;
- }
- else
- {
- ……………………
- …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼
所有資料51hei提供下載:
天車(chē)控制系統(tǒng).zip
(57.32 KB, 下載次數(shù): 16)
2018-7-1 17:17 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|
評(píng)分
-
查看全部評(píng)分
|