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

標(biāo)題: STM32F407萬(wàn)用表集成裝置設(shè)計(jì) 附源程序 [打印本頁(yè)]

作者: ZTH110    時(shí)間: 2020-4-2 12:05
標(biāo)題: STM32F407萬(wàn)用表集成裝置設(shè)計(jì) 附源程序
     準(zhǔn)備材料:正點(diǎn)原子探索者開(kāi)發(fā)板(只要帶4.3寸屏幕的STM32F407ZGT6開(kāi)發(fā)板就行),4.3寸屏幕。本套程序全部使用的正點(diǎn)原子STM32的庫(kù),相信廣大嵌入式愛(ài)好者都選擇正點(diǎn)原子的吧,適合入門參考學(xué)習(xí)。另外鄭重提醒所有的測(cè)試都是使用STM32F407內(nèi)部資源,測(cè)波形時(shí)電壓不能高于5V,如果想擴(kuò)大測(cè)試范圍,外部必須衰減電壓信號(hào)。頻率測(cè)試部分是利用軟件測(cè)試,精度不是很高,>20KHz時(shí)頻率測(cè)試誤差較大。本套設(shè)備適合個(gè)體開(kāi)發(fā)戶,市面上的示波器主要是太貴了買不起,而且多數(shù)情況只是想看看單片機(jī)發(fā)出的波形是否正常,對(duì)于嵌入式開(kāi)發(fā)人員來(lái)說(shuō)確實(shí)很少接觸到高壓。
     如果您有探索者(帶4.3寸屏幕接口的STM32F407ZGT6開(kāi)發(fā)板),下載程序進(jìn)去后可以直接看到如下圖的界面。

制作出來(lái)的實(shí)物圖如下:

萬(wàn)用表:


信號(hào)發(fā)生器:


示波器:


開(kāi)機(jī)界面:




以下是部分代碼(使用正點(diǎn)原子的庫(kù))
#include "sys.h"
#include "delay.h"
#include "usart.h"
#include "led.h"
#include "beep.h"
#include "key.h"
#include "lcd.h"
#include "dac.h"
#include "adc.h"
#include "timer.h"
#include "waveform.h"
#include "oscilloscope.h"
#include "timer.h"
#include "stm32f4xx_it.h"
#include "exti.h"
#include "touch.h"
#include "digital_multimeter.h"
//#include "string.h"

u8 welcom_flag=1;//welcom_flag為1時(shí) 進(jìn)行主屏幕觸摸檢測(cè)
u8 SG_flag=1;//SG_flag為1 函數(shù)發(fā)生器才可以進(jìn)行循環(huán)判斷
u8 OSC_flag=1;//OSC_flag為1 數(shù)字示波器才可以進(jìn)行循環(huán)
u8 DM_flag=1;//DM_flag為1 數(shù)字萬(wàn)用表才可以進(jìn)行循環(huán)


//得到觸摸屏的輸入
u8 wel_get_keynum(void)
{
        u8 key_touch=0;
        tp_dev.scan(0);                  
        if(tp_dev.sta&TP_PRES_DOWN)                        //觸摸屏被按下
        {        
                if(tp_dev.x[0]<280&&tp_dev.x[0]>20&&tp_dev.y[0]<340&&tp_dev.y[0]>140)key_touch=1;         
                if(tp_dev.x[0]<570&&tp_dev.x[0]>310&&tp_dev.y[0]<320&&tp_dev.y[0]>160)key_touch=2;        
                if(tp_dev.x[0]<760&&tp_dev.x[0]>620&&tp_dev.y[0]<390&&tp_dev.y[0]>110)key_touch=3;        
        }
        return key_touch;
}
int main(void)
{
        u8 welcome_key;
        NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設(shè)置系統(tǒng)中斷優(yōu)先級(jí)分組2
        delay_init(168);//初始化延時(shí)函數(shù)
        uart_init(115200);//初始化串口波特率為115200
        LED_Init();//初始化LED
        BEEP_Init();//初始化蜂鳴器端口
        KEY_Init();//按鍵初始化
         LCD_Init();//初始化LCD FSMC接口
  Adc_Init();//初始化ADC
        DM_Adc_Init();//初始化數(shù)字萬(wàn)用表中的ADC
        DacGPIO_Configuration();//DAC初始化
        DM_Init();
        TIM9_CH1_Cap_Init(0XFFFF,84-1); //以1Mhz的頻率計(jì)數(shù)
        //TIM5_PWM_Init(500-1,84-1);        //84M/84=1Mhz的計(jì)數(shù)頻率,重裝載值500,所以PWM頻率為 1M/500=2Khz.   
        EXTIX_Init();//外部中斷初始化
        tp_dev.init();//初始化觸摸屏
        Welcome_Background();
  while(welcom_flag==1)
        {               
                welcome_key=wel_get_keynum();
                if(welcom_flag==1)
                {
                        switch(welcome_key)
                        {
                                case 1 :
                                {
                                        welcom_flag=0;
                                        OSC_flag=1;
                                        LCD_Clear(WHITE);
                                        Osc_Welcome();
                                        break;
                                }
                                case 2 :
                                {
                                        welcom_flag=0;
                                        SG_flag=1;
                                        LCD_Clear(WHITE);
                                        SG_Welcome();
                                        break;
                                }
                                case 3 :
                                {
                                        welcom_flag=0;
                                        DM_flag=1;
                                        LCD_Clear(WHITE);
                                        DM_Run();
                                        break;
                                }
                                default :break;
                        }
                }
                //可以用來(lái)控制開(kāi)關(guān)機(jī)等
//                key=KEY_Scan(0);
//                if(key==KEY2_PRES)//KEY2按下
//                {

//                }  
                delay_ms(100);
                {
                        LED1 = !LED1;
                }
        }
}     以上為主程序部分







IMG20200401225041.jpg (4.69 MB, 下載次數(shù): 107)

STM32F407ZGT6開(kāi)發(fā)板

STM32F407ZGT6開(kāi)發(fā)板

IMG20200401225128.jpg (3.67 MB, 下載次數(shù): 108)

IMG20200401225128.jpg

IMG_20200402_115258.jpg (2.36 MB, 下載次數(shù): 108)

示波器

示波器

作者: ZTH110    時(shí)間: 2020-4-2 12:09
這個(gè)是源程序,測(cè)試部分

基于STM32F407ZGT6的示波器 信號(hào)發(fā)生器 數(shù)字萬(wàn)用表集成裝置設(shè)計(jì).7z

1.44 MB, 下載次數(shù): 94, 下載積分: 黑幣 -5


作者: HWL0541    時(shí)間: 2020-4-3 10:17
先下載了謝謝樓主
作者: YJGG    時(shí)間: 2020-4-3 11:08
感謝分享!!
作者: hsbsinsxx    時(shí)間: 2021-12-29 09:21
請(qǐng)問(wèn)樓主怎么測(cè)電容電阻哇
作者: saywhatcani    時(shí)間: 2024-7-29 20:26
真的厲害,牛的




歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 中文字幕国产一区 | 国产av毛片| 涩涩视频大全 | 欧美在线观看一区 | 国内精品久久精品 | 精品入口麻豆88视频 | 亚洲视频 欧美视频 | 亚洲二区在线 | 午夜网址| 超碰人人人人 | av中文字幕在线 | 九九热免费看 | 精品一区av | 国产精品123区 | 日本成人中文字幕在线观看 | 国产精品日日摸夜夜添夜夜av | 男女网站免费 | 欧美午夜精品久久久久久浪潮 | 亚洲欧美日本国产 | 精品视频国产 | 三级免费av | 人人射人人插 | 夜夜操操操| 综合久久av| 五月激情六月婷婷 | 日韩一二区在线 | 理论片午午伦夜理片影院 | 91丨九色丨国产在线 | 日韩在线 | 日韩av在线一区二区三区 | 久久久久久免费毛片精品 | 成人欧美一区二区 | 成人毛片网站 | 国产农村一级国产农村 | 日韩午夜精品 | 男女羞羞视频免费看 | 国产欧美日韩综合精品一 | 国产精品一区二区不卡 | 狠狠做深爱婷婷综合一区 | 成人欧美一区二区三区黑人孕妇 | 国产一区二区三区四区五区加勒比 |