之前把全部程序都跑了一次后,得到了导师下一步的安排。
例如以下:
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);
}
}
失败的代码。记录一下。明天继续~