加入星計劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴散
  • 作品版權(quán)保護
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入

基于STM32的簡易數(shù)字電壓表仿真設(shè)計

09/09 15:27
2651
服務(wù)支持:
技術(shù)交流群

完成交易后在“購買成功”頁面掃碼入群,即可與技術(shù)大咖們分享疑惑和經(jīng)驗、收獲成長和認(rèn)同、領(lǐng)取優(yōu)惠和紅包等。

虛擬商品不可退

當(dāng)前內(nèi)容為數(shù)字版權(quán)作品,購買后不支持退換且無法轉(zhuǎn)移使用。

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論
放大
實物圖
相關(guān)方案
  • 方案介紹
    • 1.主要功能
    • 2.仿真
    • 3. 程序
    • 4. 設(shè)計報告
  • 相關(guān)文件
  • 推薦器件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請入駐 產(chǎn)業(yè)圖譜

基于STM32的數(shù)字電壓表仿真設(shè)計(仿真+程序+設(shè)計報告+講解)

仿真圖proteus 8.9

程序編譯器:keil 5

編程語言:C語言

設(shè)計編號:C0080

1.主要功能

結(jié)合實際情況,基于STM32F103單片機設(shè)計一個數(shù)字電壓表仿真設(shè)計。該設(shè)計應(yīng)滿足的功能要求為:

1、以STM32單片機為控制核心設(shè)計數(shù)字電壓表;

2、可以測量0~3.3V輸入電壓值;

3、液晶屏LCD1602顯示電壓;

4、最小分辨率為0.1V,測量誤差約為±0.1V。

主要硬件設(shè)備:STM32F103單片機

以下為本設(shè)計資料展示:

2.仿真

整體設(shè)計方案

本實驗利用STM32單片機的ADC等資源,將軟、硬件有機地結(jié)合起來,使得系統(tǒng)能夠正確地進識別輸入電壓大小,LCD1602能夠正確地顯示。

測試如下所示:

仿真運行情況:

通過滑動變阻器改變輸入電壓,滑動變阻器100%,模擬信號輸入理論值為3.3V。3.3V測試如下

img

3. 程序

ADC部分初始化

#include "adc.h"

void ADC1_GPIO_Config(void){
    GPIO_InitTypeDef GPIO_InitStructure;
	  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_ADC1, ENABLE);	//使能ADC1,GPIOC時鐘
 	  
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1; //
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;//配置時鐘
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;	//模擬輸入
    GPIO_Init(GPIOA, &GPIO_InitStructure); //初始化PC4
}


void ADC_Config(void)
{
	

  ADC_InitTypeDef ADC_InitStructure;//ADC結(jié)構(gòu)體變量//注意在一個語句快內(nèi)變量的聲明要放在可執(zhí)行語句的前面,否則出錯,因此要放在ADC1_GPIO_Config();前面
  ADC_InitStructure.ADC_Mode = ADC_Mode_Independent;//ADC1和ADC2工作在獨立模式
  ADC_InitStructure.ADC_ScanConvMode =	DISABLE; //使能掃描
  ADC_InitStructure.ADC_ContinuousConvMode = ENABLE;//ADC轉(zhuǎn)換工作在連續(xù)模式
  ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None;//由軟件控制轉(zhuǎn)換,不使用外部觸發(fā)
  ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;//轉(zhuǎn)換數(shù)據(jù)右對齊
  ADC_InitStructure.ADC_NbrOfChannel = 1;//轉(zhuǎn)換通道為1
  ADC_Init(ADC1, &ADC_InitStructure); //初始化ADC
	
  ADC_RegularChannelConfig(ADC1, ADC_Channel_1, 1, ADC_SampleTime_55Cycles5);
  //ADC1選擇信道14,音序等級1,采樣時間55.5個周期
//  ADC_DMACmd(ADC1, ENABLE);//使能ADC1模塊DMA
  ADC_Cmd(ADC1, ENABLE);//使能ADC1
	ADC_ITConfig(ADC1, ADC_IT_EOC, ENABLE);
  ADC_SoftwareStartConvCmd(ADC1, ENABLE);
//  ADC_ResetCalibration(ADC1); //重置.(復(fù)位).ADC1校準(zhǔn)寄存器
//  while(ADC_GetResetCalibrationStatus(ADC1));//等待ADC1校準(zhǔn)重置完成
//  ADC_StartCalibration(ADC1);//開始ADC1校準(zhǔn)
//  while(ADC_GetCalibrationStatus(ADC1));//等待ADC1校準(zhǔn)完成
//  ADC_SoftwareStartConvCmd(ADC1, ENABLE); //使能ADC1軟件開始轉(zhuǎn)換
}


主函數(shù)

#include "stm32f10x.h"
#include "bsp-lcd1602.h"
#include "delay.h"
#include "sys.h"
#include "adc.h"

int main(void)
{
	int a,b,c,d;
	float temp;
	
	delay_init();	    	 //延時函數(shù)初始化	  	
	LCD1602_Init();				//LCD1602顯示初始化
  ADC1_GPIO_Config();		//ADC引腳初始化
  ADC_Config();  				//ADC使能
	LCD1602_ShowStr(2,0,"adcvalue=0.0V",13);//LCD1602顯示
	
	while(1)
	{
	b=ADC_GetConversionValue(ADC1);//得到ADC值
	temp=(float)b*(3.4/4096);
	//實際電壓 =  (ADC_DR)/分辨率 *(正參考電壓-負(fù)參考電壓) 
	//正參考電壓3.3V才對,但是做仿真需要改3.4V才準(zhǔn)
	a=temp/1;
	c=temp*10;
	d=c%10;
	LCD_ShowNum(11,0,a);//顯示個位
	LCD_ShowNum(13,0,d);//顯示小數(shù)點后一位
	}
}




開題報告

基于STM32的簡易數(shù)字電壓表Proteus仿真設(shè)計

一、課題背景和目標(biāo)

在電子工程中,數(shù)字電壓表是一種常見的測量儀器,用于測量電路中的電壓值。本課程大作業(yè)的目標(biāo)是設(shè)計一個基于STM32單片機的簡易數(shù)字電壓表,并在Proteus仿真環(huán)境中進行驗證。設(shè)計的主要功能包括:

以STM32單片機為控制核心,實現(xiàn)數(shù)字電壓表的邏輯控制和數(shù)據(jù)處理。
測量0~3.3V的輸入電壓值,并實現(xiàn)電壓的精確測量和顯示。
使用液晶屏LCD1602顯示電壓值。
最小分辨率為0.1V,測量誤差約為±0.1V。
通過本課程大作業(yè)的設(shè)計與仿真,旨在加深對STM32單片機應(yīng)用、數(shù)字電壓表原理以及Proteus仿真技術(shù)的理解和掌握。

二、研究方法

我們將采用理論研究與仿真實驗相結(jié)合的方法,具體步驟如下:

理論研究:收集相關(guān)資料,了解STM32單片機、數(shù)字電壓表和液晶屏LCD1602的工作原理和技術(shù)特點。
電路設(shè)計:在Proteus仿真軟件中設(shè)計數(shù)字電壓表的電路圖,包括STM32單片機、電壓輸入電路、A/D轉(zhuǎn)換器、液晶屏LCD1602等部分。
程序設(shè)計:使用C語言編寫STM32單片機的程序,實現(xiàn)電壓的測量、處理和顯示。
仿真測試:在Proteus中運行程序,輸入不同的電壓值,觀察液晶屏LCD1602的顯示結(jié)果,驗證數(shù)字電壓表的功能和性能。

三、預(yù)期結(jié)果

通過上述研究方法,我們期望實現(xiàn)以下預(yù)期結(jié)果:

在Proteus仿真軟件中成功構(gòu)建數(shù)字電壓表的電路圖,各部分電路元件能夠正確連接。
通過STM32單片機的程序?qū)崿F(xiàn)0~3.3V的電壓測量,并能夠?qū)y量結(jié)果顯示在液晶屏LCD1602上。
液晶屏LCD1602能夠正確顯示電壓值,最小分辨率為0.1V。
測量誤差在±0.1V范圍內(nèi),達到設(shè)計要求。

四、實驗安排

本課程大作業(yè)預(yù)計需要一個月的時間完成。前兩周主要用于理論研究和電路設(shè)計,第三周進行編程和調(diào)試,第四周進行仿真測試和結(jié)果分析。

五、實驗材料和方法

實驗材料包括:

STM32單片機。
A/D轉(zhuǎn)換器。
液晶屏LCD1602。
Proteus仿真軟件。
實驗方法包括:

設(shè)計電路。
編寫程序。
仿真測試。

六、實驗步驟和數(shù)據(jù)記錄

實驗步驟如下:

在理論研究階段,收集相關(guān)資料,了解STM32單片機、數(shù)字電壓表和液晶屏LCD1602的工作原理和技術(shù)特點。
在Proteus中設(shè)計數(shù)字電壓表的電路圖,包括STM32單片機、電壓輸入電路、A/D轉(zhuǎn)換器、液晶屏LCD1602等部分。
使用C語言編寫STM32單片機的程序,實現(xiàn)電壓的測量、處理和顯示。
在Proteus中運行程序,輸入不同的電壓值,觀察液晶屏LCD1602的顯示結(jié)果,記錄實驗數(shù)據(jù)。
分析實驗結(jié)果,判斷數(shù)字電壓表的功能和性能是否達到設(shè)計要求。
撰寫報告,總結(jié)實驗過程和結(jié)果。
數(shù)據(jù)記錄包括:

記錄實驗過程中遇到的問題和困難。
記錄液晶屏LCD1602的顯示結(jié)果。
記錄數(shù)字電壓表的最小分辨率和測量誤差。

七、實驗結(jié)論與討論

在實驗結(jié)束后,我們將根據(jù)實驗數(shù)據(jù)和結(jié)果進行分析和討論,得出實驗結(jié)論??赡艿慕Y(jié)論包括:

成功實現(xiàn)0~3.3V的電壓測量和顯示。
液晶屏LCD1602能夠正確顯示電壓值,最小分辨率為0.1V。
測量誤差在±0.1V范圍內(nèi),達到設(shè)計要求。
在實驗過程中遇到的問題和困難,以及如何解決這些問題和困難的經(jīng)驗和教訓(xùn)。
實驗討論將包括對實驗過程中遇到的問題和困難的分析,以及對未來改進的建議和方向。

4. 設(shè)計報告

img

報告部分內(nèi)容

二、主控制器選擇

2.1 stm32f103芯片的概述

STM32單片機有很多個系列,其中包括基本型、USB基本型、增強型以及互聯(lián)型幾大系列,這寫系列的STM32單片機都是具有性能高、功耗低、成本低等特點。其內(nèi)部結(jié)構(gòu)圖如圖 2.2所示:

img

圖 2.2 STM32內(nèi)部結(jié)構(gòu)圖

本課題采用的是STM32F103C8T6單片機芯片,這是是一款A(yù)RM M3內(nèi)核的增強型微控制器,這款內(nèi)核的工作頻率是能夠達到72MHz的,它擁有著128K字節(jié)的閃存和極其豐富的外設(shè),如GPIO口,串口,定時器,中斷,數(shù)模轉(zhuǎn)換,實時時鐘,看門狗,SPI,IIC,CAN總線等部分組成。STM32F103系列單片機的性能在同一個類別的產(chǎn)品中是最高的,它能夠在-40°C -85°C溫度下正常地進行工作,工作的電壓范圍為2V-3.6V,具有低功耗的節(jié)能工作模式,閃存存儲器的容量為64K字節(jié)。

資料清單&下載鏈接

在這里插入圖片描述
0、常見使用問題及解決方法–必讀?。。?!
1、仿真
2、程序
3、功能要求
4、講解視頻
5、設(shè)計報告
6、軟硬件設(shè)計框圖
雙擊打開更多 51 STM32單片機設(shè)計.url

網(wǎng)盤下載鏈接

  • 設(shè)計資料獲取聯(lián)系方式.doc

推薦器件

更多器件
器件型號 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊 ECAD模型 風(fēng)險等級 參考價格 更多信息
AD73311ARSZ 1 Analog Devices Inc Single-Channel, 3 V and 5 V Front-End Processor for General Purpose Applications Including Speech and Telephony

ECAD模型

下載ECAD模型
$10.72 查看
S25FL512SAGBHIA13 1 Spansion Flash, 128MX4, PBGA24, FBGA-24
$59.58 查看
ASEM1-24.000MHZ-LC-T 1 Abracon Corporation MEMS OSC XO 24.0000MHZ CMOS SMD
$2.01 查看

相關(guān)推薦

電子產(chǎn)業(yè)圖譜