diff --git "a/2025/\347\254\2546\347\273\204(GD32F527I-EVAL)/\345\200\252\345\260\224\345\272\267/3fa6a968257ebd024fe0c76354a5acd.png" "b/2025/\347\254\2546\347\273\204(GD32F527I-EVAL)/\345\200\252\345\260\224\345\272\267/3fa6a968257ebd024fe0c76354a5acd.png" new file mode 100644 index 0000000000000000000000000000000000000000..0c14cec05c19dc9c321f394c3eab5fdf0e0cae81 Binary files /dev/null and "b/2025/\347\254\2546\347\273\204(GD32F527I-EVAL)/\345\200\252\345\260\224\345\272\267/3fa6a968257ebd024fe0c76354a5acd.png" differ diff --git "a/2025/\347\254\2546\347\273\204(GD32F527I-EVAL)/\345\200\252\345\260\224\345\272\267/befe15417e42e5cc0554c54b51c2485.jpg" "b/2025/\347\254\2546\347\273\204(GD32F527I-EVAL)/\345\200\252\345\260\224\345\272\267/befe15417e42e5cc0554c54b51c2485.jpg" new file mode 100644 index 0000000000000000000000000000000000000000..7c64f71c0b5a424ca42406bc043167599e091beb Binary files /dev/null and "b/2025/\347\254\2546\347\273\204(GD32F527I-EVAL)/\345\200\252\345\260\224\345\272\267/befe15417e42e5cc0554c54b51c2485.jpg" differ diff --git "a/2025/\347\254\2546\347\273\204(GD32F527I-EVAL)/\345\200\252\345\260\224\345\272\267/\347\254\254\344\270\200\346\254\241\344\275\234\344\270\232.md" "b/2025/\347\254\2546\347\273\204(GD32F527I-EVAL)/\345\200\252\345\260\224\345\272\267/\347\254\254\344\270\200\346\254\241\344\275\234\344\270\232.md" new file mode 100644 index 0000000000000000000000000000000000000000..6e4fb3310e6223e2f85c7333abd3a1acfc5ea6d8 --- /dev/null +++ "b/2025/\347\254\2546\347\273\204(GD32F527I-EVAL)/\345\200\252\345\260\224\345\272\267/\347\254\254\344\270\200\346\254\241\344\275\234\344\270\232.md" @@ -0,0 +1,2 @@ +![alt text](3fa6a968257ebd024fe0c76354a5acd.png) +![alt text](befe15417e42e5cc0554c54b51c2485.jpg) \ No newline at end of file diff --git "a/2025/\347\254\2546\347\273\204(GD32F527I-EVAL)/\345\200\252\345\260\224\345\272\267/\347\254\254\344\272\214\346\254\241\344\275\234\344\270\232.md" "b/2025/\347\254\2546\347\273\204(GD32F527I-EVAL)/\345\200\252\345\260\224\345\272\267/\347\254\254\344\272\214\346\254\241\344\275\234\344\270\232.md" new file mode 100644 index 0000000000000000000000000000000000000000..94f2a6c4d89dc39b27715f322ca00e7ce1a44987 --- /dev/null +++ "b/2025/\347\254\2546\347\273\204(GD32F527I-EVAL)/\345\200\252\345\260\224\345\272\267/\347\254\254\344\272\214\346\254\241\344\275\234\344\270\232.md" @@ -0,0 +1,93 @@ +时间片轮转 +#include +#include +#include + +/* defined the LED0 pin: PF9 */ + +void usr_thread1(void) +{ + while(1) + { + rt_kprintf("run in usr1 thread\n"); + } +} + +void usr_thread2(void) +{ + while(1) + { + rt_kprintf("run in usr2 thread\n"); + } +} + + +static rt_thread_t tid1 = RT_NULL; +static rt_thread_t tid2 = RT_NULL; +int main(void) +{ + tid1 = rt_thread_create("usr1", usr_thread1, RT_NULL, 1024, 11, 5); + tid2 = rt_thread_create("usr2", usr_thread2, RT_NULL, 1024, 11, 5); + + if(tid1 != RT_NULL) + { + rt_thread_startup(tid1); + } + + if(tid2 != RT_NULL) + { + rt_thread_startup(tid2); + } + + rt_kprintf("run in main\n"); + + return RT_EOK; +} + +抢占 +#include +#include +#include + +/* defined the LED0 pin: PF9 */ + +void usr_thread1(void) +{ + while(1) + { + rt_kprintf("run in usr1 thread\n"); + rt_thread_delay(5); + } +} + +void usr_thread2(void) +{ + while(1) + { + rt_kprintf("run in usr2 thread\n"); + rt_thread_delay(5); + } +} + + +static rt_thread_t tid1 = RT_NULL; +static rt_thread_t tid2 = RT_NULL; +int main(void) +{ + tid1 = rt_thread_create("usr1", usr_thread1, RT_NULL, 1024, 9, 5); + tid2 = rt_thread_create("usr2", usr_thread2, RT_NULL, 1024, 9, 5); + + if(tid1 != RT_NULL) + { + rt_thread_startup(tid1); + } + + if(tid2 != RT_NULL) + { + rt_thread_startup(tid2); + } + + rt_kprintf("run in main\n"); + + return RT_EOK; +} \ No newline at end of file