設計指標:
主控: STM32F103ZET6
液晶屏: 4.3寸TFT480×272 65K彩色LCD顯示屏 FSMC
AD: 12位1MHz采樣速率
最高實時取樣率: 1Msps 8Bits
取樣緩沖器深度: 5K
垂直靈敏度: 5V,1V,500mV,200mV,100mV,50mV,20mV,10mV;
水平時基范圍:2S,1S,500mS,200mS,100mS,50mS,20mS,10mS,5mS,2mS,1mS,500uS,200uS,100uS,50uS,20uS,10uS,5uS,2uS,1uS
輸入阻抗: ≥1MΩ
最高輸入電壓: 30Vpp
耦合方式: AC/DC
觸發功能: 實現自動、常規、單次觸發方式 ,上升或下降邊沿觸發
參數計算: 頻率、周期、占空比、交流峰-峰值、平均值
觸發電平: 觸發電平高低位置可調,觸發時基位置可調
實現RUN/STOP功能
功能預留:
1、波形發生器:使用STM32一路DA實現正弦,三角波,方波輸出。 任意一種波形幅值在
0-3.3V任意可調、頻率在一定范圍任意可調、方波占空比可調。調節選項
可以通過觸摸屏完成設置。
2、SD卡存儲: SD卡波形存儲輸出,能夠對當前屏幕截屏,以JPG格式存儲在SD卡上。能夠存儲1S內的波形數據,可以隨時調用查看。
3、數據傳輸: 用C#編寫上位機,通過串口完成對下位機的控制。初步功能為:(1)實現STOP/RUN功能(2)輸出波形電壓、時間參數(3)控制截屏(4)控制波形發生器(5)其他
4、圖形接口: 完成UCGUI的移植和使用工作。
5、遠期計劃: 添加FFT等等
1、采樣速率:600Sa/s,6kSa/s ,60kSa/s,600kSa/s ,3MSa/s,,6MSa/s,30MSa/s ,60MSa/s
2、水平掃速:250 ns*、500ns、1μs、5 μs、10μs、50μs、500 μs、5ms 、50ms
3、垂直電壓靈敏度:10mV/div, 20mV/div, 50mV/div, 0.1V/div, 0,2V/div, 0.5V/div, 1V/div,
2V/div, 5V/div
4、被測信號的各種參數屏幕顯示,包括頻率、電壓峰峰值等。
Altium Designer畫的原理圖和PCB圖如下:(51hei附件中可下載工程文件)
51hei.png (19.65 KB, 下載次數: 58)
下載附件
2020-11-12 21:09 上傳
51hei.png (38.33 KB, 下載次數: 62)
下載附件
2020-11-12 21:09 上傳
電路原理圖如下:
51hei.png (63.88 KB, 下載次數: 54)
下載附件
2020-11-12 23:01 上傳
主程序:
#include "stm32f10x.h"
#include "ucos_ii.h"
#include "app.h"
#include "GUI.h"
#include "usart1.h"
#include "pincfg.h"
#include "delay.h"
#include "tft_api.h"
#include "dac.h"
#include "adc.h"
#include "iwdg.h"
#include "timer.h"
#include "EXTI.H"
#include "oscilloscope.h"
#include "indkey.h"
#include "tsc2046.h"
#include "task_rtc.h"
#include "task_gui.h"
#include "task_sd.h"
/*-----------------------------------------
聲明起始任務棧
------------------------------------------*/
OS_STK Task_Start_Stk[TASK_START_STK_SIZE];
/*-----------------------------------------
因為涉及到對共享資源的訪問,創建互斥信號量
------------------------------------------*/
OS_EVENT *LCD_Buffer_MUTEX;
OS_EVENT *USART_Buffer_MUTEX;
OS_EVENT *SDtoRAM_Buffer_MUTEX;
/*-----------------------------------------
主 函 數
------------------------------------------*/
int main(void)
{
INT8U err;
SystemInit(); //初始化RCC時鐘
OSInit();
LCD_Buffer_MUTEX = OSMutexCreate(4,&err); //創建3個共享資源互斥信號量
USART_Buffer_MUTEX = OSMutexCreate(4,&err);
SDtoRAM_Buffer_MUTEX = OSMutexCreate(4,&err);
OSTaskCreate(Task_Start,(void *)0,&Task_Start_Stk[TASK_START_STK_SIZE-1],TASK_START_PRIO); //起始任務
OSStart();
}
/*-------------------------------------------------------------------------------
函數功能:初始化各種外設
說 明:因為跑操作系統,所以外設的初始化應該放在操作系統的初始任務中完成,不能
在while(1)循環外部完成外設的初始化工作,否則操作系統可能無法啟動.
本函數在app.c中被調用
-------------------------------------------------------------------------------*/
void BSP_Init(void)
{
OS_CPU_SR cpu_sr = 0u;
OS_ENTER_CRITICAL();
DelayInit(); //初始化延時
PinCfg(); //外部器件控制配置
FSMC_LCD_Init(); //FSMC總線配置
GUI_Init(); //初始化UCGUI界面
TSC2046_Config(); //初始化觸摸控制器
USART1_Config(); //初始化串口
DAC_Config(); //初始化DAC1
ADC1_Init(); //初始化ADC1
EXTI_Config(); //初始化外部中斷
Key_EXTI_Config(); //初始化按鍵中斷
TIM5_Config(1999,71); //TIM5以1MHz頻率計數,每2ms溢出中斷
// TIM4_Config(59999,71); //TIM4以1MHz頻率計數,每60ms溢出中斷
RTC_Init(); //初始化RTC
// SD_Init();
JDQ_ACDC = 1; //交流耦合
ManualGainScan(3); //調試用
IWDG_Init(4,625); //喂狗時間為1000ms
OS_EXIT_CRITICAL();
}
設計文檔:
設計指標: 主控: STM32F103ZET6 液晶屏: 4.3寸TFT480×272 65K彩色LCD顯示屏 FSMC AD: 12位1MHz采樣速率 最高實時取樣率: 1Msps 8Bits 取樣緩沖器深度: 5K 垂直靈敏度: 5V,1V,500mV,200mV,100mV,50mV,20mV,10mV; 水平時基范圍:2S,1S,500mS,200mS,100mS,50mS,20mS,10mS,5mS,2mS,1mS,500uS,200uS,100uS,50uS,20uS,10uS,5uS,2uS,1uS 輸入阻抗: ≥1MΩ 最高輸入電壓: 30Vpp 耦合方式: AC/DC 觸發功能: 實現自動、常規、單次觸發方式 ,上升或下降邊沿觸發 參數計算: 頻率、周期、占空比、交流峰-峰值、平均值 觸發電平: 觸發電平高低位置可調,觸發時基位置可調 實現RUN/STOP功能
功能預留: 1、波形發生器:使用STM32一路DA實現正弦,三角波,方波輸出。任意一種波形幅值在 0-3.3V任意可調、頻率在一定范圍任意可調、方波占空比可調。調節選項 可以通過觸摸屏完成設置。 2、SD卡存儲:SD卡波形存儲輸出,能夠對當前屏幕截屏,以JPG格式存儲在SD卡上。能夠存儲1S內的波形數據,可以隨時調用查看。 3、數據傳輸: 用C#編寫上位機,通過串口完成對下位機的控制。初步功能為:(1)實現STOP/RUN功能(2)輸出波形電壓、時間參數(3)控制截屏(4)控制波形發生器(5)其他 4、圖形接口: 完成UCGUI的移植和使用工作。 5、遠期計劃: 添加FFT等等 1、采樣速率:600Sa/s,6kSa/s ,60kSa/s,600kSa/s ,3MSa/s,,6MSa/s,30MSa/s ,60MSa/s 2、水平掃速:250 ns*、500ns、1μs、5 μs、10μs、50μs、500 μs、5ms 、50ms 3、垂直電壓靈敏度:10mV/div, 20mV/div, 50mV/div,0.1V/div, 0,2V/div, 0.5V/div, 1V/div, 2V/div,5V/div 4、被測信號的各種參數屏幕顯示,包括頻率、電壓峰峰值等。
硬件電路
51hei.png (7.87 KB, 下載次數: 55)
下載附件
2020-11-12 21:09 上傳
全部資料51hei下載地址(資料為網上轉載,PCB還未布線,還有一些不完善,望大家一起來完善):
硬件設計.zip
(2.65 MB, 下載次數: 82)
2020-11-12 20:42 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
設計文檔.zip
(60.19 KB, 下載次數: 67)
2020-11-12 20:42 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
源代碼.7z
(1.29 MB, 下載次數: 88)
2020-11-12 21:13 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|