久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2446|回復: 1
打印 上一主題 下一主題
收起左側

STM32F103C8T6最小系統板移植cUOSII可運行源程序資料

[復制鏈接]
跳轉到指定樓層
樓主
     本人小白一名,從2年前學習STM32開發板,一路不是大坑就是小坑,在網絡資源中不知找了多少例程。但是讓小成本的STM32F103C8T6最小系統板運行真的很少。移植cUOSII和上傳這份資料是為了跟大家一起學習。
     資料中STM32F103C8T6單片機最小系統板

如果系統板的測試LED燈不是PC13端口請自行更換。

單片機源程序如下:
  1. /*實驗                                          

  2. */

  3. #include "stm32f10x.h"
  4. #include "stm32f10x_conf.h"
  5. #include "ucos_ii.h"


  6. #include "lcd.h"
  7. #include "key.h"
  8. #include "lcd_init.h"
  9. #include "pic.h"

  10. #define        TASK_STK_SIZE         256              //定義堆棧長度(128字節)


  11. OS_STK LED0_TASK_STK[TASK_STK_SIZE];
  12. OS_STK LED1_TASK_STK[TASK_STK_SIZE];  /*定義兩個任務的堆棧數組*/

  13. #define ON 0
  14. #define OFF 1

  15. #define LED0(a)        if (a)        \
  16.                                         GPIO_SetBits(GPIOC,GPIO_Pin_13);\
  17.                                         else                \
  18.                                         GPIO_ResetBits(GPIOC,GPIO_Pin_13)
  19.                                        
  20. //#define LED1(a)        if (a)        \
  21. //                                        GPIO_SetBits(GPIOA,GPIO_Pin_6);\
  22. //                                        else                \
  23. //                                GPIO_ResetBits(GPIOA,GPIO_Pin_6)  /*宏定義兩個選擇函數*/


  24. void GPIO_configuration(void)                                                      //配置I/O口
  25. {               
  26.         GPIO_InitTypeDef GPIO_InitStructure;
  27.        
  28.           RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE); /*開啟GPIOA的外設時鐘*/
  29.     GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;  /*選擇要控制的GPIOA引腳*/       
  30.     GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;      /*設置引腳模式為通用推挽輸出*/                 
  31.                                                                                                                   
  32.            GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  33.     GPIO_Init(GPIOC, &GPIO_InitStructure);                /*調用庫函數,初始化GPIOA*/         
  34.        

  35.         /* 關閉led0燈        */
  36.         GPIO_SetBits(GPIOC, GPIO_Pin_13);         
  37. }

  38. void BSP_Init(void)               //硬件配置
  39. {  
  40.     GPIO_configuration();  /* GPIO端口初始化 */
  41. }



  42. void SysTick_init(void)               /*  SysTick_init   配置SysTick定時器  */
  43. {
  44.     SysTick_Config(SystemCoreClock/OS_TICKS_PER_SEC);   //初始化并使能SysTick定時器
  45. }


  46. void Task_LED0(void *p_arg)
  47. {
  48.     (void)p_arg;                                                 // 'p_arg' 并沒有用到,防止編譯器提示警告

  49.     SysTick_init();                            //在第一個任務中開啟系統時鐘
  50.            
  51.                   
  52.     while (1)
  53.     {
  54.         LED0( ON );
  55.         OSTimeDlyHMSM(0, 0,0,100);
  56.         LED0( OFF);
  57.                 OSTimeDlyHMSM(0, 0,0,100);      
  58.     }
  59. }
  60. void Task_LED1(void *p_arg)
  61. {
  62.           u8 i,j;
  63.           float t=0;
  64.     (void)p_arg;                                                 // 'p_arg' 并沒有用到,防止編譯器提示警告

  65.              while (1)
  66.     {
  67.     LCD_ShowChinese(0,0,"中景園電子",RED,WHITE,32,0);
  68.                 LCD_ShowString(0,40,"LCD_W:",RED,WHITE,16,0);
  69.                 LCD_ShowIntNum(48,40,LCD_W,3,RED,WHITE,16);
  70.                 LCD_ShowString(80,40,"LCD_H:",RED,WHITE,16,0);
  71.                 LCD_ShowIntNum(128,40,LCD_H,3,RED,WHITE,16);
  72.                 LCD_ShowString(80,40,"LCD_H:",RED,WHITE,16,0);
  73.                 LCD_ShowString(0,70,"Increaseing Nun:",RED,WHITE,16,0);
  74.                 LCD_ShowFloatNum1(128,70,t,4,RED,WHITE,16);
  75.                 t+=0.11;
  76.                 for(j=0;j<3;j++)
  77.                 {
  78.                         for(i=0;i<6;i++)
  79.                         {
  80.                                 LCD_ShowPicture(40*i,120+j*40,40,40,gImage_1);
  81.                         }
  82.                 }
  83.     }
  84. }



  85. int main(void)
  86. {
  87.         BSP_Init();
  88.        
  89.   LCD_Init();//LCD初始化
  90.         LCD_Fill(0,0,LCD_W,LCD_H,WHITE);
  91.        
  92.         OSInit();
  93.         OSTaskCreate(Task_LED0,(void *)0, &LED0_TASK_STK[TASK_STK_SIZE-1], 4);
  94.     OSTaskCreate(Task_LED1,(void *)0, &LED1_TASK_STK[TASK_STK_SIZE-1], 5);
  95.         OSStart();
  96.     return 0;
  97. }
復制代碼

所有資料51hei提供下載:
STM32_template.7z (281.14 KB, 下載次數: 19)

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏6 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:352986 發表于 2020-11-12 21:11 | 只看該作者
自頂一下
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲精品九九 | 欧美日韩精选 | 亚洲精品久久久一区二区三区 | 精品一区二区三区四区五区 | 中文字幕视频一区二区 | 久久伊人一区 | 亚洲精品一 | 最新日韩在线 | www.日韩 | 久久久久久久久中文字幕 | 久久av一区二区三区 | 一级特黄网站 | 91在线一区 | 国产精品久久久爽爽爽麻豆色哟哟 | 极情综合网 | 一区二区三区免费观看 | 欧美精品一区二区三区在线播放 | 色视频网站 | 国产黑丝在线 | 久久久久国产一区二区三区四区 | 欧美精品中文字幕久久二区 | 狠狠躁躁夜夜躁波多野结依 | 91亚洲国产成人精品一区二三 | 国产主播第一页 | 91中文在线观看 | 国产美女在线看 | 成人不卡在线 | 精品在线一区二区三区 | 久久精品国产一区 | 国产精品一区二区在线 | 亚洲欧洲精品成人久久奇米网 | 午夜色婷婷 | 三级黄色大片网站 | 亚洲精品在线观 | 亚洲草草视频 | 精品国产网 | 久久久区 | 97国产精品视频人人做人人爱 | 久久亚洲天堂 | 日本人爽p大片免费看 | 黑人巨大精品欧美一区二区一视频 |