本文基于半颗心脏写的frtos框架
首先我们怎么样创建一个工程目录
按照半颗心脏的建立目录的方法是可行的,这是一种简单的建立工程的方法,也能够快速使用。
下面是我遇到的一些问题
1、code里面的绿色下划线怎么办
在这个项目里面,我们经常发现,很多头文件找不到路径。那很多人就会问了,咋办啊?我的回答是,不要管了,你会发现,make 的时候他会帮你找到的,当然,你自己写的头文件,那是一定要自己加上路径的哈。
2、初始化gpio时的注意事项
uint32_t io_conf,注意这个io_conf结构体可以初始化很多gpio,所以每次我们需要将所有的里面的内容写完,然后再执行别的。
每次都用这个函数完成注册:gpio_config(&io_conf);,之后再初始化下一个,不然你会发现,你只是初始化了一个gpio。
3、gpio中断的配置
static xQueueHandle gpio_evt_queue = NULL;
//设置是上升沿下降沿还是什么
gpio_set_intr_type(GPIO_INPUT_ISR, GPIO_INTR_ANYEDGE);
//从isr中注册一个中断事件队列
gpio_evt_queue = xQueueCreate(10, sizeof(uint32_t));
//初始化gpio任务
xTaskCreate(Task_gpio_isr, "Task_gpio_isr", 1024, NULL, 10, NULL);
//注册中断服务
gpio_install_isr_service(0);
//添加GPIO_ISR_1的中断回调函数
gpio_isr_handler_add(GPIO_INPUT_ISR, gpio_isr_handler, (void *)GPIO_INPUT_ISR);
自己的感受:因为加入了系统的操作,系统会帮助我们来安排一些任务的执行,减少了我们原来的一些逻辑操作,但是我们也必须来使用系统的任务函数执行任务。