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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

基于stm32的智能窗簾Proteus仿真設計

  [復制鏈接]
跳轉到指定樓層
樓主
ID:511094 發表于 2020-3-27 13:10 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


單片機源程序如下:
  1. #include "stm32f10x.h"
  2. #include "bsp-lcd1602.h"
  3. #include "delay.h"
  4. #include "sys.h"
  5. #include "adc.h"


  6. void L298_GPIO( void )
  7. {
  8.         GPIO_InitTypeDef GPIO_InitStructure;        
  9.        
  10.         RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);
  11.         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5;
  12.         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
  13.         GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz;
  14.         GPIO_Init(GPIOC, &GPIO_InitStructure);       
  15. }

  16. void OPEN(void)        //left moto is runing, but right moto is brake
  17. {
  18.         GPIO_SetBits(GPIOC,GPIO_Pin_5);
  19.         GPIO_ResetBits(GPIOC,GPIO_Pin_4);
  20.         GPIO_ResetBits(GPIOC,GPIO_Pin_3);
  21.         GPIO_ResetBits(GPIOC,GPIO_Pin_2);
  22.         GPIO_SetBits(GPIOC,GPIO_Pin_1);       
  23.         GPIO_SetBits(GPIOC,GPIO_Pin_0);
  24. }
  25. void CLOSE(void)        //right moto is runing, but left moto is brake
  26. {
  27.         GPIO_ResetBits(GPIOC,GPIO_Pin_5);
  28.         GPIO_ResetBits(GPIOC,GPIO_Pin_4);
  29.         GPIO_SetBits(GPIOC,GPIO_Pin_3);
  30.         GPIO_ResetBits(GPIOC,GPIO_Pin_2);
  31.         GPIO_SetBits(GPIOC,GPIO_Pin_1);       
  32.         GPIO_SetBits(GPIOC,GPIO_Pin_0);
  33. }

  34. void STOP(void)        //right moto is runing, but left moto is brake
  35. {
  36.         GPIO_SetBits(GPIOC,GPIO_Pin_5);
  37.         GPIO_SetBits(GPIOC,GPIO_Pin_4);
  38.         GPIO_SetBits(GPIOC,GPIO_Pin_3);
  39.         GPIO_SetBits(GPIOC,GPIO_Pin_2);
  40.         GPIO_SetBits(GPIOC,GPIO_Pin_1);       
  41.         GPIO_SetBits(GPIOC,GPIO_Pin_0);
  42. }


  43. int main(void)
  44. {
  45. int a,b,c,d;
  46.         float temp;
  47.        
  48.         delay_init();                     //延時函數初始化                 
  49.         LCD1602_Init();
  50.     ADC1_GPIO_Config();
  51.         L298_GPIO();
  52.     ADC_Config();  
  53.         LCD1602_ShowStr(0,0,"  Auto curtain ",15);
  54.         LCD1602_ShowStr(0,1,"Light:",6);
  55.        
  56.         while(1)
  57.         {
  58.                 b=ADC_GetConversionValue(ADC1);
  59.                 temp=b*(3.4/4096)*10;
  60.                 //表示光線太弱
  61.                 if( temp < 8 )
  62.                 {
  63.                         LCD1602_ShowStr(7,1,"Low ",4);
  64.                         OPEN();
  65.                 }
  66.                 else
  67.                 {
  68.                         if( temp < 25)                                //光線合適
  69.                         {
  70.                                 LCD1602_ShowStr(7,1,"OK  ",4);
  71.                                 STOP();
  72.                         }
  73.                         else                                                //光線太強
  74.                         {
  75.                                 LCD1602_ShowStr(7,1,"High",4);
  76.                                 CLOSE();
  77.                         }
  78.                 }
  79. //                a=temp/1;
  80. //                c=temp*10;
  81. //                d=c%10;
  82. //                LCD_ShowNum(11,0,a);
  83. //                LCD_ShowNum(13,0,d);
  84.         }
  85. }
復制代碼

所有資料51hei提供下載:
基于stm32的智能窗簾仿真設計.7z (285.11 KB, 下載次數: 637)


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

使用道具 舉報

沙發
ID:724710 發表于 2020-4-27 10:31 | 只看該作者
原理圖顯示有錯誤,控制距離遠近顯示屏有時不變化,相應的電機不轉動
回復

使用道具 舉報

板凳
ID:368810 發表于 2020-5-20 10:36 | 只看該作者
樓主,程序那個文件夾里哪個是主程序啊,用什么軟件打開?
回復

使用道具 舉報

地板
ID:368810 發表于 2020-5-20 15:19 | 只看該作者
YDYQ 發表于 2020-4-27 10:31
原理圖顯示有錯誤,控制距離遠近顯示屏有時不變化,相應的電機不轉動

靈敏度比較低,應該在程序里修改可以提高靈敏度
回復

使用道具 舉報

5#
ID:368810 發表于 2020-5-22 17:03 | 只看該作者
樓主,程序應該是有問題,proteus時間運行了20多秒后屏幕上的字會消失,再過一會調整光敏元件電機沒有反應
回復

使用道具 舉報

6#
ID:368810 發表于 2020-5-22 17:07 | 只看該作者
而且在proteus時間的第6或第7秒時,屏幕的字從auto curtain會變為K  uto curtain,不知道是什么原因,我用的是proteus8.6版本
回復

使用道具 舉報

7#
ID:772082 發表于 2020-6-15 11:59 | 只看該作者
zyy1100 發表于 2020-5-20 10:36
樓主,程序那個文件夾里哪個是主程序啊,用什么軟件打開?

keil v5 mdk可以打開
回復

使用道具 舉報

8#
ID:780927 發表于 2020-6-16 14:59 | 只看該作者
請問有電路原理圖嗎?
回復

使用道具 舉報

9#
ID:606520 發表于 2020-6-17 18:43 | 只看該作者
我能說,到現在我都不知道用什么軟件寫程序,這個模擬軟件是啥?
回復

使用道具 舉報

10#
ID:774546 發表于 2020-6-29 03:45 來自手機 | 只看該作者
temp那里怎么算的啊,是什么意思啊
回復

使用道具 舉報

11#
ID:440028 發表于 2021-12-30 14:55 | 只看該作者
#include "stm32f10x.h"
#include "bsp-lcd1602.h"
#include "delay.h"
#include "sys.h"
#include "adc.h"


void L298_GPIO( void )
{
        GPIO_InitTypeDef GPIO_InitStructure;         
        
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);
        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz;
        GPIO_Init(GPIOC, &GPIO_InitStructure);        
}

void OPEN(void)        //left moto is runing, but right moto is brake
{
        GPIO_SetBits(GPIOC,GPIO_Pin_5);
        GPIO_ResetBits(GPIOC,GPIO_Pin_4);
        GPIO_ResetBits(GPIOC,GPIO_Pin_3);
        GPIO_ResetBits(GPIOC,GPIO_Pin_2);
        GPIO_SetBits(GPIOC,GPIO_Pin_1);        
        GPIO_SetBits(GPIOC,GPIO_Pin_0);
}
void CLOSE(void)        //right moto is runing, but left moto is brake
{
        GPIO_ResetBits(GPIOC,GPIO_Pin_5);
        GPIO_ResetBits(GPIOC,GPIO_Pin_4);
        GPIO_SetBits(GPIOC,GPIO_Pin_3);
        GPIO_ResetBits(GPIOC,GPIO_Pin_2);
        GPIO_SetBits(GPIOC,GPIO_Pin_1);        
        GPIO_SetBits(GPIOC,GPIO_Pin_0);
}

void STOP(void)        //right moto is runing, but left moto is brake
{
        GPIO_SetBits(GPIOC,GPIO_Pin_5);
        GPIO_SetBits(GPIOC,GPIO_Pin_4);
        GPIO_SetBits(GPIOC,GPIO_Pin_3);
        GPIO_SetBits(GPIOC,GPIO_Pin_2);
        GPIO_SetBits(GPIOC,GPIO_Pin_1);        
        GPIO_SetBits(GPIOC,GPIO_Pin_0);
}


int main(void)
{
int a,b,c,d;
        float temp;
        
        delay_init();                     //延時函數初始化                  
        LCD1602_Init();
    ADC1_GPIO_Config();
        L298_GPIO();
    ADC_Config();  
        LCD1602_ShowStr(0,0,"  Auto curtain ",15);
        LCD1602_ShowStr(0,1,"Light:",6);
        
        while(1)
        {
                b=ADC_GetConversionValue(ADC1);
                temp=b*(3.4/4096)*10;
                //表示光線太弱
                if( temp < 8 )
                {
                        LCD1602_ShowStr(7,1,"open ",4);
                        OPEN();
                }
                else
                {
                        if( temp < 25)                                //光線合適
                        {
                                LCD1602_ShowStr(7,1,"OK  ",4);
                                STOP();
                        }
                        else                                                //光線太強
                        {
                                LCD1602_ShowStr(7,1,"close",4);
                                CLOSE();
                        }
                }
//                a=temp/1;
//                c=temp*10;
//                d=c%10;
//                LCD_ShowNum(11,0,a);
//                LCD_ShowNum(13,0,d);
        }
}
回復

使用道具 舉報

12#
ID:440028 發表于 2021-12-30 14:56 | 只看該作者
好像兩個程序都一樣,你倆怎么都差不多,都在51黑里
回復

使用道具 舉報

13#
ID:1039715 發表于 2022-7-16 16:02 | 只看該作者
zyy1100 發表于 2020-5-22 17:03
樓主,程序應該是有問題,proteus時間運行了20多秒后屏幕上的字會消失,再過一會調整光敏元件電機沒有反應

        while(1)
        {
          LCD1602_ShowStr(0,0,"  Auto curtain ",15);
          LCD1602_ShowStr(0,1,"Light:",6);
                b=ADC_GetConversionValue(ADC1);
你可以試一下把這個Auto curtain 和light 放到while(1)里面試一下
回復

使用道具 舉報

14#
ID:1048726 發表于 2022-11-3 18:55 | 只看該作者
所以是有錯誤嗎
回復

使用道具 舉報

15#
ID:1054785 發表于 2022-11-30 10:53 來自手機 | 只看該作者
我想問問如果需要實現該功能電機需要選哪樣的
回復

使用道具 舉報

16#
ID:1054785 發表于 2022-12-6 13:59 來自手機 | 只看該作者
窗簾開關找不到,關鍵詞是啥
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 成人福利电影 | 成人av一区| 黄色永久免费 | 日韩91| 亚洲在线视频 | 精品国产成人 | 自拍偷拍中文字幕 | 91视频在线网站 | 91.色| 国产精品亚洲一区二区三区在线 | 国产成人免费视频网站高清观看视频 | 91精品久久久久久久久久小网站 | 久久国产精品免费一区二区三区 | 精品免费av | 久久久久久国产精品免费 | 日本一区二区不卡视频 | 韩日一区二区三区 | 在线看片福利 | 欧美激情在线观看一区二区三区 | 久久成人精品视频 | 一区二区三区免费 | 成人亚洲视频 | 日韩中文在线观看 | 四虎最新视频 | av片免费 | 国产aaaaav久久久一区二区 | 91精品国产91 | 欧美高清dvd | 在线国产一区二区 | 欧美日韩视频在线播放 | 日韩一级精品视频在线观看 | 黄色福利 | 男女免费视频网站 | 日韩一区和二区 | 天天爽一爽 | 亚洲视频在线观看一区二区三区 | 草久久 | 久久av网| 国产精品视频一区二区三区四区国 | 中文在线一区二区 | 久久这里只有精品首页 |