标题:
STM32超声波程序 连PA4,PA6
[打印本页]
作者:
jk3333
时间:
2019-4-25 19:12
标题:
STM32超声波程序 连PA4,PA6
亲测可用
连PA4,PA6
单片机源程序如下:
#include "led.h"
#include "delay.h"
#include "key.h"
#include "sys.h"
#include "usart.h"
#include "exti.h"
#include "beep.h"
#include "timer.h"
#include "wave.h"
#include "FreeRTOS.h"
#include "task.h"
//任务优先级
#define START_TASK_PRIO 1
//任务堆栈大小
#define START_STK_SIZE 128
//任务句柄
TaskHandle_t StartTask_Handler;
//任务函数
void start_task(void *pvParameters);
//任务优先级
#define TASK1_TASK_PRIO 2
//任务堆栈大小
#define TASK1_STK_SIZE 128
//任务句柄
TaskHandle_t Task1Task_Handler;
//任务函数
void task1_task(void *pvParameters);
int main(void)
{
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_4);//设置系统中断优先级分组4
delay_init(); //延时函数初始化
uart_init(115200); //初始化串口
LED_Init(); //初始化LED
KEY_Init();
//创建开始任务
xTaskCreate((TaskFunction_t )start_task, //任务函数
(const char* )"start_task", //任务名称
(uint16_t )START_STK_SIZE, //任务堆栈大小
(void* )NULL, //传递给任务函数的参数
(UBaseType_t )START_TASK_PRIO, //任务优先级
(TaskHandle_t* )&StartTask_Handler); //任务句柄
vTaskStartScheduler(); //开启任务调度
}
//开始任务任务函数
void start_task(void *pvParameters)
{
taskENTER_CRITICAL(); //进入临界区
//创建TASK1任务
xTaskCreate((TaskFunction_t )task1_task,
(const char* )"task1_task",
(uint16_t )TASK1_STK_SIZE,
(void* )NULL,
(UBaseType_t )TASK1_TASK_PRIO,
(TaskHandle_t* )&Task1Task_Handler);
vTaskDelete(StartTask_Handler); //删除开始任务
taskEXIT_CRITICAL(); //退出临界区
}
//task1任务函数
void task1_task(void *pvParameters)
{
delay_init(); //延时函数初始化
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //设置NVIC中断分组2:2位抢占优先级,2位响应优先级
uart_init(115200); //串口初始化为115200
LED_Init(); //初始化与LED连接的硬件接口
BEEP_Init(); //初始化蜂鸣器端口
KEY_Init(); //初始化与按键连接的硬件接口
//EXTIX_Init(); //外部中断初始化
//LED0=0; //点亮LED0
Timer_SRD_Init(5000,7199);
Wave_SRD_Init();
while(1)
{
Wave_SRD_Strat();
LED1=!LED1;
delay_ms(2000);
}
}
// delay_init(); //延时函数初始化
// NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //设置NVIC中断分组2:2位抢占优先级,2位响应优先级
// uart_init(115200); //串口初始化为115200
// LED_Init(); //初始化与LED连接的硬件接口
// BEEP_Init(); //初始化蜂鸣器端口
// KEY_Init(); //初始化与按键连接的硬件接口
// //EXTIX_Init(); //外部中断初始化
// //LED0=0; //点亮LED0
// Timer_SRD_Init(5000,7199);
// Wave_SRD_Init();
//
// while(1)
// {
// Wave_SRD_Strat();
// LED1=!LED1;
// delay_ms(2000);
//
// }
复制代码
所有资料51hei提供下载:
超声波模块程序_STM32F103ZET6.7z
(333.47 KB, 下载次数: 41)
2019-4-27 03:25 上传
点击文件名下载附件
下载积分: 黑币 -5
作者:
admin
时间:
2019-4-27 03:25
本帖需要重新编辑补全电路原理图,源码,详细说明与图片即可获得100+黑币(帖子下方有编辑按钮)
作者:
wubingbing
时间:
2019-11-23 09:49
厉害了,正在学习
作者:
我叫小大打
时间:
2020-4-29 00:11
怎么搞,竟然是错误的程序
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1