Compare commits

...

3 Commits

Author SHA1 Message Date
95010c4aa6 红外线遥控器按键值 2024-08-06 10:53:50 +08:00
49867807c0 修改红外名字 2024-08-06 10:35:10 +08:00
9d589d200f 调整好针脚等可以运行了,但一闪一闪的 2024-08-06 10:32:03 +08:00
6 changed files with 84 additions and 18 deletions

17
.config
View File

@ -270,7 +270,7 @@ CONFIG_RT_WLAN_WORKQUEUE_THREAD_PRIO=15
# CONFIG_RT_USING_VIRTIO is not set
CONFIG_RT_USING_PIN=y
# CONFIG_RT_USING_KTIME is not set
# CONFIG_RT_USING_HWTIMER is not set
CONFIG_RT_USING_HWTIMER=y
# CONFIG_RT_USING_CHERRYUSB is not set
# end of Device Drivers
@ -1146,10 +1146,14 @@ CONFIG_NEC_DEVIATION=100
# end of Select infrared decoder
CONFIG_PKG_USING_DRV_INFRARED=y
# CONFIG_INFRARED_SEND is not set
CONFIG_INFRARED_SEND=y
CONFIG_INFRARED_SEND_PWM="pwm3"
CONFIG_INFRARED_PWM_DEV_CHANNEL=4
CONFIG_INFRARED_SEND_HWTIMER="timer13"
CONFIG_INFRARED_MAX_SEND_SIZE=1000
CONFIG_INFRARED_RECEIVE=y
CONFIG_INFRARED_RECEIVE_PIN=17
CONFIG_INFRARED_RECEIVE_HWTIMER="timer16"
CONFIG_INFRARED_RECEIVE_PIN=88
CONFIG_INFRARED_RECEIVE_HWTIMER="timer14"
# CONFIG_PKG_USING_INFRARED_V010 is not set
CONFIG_PKG_USING_INFRARED_V011=y
# CONFIG_PKG_USING_INFRARED_LATEST_VERSION is not set
@ -1641,7 +1645,10 @@ CONFIG_BSP_USING_UART1=y
CONFIG_BSP_USING_UART6=y
# CONFIG_BSP_UART6_RX_USING_DMA is not set
# CONFIG_BSP_UART6_TX_USING_DMA is not set
# CONFIG_BSP_USING_TIM is not set
CONFIG_BSP_USING_TIM=y
# CONFIG_BSP_USING_TIM11 is not set
CONFIG_BSP_USING_TIM13=y
CONFIG_BSP_USING_TIM14=y
CONFIG_BSP_USING_PWM=y
# CONFIG_BSP_USING_PWM1 is not set
# CONFIG_BSP_USING_PWM2 is not set

View File

@ -1,4 +1,32 @@
# My_project
| 编号key| 功能 |
| :----: | :----: |
| 0x30| 上 |
| 0xE8 | 左 |
| 0xB0 | 下 |
| 0x68 | 右 |
| 0xFF | OK |
| 0x38 | 电源键 |
| 0xA8 | 静音 |
| 0x88 | 菜单 |
| 0x28 | 退出 |
# STM32F407 野火指南者开发板 BSP 说明
## 简介
本文档为 RT-Thread 开发团队为 STM32F407 野火指南者开发板提供的 BSP (板级支持包) 说明。
主要内容如下:
- 开发板资源介绍
- BSP 快速上手
- BSP 使用说明
- 注意事项
- 参考资料
## 开发板介绍
#### LCD 显示温湿度
![LCD温湿度](/my_picture/lcdtemp.jpg)
左上角是00 →x↓y

View File

@ -8,7 +8,14 @@
![alt text](image.png)
对照示例0.1.1版什么都不用做,也不会报错什么没定义
.config/rtconfig.h
对比.config/rtconfig.h
但发了红外线也没反应……
再加回接收、发送
又是没定义
对比.config/rtconfig.h
调整好pintimer#define ***timer
总算可以了
调整好针脚等可以运行了,但一闪一闪的,估计是线程切换的原因?
### GET_PIN(F, 11) 的头文件
``` c
@ -17,3 +24,18 @@
#define PIN_LED_B GET_PIN(F, 11) // PF11 : LED_B --> LED
#define PIN_LED_R GET_PIN(F, 12) // PF12 : LED_R --> LED
```
### 红外线遥控器按键值
原来要按两次key才变搞得还以为昨天找到的都是乱输出的
| 编号key| 功能 |
| :----: | :----: |
| 0x30| 上 |
| 0xE8 | 左 |
| 0xB0 | 下 |
| 0x68 | 右 |
| 0xFF | OK |
| 0x38 | 电源键 |
| 0xA8 | 静音 |
| 0x88 | 菜单 |
| 0x28 | 退出 |

View File

@ -55,7 +55,7 @@ extern void myir_entry(void *parameter);
void ath_init(void);
void mqt_init(void);
int ap3_init(void);
void irf_init(void);
void inf_init(void);
#define EXAMPLE_TRACE(fmt, ...) \
@ -305,7 +305,7 @@ static void mqtt_example_main(void *parameter)
rt_thread_t MQTT_Thread = RT_NULL;
rt_thread_t Snake_Thread = RT_NULL;
rt_thread_t Irfrared_Thread = RT_NULL;
rt_thread_t Infrared_Thread = RT_NULL;
void ath_init(void)
{
@ -361,20 +361,20 @@ MSH_CMD_EXPORT_ALIAS(snk_init, snake, "snake game");
// return 0;
// }
void irf_init(void)
void inf_init(void)
{
Irfrared_Thread = rt_thread_create("Irfrared_Thread", myir_entry, RT_NULL, THREAD_STACK_SIZE, THREAD_PRIORITY, THREAD_TIMESLICE);
Infrared_Thread = rt_thread_create("Infrared_Thread", myir_entry, RT_NULL, THREAD_STACK_SIZE, THREAD_PRIORITY, THREAD_TIMESLICE);
if (Irfrared_Thread != RT_NULL)
if (Infrared_Thread != RT_NULL)
{
rt_thread_startup(Irfrared_Thread);
rt_thread_startup(Infrared_Thread);
}
else
{
rt_kprintf("Irfrared Thread Create Failed!\n");
rt_kprintf("Infrared Thread Create Failed!\n");
}
}
MSH_CMD_EXPORT_ALIAS(irf_init, irf, "Irfrared");
MSH_CMD_EXPORT_ALIAS(inf_init, inf, "Infrared");
void my_project(void)
{
ath_init();
@ -383,6 +383,6 @@ void my_project(void)
ap3_init();
irf_init();
inf_init();
}
MSH_CMD_EXPORT_ALIAS(my_project, myproject, run my project);

View File

@ -173,6 +173,7 @@
#define RT_WLAN_WORKQUEUE_THREAD_SIZE 2048
#define RT_WLAN_WORKQUEUE_THREAD_PRIO 15
#define RT_USING_PIN
#define RT_USING_HWTIMER
/* end of Device Drivers */
/* C/C++ and POSIX layer */
@ -498,9 +499,14 @@
#define NEC_DEVIATION 100
/* end of Select infrared decoder */
#define PKG_USING_DRV_INFRARED
#define INFRARED_SEND
#define INFRARED_SEND_PWM "pwm3"
#define INFRARED_PWM_DEV_CHANNEL 4
#define INFRARED_SEND_HWTIMER "timer13"
#define INFRARED_MAX_SEND_SIZE 1000
#define INFRARED_RECEIVE
#define INFRARED_RECEIVE_PIN 17
#define INFRARED_RECEIVE_HWTIMER "timer16"
#define INFRARED_RECEIVE_PIN 88
#define INFRARED_RECEIVE_HWTIMER "timer14"
#define PKG_USING_INFRARED_V011
/* end of peripheral libraries and drivers */
@ -617,6 +623,9 @@
#define BSP_USING_UART
#define BSP_USING_UART1
#define BSP_USING_UART6
#define BSP_USING_TIM
#define BSP_USING_TIM13
#define BSP_USING_TIM14
#define BSP_USING_PWM
#define BSP_USING_PWM3
#define BSP_USING_PWM3_CH2