在线时间954 小时
UID336767
注册时间2011-12-29
NXP金币733
TA的每日心情 | 开心 2018-7-23 21:04 |
---|
签到天数: 103 天 连续签到: 1 天 [LV.6]常住居民II
金牌会员
 
- 积分
- 16714
- 最后登录
- 1970-1-1
|
本帖最后由 lkl0305 于 2015-5-24 19:36 编辑
忙了一天,终于解决了一些问题,可以开始写程序,学习YL-K26Z板子了。
第一个当然是最简单的——百做不厌的流水灯了
当然,在这里主要是练练手,搞定MDK下如何开发YL-K26Z程序了。 我这里记录的比较详细些,也是这一天的总结吧。
1、新建个文件夹,把需要的模版文件拷贝进来(主要是片内外设库,启动文件和内核文件等),如图:
2、打开keil软件,新建工程,选择芯片型号,如图:
3、新建好工程后,设置工程目录,如图:
4、最后效果如图:
5、进行工程选项设置,添加工程头文件路径,如图:
6、硬件仿真器设置,一般要勾选如图选项,这样程序下载后可以直接运行,不然还要按复位件才能运行:
7、查看YL-K26Z板子的电路图,找到三个LED部分如图:
8、可以看出三个灯分别接到了PB18,PB19,PD1上,而且低电平点亮,高电平熄灭。写程序如图:
附程序:
- <p><font size="2">#include "includes.h"</font></p><p><font size="2">void myDelay (INT32U ulTime)
- {
- INT32U i;
- i = 0;
- while (ulTime--)
- {
- for (i = 0; i < 5000; i++);
- }
- }</font></p><p><font size="2">int main (void)
- {
- SystemCoreClockUpdate();
- SIM_SCGC5 |= (SIM_SCGC5_PORTA_MASK
- | SIM_SCGC5_PORTB_MASK
- | SIM_SCGC5_PORTC_MASK
- | SIM_SCGC5_PORTD_MASK
- | SIM_SCGC5_PORTE_MASK );
-
- PORT_ENABLE_CLK(MKL_PORTB); /* 使能PORT时钟 */
- PORT_ENABLE_CLK(MKL_PORTD);
-
- IO_FUN_SEL(MKL_PORTB,18,1); /* IO功能选择 */
- IO_FUN_SEL(MKL_PORTB,19,1);
- IO_FUN_SEL(MKL_PORTD,1,1);
-
- GPIO_DDR_OUTPUT(MKL_PORTB,18); /* IO设置为输出模式 */
- GPIO_DDR_OUTPUT(MKL_PORTB,19);
- GPIO_DDR_OUTPUT(MKL_PORTD,1);
-
- GPIO_SET(MKL_PORTB,18); /* IO设置为高电平,LED熄灭 */
- GPIO_SET(MKL_PORTB,19);
- GPIO_SET(MKL_PORTD,1);
-
- while (1)
- {
- GPIO_CLR(MKL_PORTB,18);
- myDelay(500);
- GPIO_SET(MKL_PORTB,18);
- GPIO_CLR(MKL_PORTB,19);
- myDelay(500);
- GPIO_SET(MKL_PORTB,19);
- GPIO_CLR(MKL_PORTD,1);
- myDelay(500);
- GPIO_SET(MKL_PORTD,1);
- }
- }
- </font></p>
复制代码
9、记得修改includes.h文件里的包含头文件,如图:
10、编译后可以看出程序没有错误:
11、下载后即可运行,效果就不上图了,大家都看了无数遍的流水灯。
最后附上工程文件压缩包,大家可以参考一下。
LSD.rar
(388.37 KB, 下载次数: 2)
|
|