1、關閉開發(fā)板電源 2、開發(fā)板上不要接插任何模塊,如液晶點陣這些都不能接上 3、把P10用杜邦線鏈接到電機驅動模塊 J4的4IN上,然后把小電機 端子插到 J8的 + 和D 上,不分線序接上即可。 4、選擇好程序,打開電源點下載,接著打開單片機電源。 5、按S2減速,按S3加速。 注意: 電機模塊直接加速減速不能正反轉,做電機測試實驗時主要是觀察下實驗現象時間不宜過長,否則可能燒掉電機驅動芯片(高速運行下最好不要超過1分鐘,因為電機運行需要很大的電流) 直流電機切勿直接接到開發(fā)板的VCC和GND上進行實驗,這樣很容易燒壞開發(fā)板,因為電機在停轉的時候轉子由于物理特性會繼續(xù)轉動,產生較大的負電壓。 電機參數: 【型號】F130馬達 【尺寸】25mm*20mm*15mm 【軸長】38mm 【軸徑】2mm 【前突】9.6mm 【空載轉速】15000±10%rpm
接線示意圖:
單片機源程序如下:
- /* 關閉開發(fā)板電源
- 開發(fā)板上不要接插任何模塊,如液晶點陣這些都不能接上,
- 把P10用杜邦線鏈接到電機驅動模塊 J4的4IN上,然后把小電機
- 端子插到 J2的 + 和D 上,不分線序接上即可。
- 選擇好程序,打開電源點下載,接著打開單片機電源。
- 按S2減速,按S3加速。
- */
- #include <reg52.h>
- unsigned char pwm_motor_val = 130;//左右電機占空比值 取值范圍0-170,0最快
- unsigned char pwm_t;//周期
- sbit _4IN = P1^0;//
- sbit key_s2 = P3^0;
- sbit key_s3 = P3^1;
- void delay(unsigned int z)//毫秒級延時
- {
- unsigned int x,y;
- for(x = z; x > 0; x--)
- for(y = 114; y > 0 ; y--);
- }
- //定時器0中斷
- void timer0() interrupt 1
- {
- pwm_t++;
- if(pwm_t == 255)
- _4IN = 0;
- if(pwm_motor_val == pwm_t)
- _4IN = 1;
- }
- void main()
- {
- TMOD |= 0x02;//8位自動重裝模塊
- TH0 = 220;
- TL0 = 220;//11.0592M晶振下占空比最大比值是256,輸出100HZ
- TR0 = 1;//啟動定時器0
- ET0 = 1;//允許定時器0中斷
- EA = 1;//總中斷允許
- while(1)
- {
- if(key_s2 == 0) //S2按下LED變暗
- {
- delay(5);
- if(key_s2 == 0)
- {
- if(pwm_motor_val < 170)
- {
- pwm_motor_val++;
- }
- }
- }
- if(key_s3 == 0) //S3按鍵LED變亮
- {
- delay(5);
- if(key_s3 == 0)
- ……………………
- …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
所有資料51hei提供下載:
19_直流電機小風扇.zip
(1.56 MB, 下載次數: 84)
2017-12-21 01:20 上傳
點擊文件名下載附件
|