⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 用 PWM +键盘控制 直流电机转动 SPCE061A 的处理器
💻 C
字号:
////////////////////////////////////////////////////////////
//
//  功能:用IOA口的低8为做键盘输入,1.2.3.4.5分别为 正转启动,
//			反转启动,加速、减速、和停止键
//	IOB8、9为PWM控制出口 接直流电机的正负级 控制正转,反转。
//   
////////////////////////////////////////////////////////////


#include "SPCE061A.h"
//////////////////////////////////////////////////////////////////////////////////////
//   unsigned int flag=0;
//  unsigned int get_key(void);
//
//  unsigned int get_key_value(unsigned int key);
//
// void delay(unsigned int num);
//
//  void pwm_ctrl(unsigned int TIM_data ,unsigned int keyvalue);
//  void pwm_ctrl( unsigned int TIM_data , unsigned int PWM,unsigned int keyvalue);
//
//////////////////////////////////////////////////////////////////////////////////////
void main()
{
	unsigned int key,keyvalue;
	*P_IOB_Dir=0x0300;        //IO8 IOB9 同向带数据缓冲器输出
	*P_IOB_Attrib=0x0300;
	*P_IOB_Data=0x0000;
	
	
	*P_Feedback=0x0000;
	
	
	*P_IOA_Dir=0x0000;        //IOA8 输入 下拉
	*P_IOA_Attrib=0x0000;
	*P_IOA_Data=0x0000;
	
	while(1)
	{
		*P_Watchdog_Clear=0x0001;
		key=get_key();
		keyvalue=get_key_value(key);
		while(keyvalue)
		{
			switch (keyvalue)
			{
				case 1 : pwm_ctrl(0x00f0,keyvalue);break;
				case 2 : pwm_ctrl(0x00f0,keyvalue);break;
				case 3 : pwm_ctrl(0x00f0,keyvalue);break;
				case 4 : pwm_ctrl(0x00f0,keyvalue);break;
				case 5 : pwm_ctrl(0x00f0,keyvalue);break;
				case 6 : pwm_ctrl(0x00f0,keyvalue);break;
				case 7 : pwm_ctrl(0x00f0,keyvalue);break;
				case 8 : pwm_ctrl(0x00f0,keyvalue);break;
				default : break;
				
			}
			keyvalue=0;		
		}
	}
	
	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -