之前把所有程序都跑了一次后,得到了导师下一步的安排。如下:
1.编写一个程序,实现在LCD上显示一个万年历,包括年月日 星期 还有室内的温度。2.编写一个程序,将原来的交通灯改为跑马灯。
期限是这学期。
好吧。一学期编两个程序。还真是从0做起。虽然是用C编程,但是用的库函数却是相应工程开发自带的API。于是,开始从第一个基础程序做起,以便熟悉相应的API函数操作。
GPIO 通用输入输出函数 函数名真长 参数也是两三个以上,不习惯。忙乎了大概两三个小时才基本把常用的六七个函数弄明白,真是白痴透了。此后再去看第一个实验源代码,勉强能够明白。也能在源代码的基础上修改,以达到单个输入控制多个输出。同时也能基本明确GPIO端口指的什么了。不过还是比较模糊,这个还呆商榷。此外,创建了属于自己的第一个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); } }失败的代码,记录一下。明天继续~
原文地址:http://blog.csdn.net/dawnfox/article/details/40432375