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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3091|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

基于stm32的藍(lán)牙遙控車源碼 后驅(qū)+舵機(jī)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:296970 發(fā)表于 2018-5-23 21:16 | 只看該作者 回帖獎勵 |倒序?yàn)g覽 |閱讀模式
后驅(qū)+舵機(jī)
單片機(jī)源程序如下:
  1. #include "led.h"
  2. #include "delay.h"
  3. #include "key.h"
  4. #include "sys.h"
  5. #include "usart.h"
  6. #include "timer.h"

  7. u8 count;
  8. u8 jd;
  9. u8 flag,com;
  10. u16 t=1000;
  11. //const u8 TEXT_Buffer[]="OK";

  12. #define IN5 PCout(1)
  13. #define IN6 PCout(2)

  14. void run(void);
  15. void backrun(void);
  16. void stoprun(void);
  17. void leftrun(void);
  18. void rightrun(void);

  19. int main(void)
  20. {
  21.         u16 len;
  22.         u16 t;
  23.         u16 times=0;
  24.         GPIO_InitTypeDef  GPIO_InitStructure;
  25.        
  26.     RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);         //使能PB,PE端口時鐘
  27.        
  28.     GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;                                 //LED0-->PB.5 端口配置
  29.     GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;                  //推挽輸出
  30.         GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;                 //IO口速度為50MHz
  31.         GPIO_Init(GPIOC, &GPIO_InitStructure);                                         //根據(jù)設(shè)定參數(shù)初始化GPIOB.5
  32.         GPIO_SetBits(GPIOC,GPIO_Pin_1);                                                 //PB.5 輸出高

  33.         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;                             //LED1-->PE.5 端口配置, 推挽輸出
  34.         GPIO_Init(GPIOC, &GPIO_InitStructure);                                           //推挽輸出 ,IO口速度為50MHz
  35.         GPIO_SetBits(GPIOC,GPIO_Pin_2);
  36.        
  37.        
  38.     GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;                                 //LED0-->PB.5 端口配置               
  39.         GPIO_Init(GPIOC, &GPIO_InitStructure);                                         //根據(jù)設(shè)定參數(shù)初始化GPIOB.5
  40.         GPIO_SetBits(GPIOC,GPIO_Pin_0);       
  41.        
  42.         jd = 3;
  43.         count = 0;
  44.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
  45.         uart_init(9600);
  46.         LED_Init();       
  47.         delay_init();       
  48.         TIM3_Int_Init(4,7199);

  49.         while(1)
  50.         {
  51.                 times++;
  52.                 if(times%50==0)LED1=!LED1;
  53.                 delay_ms(10);
  54.                 if(USART_RX_STA&0x8000)
  55.                 {                                         
  56.                         LED3 = !LED3;                       
  57.                         com = USART_RX_BUF[0];
  58.                         len=USART_RX_STA&0x3fff;
  59.                         flag = 1;
  60.                         USART_RX_STA=0;
  61.                 }
  62.                 if(flag == 1)
  63.                 {
  64.                         switch(com)
  65.                         {
  66.                                 case '1':
  67.                                 {
  68.                                         run();
  69.                                         LED4 = !LED4;
  70.                                         for(t=0;t<len;t++)
  71.                                         {
  72.                                                 USART_SendData(USART1, USART_RX_BUF[t]);//向串口1發(fā)送數(shù)據(jù)
  73.                                                 while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);//等待發(fā)送結(jié)束
  74.                                         }
  75.                                     break;
  76.                                 }
  77.                                 case '2':
  78.                                 {
  79.                                         backrun();
  80.                                         for(t=0;t<len;t++)
  81.                                         {
  82.                                                 USART_SendData(USART1, USART_RX_BUF[t]);//向串口1發(fā)送數(shù)據(jù)
  83.                                                 while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);//等待發(fā)送結(jié)束
  84.                                         }
  85.                                         break;
  86.                                 }
  87.                                 case '3':
  88.                                 {       
  89.                                         stoprun();
  90.                                         for(t=0;t<len;t++)
  91.                                         {
  92.                                                 USART_SendData(USART1, USART_RX_BUF[t]);//向串口1發(fā)送數(shù)據(jù)
  93.                                                 while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);//等待發(fā)送結(jié)束
  94.                                         }
  95.                                         break;
  96.                                 }
  97.                                 case '4':
  98.                                 {       
  99.                                         leftrun();
  100.                                         for(t=0;t<len;t++)
  101.                                         {
  102.                                                 USART_SendData(USART1, USART_RX_BUF[t]);//向串口1發(fā)送數(shù)據(jù)
  103.                                                 while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);//等待發(fā)送結(jié)束
  104.                                         }
  105.                                         break;
  106.                                 }
  107.                                 case '5':
  108.                                 {       
  109.                                         rightrun();
  110.                                         for(t=0;t<len;t++)
  111.                                         {
  112.                                                 USART_SendData(USART1, USART_RX_BUF[t]);//向串口1發(fā)送數(shù)據(jù)
  113.                                                 while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);//等待發(fā)送結(jié)束
  114.                                         }
  115.                                         break;
  116.                                 }
  117.                                 default:break;
  118.                         }
  119.                         flag = 0;
  120.                 }
  121.         }
  122. }

  123. void run(void)
  124. {
  125.         IN5 = 1;
  126.         IN6 = 0;
  127. }
  128. void backrun(void)
  129. {
  130.         IN5 = 0;
  131.         IN6 = 1;
  132. }

  133. void stoprun(void)
  134. {
  135.         IN5 = 0;
  136.         IN6 = 0;
  137. }

  138. void leftrun(void)
  139. {
  140.         jd++;
  141.         count = 0;
  142.     if (jd == 6)
  143.         {
  144.                 jd = 5;
  145.         }   
  146. }

  147. void rightrun(void)
  148. {
  149.         jd--;
  150.         count = 0;
  151.         if (jd == 0)
  152.         {
  153.             jd = 1;
  154.         }
  155. }

復(fù)制代碼

所有資料51hei提供下載:
car.rar (280.33 KB, 下載次數(shù): 25)


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

使用道具 舉報(bào)

沙發(fā)
ID:1 發(fā)表于 2018-5-24 03:55 | 只看該作者
原理圖能分享嗎?
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产成人精品一区二区三区在线观看 | 国产精品久久久久久久久久久久午夜片 | 国产一区二区三区视频 | 国产婷婷 | 人人干人人玩 | 东京av男人的天堂 | 波多野结衣一区二区三区 | 午夜精品久久久久久久久久久久 | 欧美日韩电影一区二区 | 国产精品一区二区久久 | 亚洲精品国产偷自在线观看 | 欧美一区二不卡视频 | 亚洲黄色一级毛片 | 狠狠躁18三区二区一区 | 午夜国产一区 | 成人在线不卡 | 日韩a视频 | 中文字幕一区二区三区在线观看 | 久久久久久国产精品免费免费狐狸 | 亚洲精品久久久久中文字幕欢迎你 | 99精品视频免费在线观看 | 国产精品v| 久久久久国色av免费观看性色 | 91正在播放 | 国产69精品久久久久777 | 欧美精品二区三区 | 欧美啪啪 | 美国一级片在线观看 | 亚洲欧美精品 | 欧美福利| 色五月激情五月 | 免费黄色大片 | 国产精品久久亚洲7777 | 日韩精品在线观看一区二区三区 | 国产一区二区三区四区在线观看 | 国产高清视频一区二区 | 天天综合天天 | 中文字幕在线免费观看 | 天天成人综合网 | 黄色毛片网站在线观看 | 国内成人免费视频 |