FM33LG0XX_KEIL例程_v0.44\FreeRTOS下有一个FreeRTOS
修改简化下能够运行。
main.c
/********************************程序逻辑***************************************/
/*1、ADC――PC9配置为ADC通道******************************************************/
/*2、GPIO――PC6配置为下降沿中断**************************************************/
/*4、创建3个任务,分别为LedTask、AdcTask、GPIOTask******************************/
/********************************************************************************/
#include "main.h"
#include "FreeRTOS.h"
#include "task.h"
#include "semphr.h"
#include "queue.h"
#include "adc.h"
#include "taskadc.h"
#include "gpio.h"
#include "taskgpio.h"
#include "uart.h"
QueueHandle_t adcSemaphore = NULL;
SemaphoreHandle_t gpioSemaphore = NULL;
#define TASK_LED_PRIORITY (tskIDLE_PRIORITY + 1)
#define TASK_ADC_PRIORITY (tskIDLE_PRIORITY + 1)
#define TASK_GPIO_PRIORITY (tskIDLE_PRIORITY + 2)
void LedTask(void *pvParameters)
{
pvParameters = pvParameters;
while(1)
{
vTaskDelay(1000);
FL_GPIO_ToggleOutputPin(GPIOC, FL_GPIO_PIN_1);
}
}
int main(void)
{
/* Reset of all peripherals, Initializes the Flash interface and the Systick. */
/* SHOULD BE KEPT!!! */
MF_Clock_Init();
/* Initialize FL Driver Library */
/* SHOULD BE KEPT!!! */
FL_Init();
/* Initialize all configured peripherals */
/* SHOULD BE KEPT!!! */
MF_Config_Init();
DebugInit();
printf("Debug_Init:OK\r\n");
ADC_Init();
GPIO_interrupt_init();
adcSemaphore = xSemaphoreCreateCounting(10, 5);
gpioSemaphore = xSemaphoreCreateBinary();
xTaskCreate(LedTask, "Led", configMINIMAL_STACK_SIZE, NULL, TASK_LED_PRIORITY, NULL);
xTaskCreate(AdcTask, "Adc", configMINIMAL_STACK_SIZE, NULL, TASK_ADC_PRIORITY, NULL);
xTaskCreate(GPIOTask, "GPIO", configMINIMAL_STACK_SIZE, NULL, TASK_GPIO_PRIORITY, NULL);
vTaskStartScheduler();
while(1)
{
}
}
build
*** Using Compiler 'V5.06 update 1 (build 61)', folder: 'H:\c51\UV4\ARM\ARMCC\Bin'
Rebuild target 'Example'
assembling startup_fm33lg0xx.s...
compiling mf_config.c...
compiling main.c...
compiling adc.c...
compiling gpio.c...
compiling taskadc.c...
compiling taskgpio.c...
compiling system_fm33lg0xx.c...
compiling uart.c...
compiling fm33lg0xx_fl.c...
compiling fm33lg0xx_fl_adc.c...
compiling fm33lg0xx_fl_aes.c...
compiling fm33lg0xx_fl_atim.c...
compiling fm33lg0xx_fl_bstim16.c...
compiling fm33lg0xx_fl_bstim32.c...
compiling fm33lg0xx_fl_can.c...
compiling fm33lg0xx_fl_cmu.c...
compiling fm33lg0xx_fl_comp.c...
compiling fm33lg0xx_fl_crc.c...
compiling fm33lg0xx_fl_dac.c...
compiling fm33lg0xx_fl_divas.c...
compiling fm33lg0xx_fl_dma.c...
compiling fm33lg0xx_fl_exti.c...
compiling fm33lg0xx_fl_flash.c...
compiling fm33lg0xx_fl_gpio.c...
compiling fm33lg0xx_fl_gptim.c...
compiling fm33lg0xx_fl_i2c.c...
compiling fm33lg0xx_fl_iwdt.c...
compiling fm33lg0xx_fl_lcd.c...
compiling fm33lg0xx_fl_lptim16.c...
compiling fm33lg0xx_fl_lptim32.c...
compiling fm33lg0xx_fl_lpuart.c...
compiling fm33lg0xx_fl_opa.c...
compiling fm33lg0xx_fl_pgl.c...
compiling fm33lg0xx_fl_rng.c...
compiling fm33lg0xx_fl_rtca.c...
compiling fm33lg0xx_fl_rtcb.c...
compiling fm33lg0xx_fl_spi.c...
compiling fm33lg0xx_fl_svd.c...
compiling fm33lg0xx_fl_u7816.c...
compiling fm33lg0xx_fl_uart.c...
compiling fm33lg0xx_fl_vao.c...
compiling fm33lg0xx_fl_wwdt.c...
compiling croutine.c...
compiling fm33lg0xx_fl_pmu.c...
compiling list.c...
compiling queue.c...
compiling tasks.c...
compiling timers.c...
compiling heap_4.c...
compiling fm33lg0xx_fl_vrefp.c...
compiling port.c...
linking...
Program Size: Code=13340 RO-data=308 RW-data=132 ZI-data=22204
FromELF: creating hex file...
".\Objects\FM33LC0xx_Tester.axf" - 0 Error(s), 0 Warning(s).
Build Time Elapsed: 00:00:17
运行com口:
``Debug_Init:OK
任务名\t 运行时间 运行所占百分比
CONVERT: 2077mv
任务名\t 运行时间 运行所占百分比
GPIO 160 <1
IDLE 19925 99
Adc 53 <1
Led 2 <1
CONVERT: 2273mv
任务名\t 运行时间 运行所占百分比
GPIO 540 1
Led 4 <1
IDLE 39867 98
Adc 108 <1
CONVERT: 2195mv
任务名\t 运行时间 运行所占百分比
GPIO 920 1
IDLE 59810 98
Adc 163 <1
Led 6 <1
CONVERT: 2120mv
任务名\t 运行时间 运行所占百分比
GPIO 1299 1
Led 8 <1
IDLE 79754 98
Adc 217 <1
CONVERT: 1978mv
任务名\t 运行时间 运行所占百分比
GPIO 1682 1
IDLE 99694 98
Adc 272 <1
Led 10 <1
CONVERT: 1874mv
任务名\t 运行时间 运行所占百分比
GPIO 2066 1
Led 11 <1
IDLE 119633 98
Adc 327 <1
CONVERT: 1892mv
任务名\t 运行时间 运行所占百分比
GPIO 2453 1
IDLE 139569 98
Adc 382 <1
Led 13 <1
CONVERT: 1898mv
任务名\t 运行时间 运行所占百分比
GPIO 2840 1
Led 15 <1
IDLE 159506 97
Adc 436 <1
CONVERT: 1939mv
任务名\t 运行时间 运行所占百分比
GPIO 3227 1
IDLE 179442 97
Adc 491 <1
Led 17 <1
CONVERT: 1986mv
任务名\t 运行时间 运行所占百分比
GPIO 3614 1
Led 19 <1
IDLE 199379 97
Adc 545 <1
CONVERT: 2109mv
任务名\t 运行时间 运行所占百分比
GPIO 4001 1
IDLE 219315 97
Adc 600 <1
Led 21 <1
CONVERT: 2229mv
任务名\t 运行时间 运行所占百分比
GPIO 4388 1
Led 23 <1
IDLE 239252 97
Adc 654 <1
CONVERT: 2190mv
任务名\t 运行时间 运行所占百分比
GPIO 4775 1
IDLE 259188 97
Adc 709 <1
Led 25 <1
CONVERT: 2009mv
任务名\t 运行时间 运行所占百分比
GPIO 5162 1
Led 27 <1
IDLE 279125 97
Adc 763 <1
CONVERT: 1859mv
任务名\t 运行时间 运行所占百分比
GPIO 5549 1
IDLE 299061 97
Adc 818 <1
Led 29 <1
CONVERT: 1875mv
任务名\t 运行时间 运行所占百分比
GPIO 5936 1
Led 31 <1
IDLE 318998 97
Adc 872 <1
CONVERT: 1906mv
任务名\t 运行时间 运行所占百分比
GPIO 6323 1
IDLE 338934 97
Adc 927 <1
Led 33 <1
CONVERT: 1956mv
任务名\t 运行时间 运行所占百分比
GPIO 6710 1
Led 35 <1
IDLE 358871 97
Adc 981 <1
CONVERT: 2011mv
任务名\t 运行时间 运行所占百分比
GPIO 7097 1
IDLE 378807 97
Adc 1036 <1
Led 37 <1
CONVERT: 2176mv
任务名\t 运行时间 运行所占百分比
GPIO 7486 1
Led 39 <1
IDLE 398742 97
Adc 1090 <1
CONVERT: 2217mv
任务名\t 运行时间 运行所占百分比
GPIO 7875 1
IDLE 418678 97
Adc 1143 <1
Led 41 <1
CONVERT: 2120mv
任务名\t 运行时间 运行所占百分比
GPIO 8264 1
Led 43 <1
IDLE 438613 97
Adc 1197 <1
CONVERT: 1916mv
任务名\t 运行时间 运行所占百分比
GPIO 8653 1
IDLE 458549 97
Adc 1250 <1
Led 45 <1
CONVERT: 1869mv
任务名\t 运行时间 运行所占百分比
GPIO 9042 1
Led 47 <1
IDLE 478484 97
Adc 1304 <1
CONVERT: 1886mv
任务名\t 运行时间 运行所占百分比
GPIO 9431 1
IDLE 498420 97
Adc 1357 <1
Led 49 <1
CONVERT: 1923mv
任务名\t 运行时间 运行所占百分比
GPIO 9820 1
Led 51 <1
IDLE 518355 97
Adc 1411 <1
CONVERT: 1984mv
任务名\t 运行时间 运行所占百分比
GPIO 10209 1
IDLE 538291 97
Adc 1464 <1
Led 53 <1
CONVERT: 2095mv
任务名\t 运行时间 运行所占百分比
GPIO 10600 1
Led 55 <1
IDLE 558224 97
Adc 1518 <1
CONVERT: 2236mv
任务名\t 运行时间 运行所占百分比
GPIO 10991 1
IDLE 578158 97
Adc 1571 <1
Led 57 <1
CONVERT: 2175mv
任务名\t 运行时间 运行所占百分比
GPIO 11382 1
Led 59 <1
IDLE 598091 97
Adc 1625 <1
CONVERT: 1998mv
任务名\t 运行时间 运行所占百分比
GPIO 11774 1
IDLE 618025 97
Adc 1677 <1
Led 61 <1
CONVERT: 1858mv
任务名\t 运行时间 运行所占百分比
GPIO 12165 1
Led 63 <1
IDLE 637958 97
Adc 1731 <1
CONVERT: 1877mv
任务名\t 运行时间 运行所占百分比
GPIO 12556 1
IDLE 657892 97
Adc 1784 <1
Led 65 <1
CONVERT: 1902mv
任务名\t 运行时间 运行所占百分比
GPIO 12947 1
Led 67 <1
IDLE 677825 97
Adc 1838 <1
CONVERT: 1972mv
任务名\t 运行时间 运行所占百分比
GPIO 13338 1
IDLE 697759 97
Adc 1891 <1
Led 69 <1
CONVERT: 2035mv
任务名\t 运行时间 运行所占百分比
GPIO 13729 1
Led 71 <1
IDLE 717692 97
Adc 1945 <1
CONVERT: 2220mv
任务名\t 运行时间 运行所占百分比
GPIO 14120 1
IDLE 737626 97
Adc 1998 <1
Led 73 <1
CONVERT: 2199mv
任务名\t 运行时间 运行所占百分比
GPIO 14512 1
Led 74 <1
IDLE 757559 97
Adc 2052 <1
CONVERT: 2049mv
任务名\t 运行时间 运行所占百分比
GPIO 14904 1
IDLE 777493 97
Adc 2104 <1
Led 76 <1
CONVERT: 1869mv
任务名\t 运行时间 运行所占百分比
GPIO 15295 1
Led 78 <1
IDLE 797426 97
Adc 2158 <1
CONVERT: 1876mv
任务名\t 运行时间 运行所占百分比
GPIO 15686 1
IDLE 817360 97
Adc 2211 <1
Led 80 <1
CONVERT: 1894mv
任务名\t 运行时间 运行所占百分比
GPIO 16077 1
Led 82 <1
IDLE 837293 97
Adc 2265 <1
CONVERT: 1935mv
任务名\t 运行时间 运行所占百分比
GPIO 16469 1
IDLE 857227 97
Adc 2317 <1
Led 84 <1
CONVERT: 1986mv
任务名\t 运行时间 运行所占百分比
GPIO 16860 1
Led 86 <1
IDLE 877160 97
Adc 2371 <1
CONVERT: 2117mv
任务名\t 运行时间 运行所占百分比
GPIO 17251 1
IDLE 897094 97
Adc 2424 <1
Led 88 <1
CONVERT: 2219mv
任务名\t 运行时间 运行所占百分比
GPIO 17643 1
Led 89 <1
IDLE 917027 97
Adc 2478 <1
CONVERT: 2204mv
任务名\t 运行时间 运行所占百分比
GPIO 18035 1
IDLE 936961 97
Adc 2530 <1
Led 91 <1
CONVERT: 2048mv
任务名\t 运行时间 运行所占百分比
GPIO 18426 1
Led 93 <1
IDLE 956894 97
Adc 2584 <1
CONVERT: 1869mv
任务名\t 运行时间 运行所占百分比
GPIO 18817 1
IDLE 976828 97
Adc 2637 <1
Led 95 <1
CONVERT: 1876mv
任务名\t 运行时间 运行所占百分比
GPIO 19208 1
Led 97 <1
IDLE 996761 97
Adc 2691 <1
CONVERT: 1885mv
任务名\t 运行时间 运行所占百分比
GPIO 19600 1
IDLE 1016695 97
Adc 2743 <1
Led 99 <1
CONVERT: 1917mv
任务名\t 运行时间 运行所占百分比
GPIO 19994 1
Led 100 <1
IDLE 1036626 97
Adc 2797 <1
CONVERT: 1971mv
任务名\t 运行时间 运行所占百分比
GPIO 20390 1
IDLE 1056556 97
Adc 2849 <1
Led 102 <1
CONVERT: 1992mv
任务名\t 运行时间 运行所占百分比
GPIO 20786 1
Led 103 <1
IDLE 1076485 97
Adc 2903 <1
CONVERT: 2128mv
任务名\t 运行时间 运行所占百分比
GPIO 21182 1
IDLE 1096415 97
Adc 2955 <1
Led 105 <1
CONVERT: 2208mv
任务名\t 运行时间 运行所占百分比
GPIO 21578 1
Led 106 <1
IDLE 1116344 97
Adc 3009 <1
CONVERT: 2178mv
任务名\t 运行时间 运行所占百分比
GPIO 21974 1
IDLE 1136274 97
Adc 3061 <1
Led 108 <1
CONVERT: 2091mv
任务名\t 运行时间 运行所占百分比
GPIO 22370 1
Led 109 <1
IDLE 1156203 97
Adc 3115 <1
CONVERT: 1967mv
任务名\t 运行时间 运行所占百分比
GPIO 22766 1
IDLE 1176133 97
Adc 3167 <1
Led 111 <1
CONVERT: 1879mv
任务名\t 运行时间 运行所占百分比
GPIO 23162 1
Led 113 <1
IDLE 1196061 97
Adc 3221 <1
CONVERT: 1885mv
任务名\t 运行时间 运行所占百分比
GPIO 23558 1
IDLE 1215991 97
Adc 3273 <1
Led 115 <1
CONVERT: 1906mv
任务名\t 运行时间 运行所占百分比
GPIO 23954 1
Led 117 <1
IDLE 1235919 97
Adc 3327 <1
CONVERT: 1917mv
任务名\t 运行时间 运行所占百分比
GPIO 24350 1
IDLE 1255849 97
Adc 3379 <1
Led 119 <1
CONVERT: 1931mv
任务名\t 运行时间 运行所占百分比
GPIO 24746 1
Led 121 <1
IDLE 1275777 97
Adc 3433 <1
CONVERT: 1965mv
任务名\t 运行时间 运行所占百分比
GPIO 25142 1
IDLE 1295707 97
Adc 3485 <1
Led 123 <1
CONVERT: 1989mv
任务名\t 运行时间 运行所占百分比
GPIO 25538 1
Led 125 <1
IDLE 1315635 97
Adc 3539 <1
CONVERT: 2045mv
任务名\t 运行时间 运行所占百分比
GPIO 25934 1
IDLE 1335565 97
Adc 3591 <1
Led 127 <1
CONVERT: 2143mv
任务名\t 运行时间 运行所占百分比
GPIO 26330 1
Led 128 <1
IDLE 1355494 97
Adc 3645 <1
CONVERT: 2199mv
任务名\t 运行时间 运行所占百分比
GPIO 26726 1
IDLE 1375424 97
Adc 3697 <1
Led 130 <1
CONVERT: 2172mv
任务名\t 运行时间 运行所占百分比
GPIO 27122 1
Led 131 <1
IDLE 1395353 97
Adc 3751 <1
CONVERT: 2108mv
任务名\t 运行时间 运行所占百分比
GPIO 27518 1
IDLE 1415283 97
Adc 3803 <1
Led 133 <1
CONVERT: 2010mv
任务名\t 运行时间 运行所占百分比
GPIO 27914 1
Led 134 <1
IDLE 1435212 97
Adc 3857 <1
CONVERT: 1892mv
任务名\t 运行时间 运行所占百分比
GPIO 28310 1
IDLE 1455142 97
Adc 3909 <1
Led 136 <1
CONVERT: 1883mv
任务名\t 运行时间 运行所占百分比
GPIO 28706 1
Led 137 <1
IDLE 1475071 97
Adc 3963 <1
CONVERT: 1895mv
任务名\t 运行时间 运行所占百分比
GPIO 29102 1
IDLE 1495001 97
Adc 4015 <1
Led 139 <1
CONVERT: 1904mv
任务名\t 运行时间 运行所占百分比
GPIO 29498 1
Led 140 <1
IDLE 1514930 97
Adc 4069 <1
CONVERT: 1922mv
任务名\t 运行时间 运行所占百分比
GPIO 29894 1
IDLE 1534860 97
Adc 4121 <1
Led 142 <1
CONVERT: 1964mv
任务名\t 运行时间 运行所占百分比
GPIO 30290 1
Led 144 <1
IDLE 1554788 97
Adc 4175 <1
CONVERT: 1990mv
任务名\t 运行时间 运行所占百分比
GPIO 30686 1
IDLE 1574718 97
Adc 4227 <1
Led 146 <1
CONVERT: 2061mv
任务名\t 运行时间 运行所占百分比
GPIO 31082 1
Led 148 <1
IDLE 1594646 97
Adc 4281 <1
CONVERT: 2186mv
任务名\t 运行时间 运行所占百分比
GPIO 31478 1
IDLE 1614576 97
Adc 4333 <1
Led 150 <1
CONVERT: 2194mv
任务名\t 运行时间 运行所占百分比
GPIO 31874 1
Led 151 <1
IDLE 1634505 97
Adc 4387 <1
CONVERT: 2150mv
任务名\t 运行时间 运行所占百分比
GPIO 32270 1
IDLE 1654435 97
Adc 4439 <1
Led 153 <1
CONVERT: 2051mv
任务名\t 运行时间 运行所占百分比
GPIO 32666 1
Led 155 <1
IDLE 1674363 97
Adc 4493 <1
CONVERT: 1900mv
任务名\t 运行时间 运行所占百分比
GPIO 33062 1
IDLE 1694293 97
Adc 4545 <1
Led 157 <1
CONVERT: 1876mv
任务名\t 运行时间 运行所占百分比
GPIO 33458 1
Led 158 <1
IDLE 1714222 97
Adc 4599 <1
CONVERT: 1894mv
任务名\t 运行时间 运行所占百分比
GPIO 33854 1
IDLE 1734152 97
Adc 4651 <1
Led 160 <1
CONVERT: 1907mv
任务名\t 运行时间 运行所占百分比
GPIO 34250 1
Led 162 <1
IDLE 1754080 97
Adc 4705 <1
CONVERT: 1925mv
任务名\t 运行时间 运行所占百分比
GPIO 34646 1
IDLE 1774010 97
Adc 4757 <1
Led 164 <1
CONVERT: 1963mv
任务名\t 运行时间 运行所占百分比
GPIO 35042 1
Led 166 <1
IDLE 1793938 97
Adc 4811 <1
CONVERT: 2002mv
任务名\t 运行时间 运行所占百分比
GPIO 35438 1
IDLE 1813868 97
Adc 4863 <1
Led 168 <1
CONVERT: 2115mv
任务名\t 运行时间 运行所占百分比
GPIO 35834 1
Led 169 <1
IDLE 1833797 97
Adc 4917 <1
CONVERT: 2214mv
任务名\t 运行时间 运行所占百分比
GPIO 36230 1
IDLE 1853727 97
Adc 4969 <1
Led 171 <1
CONVERT: 2175mv
任务名\t 运行时间 运行所占百分比
GPIO 36626 1
Led 173 <1
IDLE 1873655 97
Adc 5023 <1
CONVERT: 2059mv
任务名\t 运行时间 运行所占百分比
GPIO 37022 1
IDLE 1893585 97
Adc 5075 <1
Led 175 <1
CONVERT: 1910mv
任务名\t 运行时间 运行所占百分比
GPIO 37418 1
Led 177 <1
IDLE 1913513 97
Adc 5129 <1
CONVERT: 1874mv
任务名\t 运行时间 运行所占百分比
GPIO 37814 1
IDLE 1933443 97
Adc 5181 <1
Led 179 <1
CONVERT: 1890mv
任务名\t 运行时间 运行所占百分比
GPIO 38210 1
Led 180 <1
IDLE 1953372 97
Adc 5235 <1
CONVERT: 1913mv
任务名\t 运行时间 运行所占百分比
GPIO 38606 1
IDLE 1973302 97
Adc 5287 <1
Led 182 <1
CONVERT: 1961mv
任务名\t 运行时间 运行所占百分比
GPIO 39002 1
Led 183 <1
IDLE 1993231 97
Adc 5341 <1
CONVERT: 2019mv
任务名\t 运行时间 运行所占百分比
GPIO 39398 1
IDLE 2013161 97
Adc 5393 <1
Led 185 <1
CONVERT: 2180mv
任务名\t 运行时间 运行所占百分比
GPIO 39794 1
Led 186 <1
IDLE 2033090 97
Adc 5447 <1
CONVERT: 2209mv
任务名\t 运行时间 运行所占百分比
GPIO 40190 1
IDLE 2053020 97
Adc 5499 <1
Led 188 <1
CONVERT: 2092mv
任务名\t 运行时间 运行所占百分比
GPIO 40586 1
Led 190 <1
IDLE 2072948 97
Adc 5553 <1
CONVERT: 1882mv
任务名\t 运行时间 运行所占百分比
GPIO 40982 1
IDLE 2092878 97
Adc 5605 <1
Led 192 <1
CONVERT: 1868mv
任务名\t 运行时间 运行所占百分比
GPIO 41378 1
Led 194 <1
IDLE 2112806 97
Adc 5659 <1
CONVERT: 1895mv
达到预期。
|