在线时间428 小时
UID3006061
注册时间2015-3-23
NXP金币76
TA的每日心情 | 开心 2025-1-21 08:52 |
---|
签到天数: 861 天 连续签到: 1 天 [LV.10]以坛为家III
金牌会员
 
- 积分
- 5867
- 最后登录
- 2025-1-22
|
本帖最后由 leo121_3006061 于 2017-8-4 10:28 编辑
由于本次所用的板子是lite版,而此次最初提供的RTT的移植代码是另外一块板子,好在强大的社区支持,很快FAE就提供了本次活动所用的板子的移植程序,为我们学习提供了便利条件。初步了解一下和最初版本有哪些不同,我们还要在此基础上,添加LED,Key等驱动,使之完全兼容本次活动所用的板子。
如下图所示,13个文件做了修改,具体查看可以展开源代码。
结合万利的驱动,更改drv_led.c,把修改的部分贴上来。
- #define LED_NUM 8 //修改为8个led
复制代码 从万利的源代码复制过来的pin,port定义
- const uint8_t LED_GPIO_PORT[LED_NUM] = { 0, 0, 0, 0, 0, 0, 0, 0};
- const uint8_t LED_GPIO_PIN [LED_NUM] = {15, 19, 21, 22, 25, 26, 29, 30};
- const uint8_t LED_GPIO_ON [LED_NUM] = { 1, 1, 1, 1, 0, 0, 0, 0};
- const uint8_t LED_GPIO_OFF [LED_NUM] = { 0, 0, 0, 0, 1, 1, 1, 1};
复制代码- 不知道出了什么问题,代码贴上来保存就消失不见了,截图了
复制代码
修改demo_thread.c,让第一个和最后一个灯闪亮。去掉int demo_init(void)内的注释
- static void thread1_entry(void* parameter)
- {
- while(1)
- {
- Led_Control(7,1);
- rt_thread_delay(RT_TICK_PER_SECOND);
- Led_Control(7,0);
- rt_thread_delay(RT_TICK_PER_SECOND);
- }
- }
- static void thread2_entry(void* parameter)
- {
- while(1)
- {
- Led_Control(0,1);
- rt_thread_delay(RT_TICK_PER_SECOND);
- Led_Control(0,0);
- rt_thread_delay(RT_TICK_PER_SECOND);
- }
- }
复制代码
编译下载到开发板,能看到由系统2个线程控制的红色的灯和绿色的灯交叉闪亮,说明我们修改的drv_led的驱动正确,打开串口助手可以看到输出
后边再把drv_key.c添加上来
|
|