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

📄 main.c

📁 EasyARM615在IAR上的实验源代码
💻 C
字号:
/****************************************Copyright (c)**************************************************
**                               Guangzhou ZHIYUAN electronics Co.,LTD.
**                                     
**                                 http://www.embedtools.com
**
**--------------File Info-------------------------------------------------------------------------------
** File Name:          Main.c
** Last modified Date: 2007-03-24
** Last Version:       1.0
** Description:        Basic experiment of the quadrature encoder 正交编码器的基础实验
** 
**------------------------------------------------------------------------------------------------------
** Created By:         Steven Zhou 周绍刚
** Created date:       2007-04-05
** Version:            1.0
** Descriptions:       The original version 初始版本
**
**------------------------------------------------------------------------------------------------------
** Modified by:        Kang qinhua
** Modified date:      2008.01.19
** Version:            v1.1
** Description:
**
********************************************************************************************************/
#include    "hw_gpio.h"
#include    "hw_types.h"
#include    "hw_memmap.h"
#include    "sysctl.h"
#include    "gpio.h"
#include    "qei.h"


/*********************************************************************************************************
** Function name:			main
**
** Descriptions:			Main function of the project 工程的主函数
**
** Input parameters:		None 无
** Returned value:		    None 无
**         
** Used global variables:	None 无
** Calling modules:		    SysCtlPeripheralEnable,GPIODirModeSet,QEIConfigure,QEIVelocityConfigure
**                          QEIEnable,QEIVelocityEnable,QEIVelocityGet
**					  
** Created by:				Steven Zhou 周绍刚
** Created Date:			2007-03-24
**-------------------------------------------------------------------------------------------------------
** Modified by:             Kang qinhua
** Modified date:           2008.01.19
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
int main(void)
{
	unsigned int i;
			
	SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOC); 			            // 使能PC口外设 
	SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOD); 			            // 使能PD口外设
    SysCtlPeripheralEnable(SYSCTL_PERIPH_QEI);  			            // 使能正交编码器外设 
       
 	GPIODirModeSet(GPIO_PORTC_BASE,  						            // 选择PC4,PC6硬件功能
	               GPIO_PIN_4 | GPIO_PIN_6,  	
                   GPIO_DIR_MODE_HW);

    GPIODirModeSet(GPIO_PORTD_BASE, 	 					            // 选择PD7硬件功能
	               GPIO_PIN_7, 
				   GPIO_DIR_MODE_HW); 	
	       
	QEIConfigure(QEI_BASE, 				 					            // 使用A,B通道共4个边沿计算速度
	             (QEI_CONFIG_CAPTURE_A_B | QEI_CONFIG_NO_RESET | 
                  QEI_CONFIG_QUADRATURE | QEI_CONFIG_NO_SWAP),
                 0);
   	QEIVelocityConfigure(QEI_BASE, QEI_VELDIV_1, 60000);	            // 设置速度检测周期为 0.01秒

        
    QEIEnable(QEI_BASE);     								            // 使能正交编码器 
    QEIVelocityEnable(QEI_BASE);  							            // 使能正交编码器的速度检测功能  
       	         
	while(1)
	{
		i = QEIVelocityGet(QEI_BASE);  						            // 读出上一个周期的速度计数值
		i = (i * 100 * 60) / (4 * 512);  							    // 转化为 转/分钟
	}
}

⌨️ 快捷键说明

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