完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
硬件环境
自制的F767IGT6开发板,板载USB,UART1,CAN1,LED,按键等资源,SWD调试接口,其他引脚全部用插针引出 软件环境 RT-THread 4.0.2,开发环境为RT-Thread Studio 2.0.0 自制ST-Link-V2.1,CubeMX,Keil MDK,串口助手(哪个都可以用,建议用Putty,方便调试)等 新建工程 通过基于芯片的方式新建工程, 需要注意的是,此时新建的工程用的是HSI时钟,也就是片内高速时钟,晶振频率不准的,点灯无所谓,正式项目一般会用到外部晶振,此时需要做出修改,后续再学习,今天只点灯 生成工程后编译,无错误。写入芯片可以正常执行,Finsh控制台可以正常输出。 打开串口助手可以看到间隔1秒的输出显示 点灯踩坑 此时有个坑,按官方教程,工程会自动启动PIN设备,以及相关LED代码。 实际工程,确实启动了PIN设备,但没有生成LED驱动代码 #include #define DBG_TAG "main" #define DBG_LVL DBG_LOG #include int main(void) { int count = 1; while (count++) { LOG_D("Hello RT-Thread!"); rt_thread_mdelay(1000); } return RT_EOK; } 按教程中的示例,咱给加上呗 //我的板子上的LED位于PB6和PH11 #define LED0_PIN GET_PIN(B, 11) #define LED1_PIN GET_PIN(H, 6) #include #define DBG_TAG "main" #define DBG_LVL DBG_LOG #include int main(void) { int count = 1; rt_pin_mode(LED0_PIN, PIN_MODE_OUTPUT); rt_pin_mode(LED1_PIN, PIN_MODE_OUTPUT); while (count++) { rt_pin_write(LED0_PIN, count % 2); rt_pin_write(LED1_PIN, (count+1) % 2); LOG_D("Hello RT-Thread!"); rt_thread_mdelay(1000); } return RT_EOK; } 可是编译过不去,明明(我不是明明O_O )是按教程做的啊,卡了好久,重新生成工程,还是不行,按提示,是由于缺少rt_pin_write的头文件,好吧,加上,还是不行 后来求助论坛,被告知需要加入另外两个头文件 //按芯片生成的工程,需要手动添加以下头文件,及后续操作代码 #include #include 再编译,OK,写入芯片,灯闪了。同时,打开串口助手,可以看见1秒次的串口数据发送。我用的是Putty,这个软件的好处是可以按Tab键进行指令补全,看官可以自己试一下RT-Thread的Finsh功能 终于从小白修炼到一灯大师了 完整代码如下 //我的板子上的LED位于PB6和PH11 #define LED0_PIN GET_PIN(B, 11) #define LED1_PIN GET_PIN(H, 6) #include #define DBG_TAG "main" #define DBG_LVL DBG_LOG #include //按芯片生成的工程,需要手动添加以下头文件,及LED操作代码 #include #include int main(void) { int count = 1; //设定引脚状态 rt_pin_mode(LED0_PIN, PIN_MODE_OUTPUT); rt_pin_mode(LED1_PIN, PIN_MODE_OUTPUT); while (count++) { //两个灯交替点亮 rt_pin_write(LED0_PIN, count % 2); rt_pin_write(LED1_PIN, (count+1) % 2); LOG_D("Hello RT-Thread!"); rt_thread_mdelay(1000); } return RT_EOK; } |
|
|
|
只有小组成员才能发言,加入小组>>
3309 浏览 9 评论
2988 浏览 16 评论
3490 浏览 1 评论
9050 浏览 16 评论
4085 浏览 18 评论
1171浏览 3评论
602浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
594浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2332浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1894浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-20 13:25 , Processed in 1.109214 second(s), Total 48, Slave 39 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号