初識電機驅動
L298N引腳圖:
Drive_car.ino
L298N引腳說明圖.jpg
L298N英文數據手冊.pdf
MT-1電機驅動說明文檔.pdf
Speed_change.ino
定時器生成PWM調節小車速度.C
控制小車方向.c
定時器生成PWM調節小車速度單片機源程序如下:
- /******************************************************************************************
- 程序名:定時器生成PWM調節小車速度
- 編寫人:Yayi
- 論壇:rtrobot.org
- /******************************************************************************************/
- #include <STC12C5A60S2.H>//頭文件
- sbit IN1=P1^0;
- sbit IN2=P1^1;
- sbit IN3=P1^2;
- sbit IN4=P1^3;
- sbit ENA=P1^4;
- sbit ENB=P1^5;
- unsigned int k=0;
- unsigned int HZENA;
- unsigned int HZENB;
- /********************************************************************************************
- 延遲函數
- /********************************************************************************************/
- void DELAY_MS (unsigned int a)
- {
- unsigned int i;
- while( a-- != 0)
- {
- for(i = 0; i < 600; i++);
- }
- }
- void Forward(void)
- {
- IN1=1;
- IN2=0;
- IN3=0;
- IN4=1;
- }
- /********************************************************************************************
- 定時器0初始化
- /********************************************************************************************/
- void T_init (void)
- {
- TMOD = 0x11; //高4位控制T1,低4位控制T0
- EA = 1; //中斷總開關
- TH0 = 0; //16位計數寄存器T0高8位
- TL0 = 0; //16位計數寄存器T0低8位
- ET0 = 1; //T0中斷開關
- TR0 = 1; //T0啟動開關
- TH1 = 0; //16位計數寄存器T0高8位
- TL1 = 0; //16位計數寄存器T0低8位
- ET1 = 1; //T0中斷開關
- TR1 = 1; //T0啟動開關
- }
- /*********************************************************************************************
- 主程序
- /********************************************************************************************/
- void main(void)
- {
- T_init();
- Forward();
- while (1)
- {
- HZENA=60000;
- HZENB=60000;
- DELAY_MS(5000);
- HZENA=2000;
- HZENB=2000;
- DELAY_MS(5000);
- }
- }
- /********************************************************************************************
- 定時器0中斷函數
- /********************************************************************************************/
- void T0 (void) interrupt 1 using 1
- {
- TH0=(65536-HZENA)/256; //16位計數寄存器T0高8位,嘗試修改1000成其他值
- TL0=(65536-HZENA)%256; //16位計數寄存器T0低8位,嘗試修改1000成其他值
- ENA=!ENA;
- }
- /********************************************************************************************
- 定時器1中斷函數
- /********************************************************************************************/
- void T1 (void) interrupt 3 using 2
- {
- TH1=(65536-HZENB)/256; //16位計數寄存器T0高8位,嘗試修改1000成其他值
- TL1=(65536-HZENB)%256; //16位計數寄存器T0低8位,嘗試修改1000成其他值
- ENB=!ENB;
- }
復制代碼
所有資料51hei提供下載:
L298N 電機驅動 雙直流電機驅動模塊.zip
(920.06 KB, 下載次數: 77)
2018-11-3 12:23 上傳
點擊文件名下載附件
|