实验记录三 通用输入输出(GPIO)

之前把全部程序都跑了一次后,得到了导师下一步的安排。

例如以下:

1.编写一个程序。实如今LCD上显示一个万年历,包含年月日 星期 还有室内的温度。2.编写一个程序,将原来的交通灯改为跑马灯。

期限是这学期。

好吧。

一学期编两个程序。还真是从0做起。尽管是用C编程,可是用的库函数却是对应project开发自带的API。于是,開始从第一个基础程序做起,以便熟悉对应的API函数操作。

GPIO 通用输入输出函数 函数名真长 參数也是两三个以上,不习惯。忙乎了大概两三个小时才基本把经常使用的六七个函数弄明确,真是白痴透了。此后再去看第一个实验源码,勉强可以明确。

也能在源码的基础上改动,以达到单个输入控制多个输出。

同一时候也能基本明确GPIOport指的什么了。只是还是比較模糊,这个还呆商榷。此外。创建了属于自己的第一个keil项目文件,也算值得一记。尽管还是该程序达不到预期目的,失败了,也算是前进了一小步。

为自己加油吧!坚持!奋斗

//GPIO例程:两仅仅LED交替闪烁
#include "systemInit.h"

//定义函数
#define	 GPIOPinTypeIn		GPIOPinTypeGPIOInput
#define	 GPIOPinTypeOut		GPIOPinTypeGPIOOutput



//定义LED
#define LED_PERIPH		SYSCTL_PERIPH_GPIOA
#define	LED_PORT		GPIO_PORTG_BASE
#define LED_PINS		GPIO_PIN_2|GPIO_PIN_3


//主函数(程序入口)
int main(void)
{
//	unsigned char ucVal;
	unsigned int ucVal;


	jtagWait();
	clockInit();


	SysCtlPeripheralEnable(LED_PERIPH);
//	GPIOPinTypeOut(LED_PORT,LED_PINS);
	GPIODirModeSet(LED_PORT,LED_PINS,GPIO_DIR_MODE_OUT);	
												// 	设置连接LED的IO口为输出
    GPIOPadConfigSet(LED_PORT,LED_PINS,GPIO_STRENGTH_8MA,GPIO_PIN_TYPE_STD_WPU);	
											// 	设置输出IO口的驱动能力。8mA,带弱上拉输出
//	ucVal=(0<<2)|(1<<3);
	ucVal=0x00;


	for(;;)
	{
		GPIOPinWrite(LED_PORT,LED_PINS,ucVal);
	//	GPIOPinWrite(LED_PORT,LED_PINS,  0x00);	
	//	ucVal ^=(1<<2)|(1<<3);
		ucVal=0xff;
		SysCtlDelay(150*(TheSysClock/3000));
	//	GPIOPinWrite(LED_PORT,  LED_PINS,  0xff);	
	}
}
失败的代码。记录一下。明天继续~

posted @ 2017-06-13 10:19  clnchanpin  阅读(1190)  评论(0编辑  收藏  举报