标题: STM32内部12位ADC智能路灯源程序与Proteus仿真设计 [打印本页]

作者: lufeiboy    时间: 2021-3-19 22:20
标题: STM32内部12位ADC智能路灯源程序与Proteus仿真设计
STM32智能路灯仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)


备注:通过ARM内部的ADC采集光敏电阻电压,判断电压值
电压值低于设定的值,表示光强太弱,开路灯
光强合适,显示OK灯不亮
stm32内部ADC采集电压
光敏电阻,调节光强

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





  6. int main(void)
  7. {
  8.   int ADC_num;
  9.         float temp;
  10.         
  11.         ADC1_GPIO_Config();
  12.   ADC_Config();
  13.         delay_init();                     //延时函数初始化                  
  14.         LCD1602_Init();
  15.         LCD1602_ShowStr(0,0,"Intelligent LED",15);
  16.         LCD1602_ShowStr(0,1,"    LED:",8);
  17.         
  18.         GPIO_InitTypeDef GPIO_InitStructure;         
  19.         
  20.         RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);
  21.         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;
  22.         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
  23.         GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz;
  24.         GPIO_Init(GPIOC, &GPIO_InitStructure);        
  25.         
  26.         while(1)
  27.         {
  28.                 ADC_num=ADC_GetConversionValue(ADC1);
  29.                 temp=ADC_num*(3.4/4096)*10;
  30.                 //表示光线太弱
  31.                 if( temp < 8 )
  32.                 {
  33.                         LCD1602_ShowStr(8,1,"Low ",4);
  34.                         GPIO_ResetBits( GPIOC,GPIO_Pin_0 );
  35.                 }
  36.                 else
  37.                 {
  38.                         //光线合适
  39.                         LCD1602_ShowStr(8,1,"OK  ",4);
  40.                         GPIO_SetBits( GPIOC,GPIO_Pin_0 );
  41.                 }
  42.         }
  43. }
复制代码

所有资料51hei提供下载:
仿真图.rar (150.4 KB, 下载次数: 231)
程序.7z (186.33 KB, 下载次数: 229)



作者: hjh800512    时间: 2021-3-20 12:19
好资料,对于我非常有用,先收藏了。
作者: sule121    时间: 2023-4-15 16:35
我怀疑我下载了一个假的protues,没有SMT32单片机
作者: 1519603107    时间: 2023-4-19 17:05
想问一哈楼主的proteus是哪个版本的
作者: 石寨爆欠    时间: 2023-5-15 15:44
1519603107 发表于 2023-4-19 17:05
想问一哈楼主的proteus是哪个版本的

得8.13及其以上的能打开
作者: hellowC8051    时间: 2023-5-16 13:38
这太方便了,谢谢
作者: 筱豆先生    时间: 2025-3-27 15:12
运行lcd不显示?




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1