|
采用野火stm32f103zet6霸道開(kāi)發(fā)板
可以測(cè)頻測(cè)幅 在板載LCD屏上顯示
燒錄即可使用
單片機(jī)源程序如下:
- // TIM—高級(jí)定時(shí)器-PWM輸入捕獲應(yīng)用,通用定時(shí)器產(chǎn)生PWM波,高級(jí)定時(shí)器則捕獲這個(gè)PWM,并測(cè)量周期和占空比
- #include "stm32f10x.h"
- #include "./lcd/bsp_ili9341_lcd.h"
- #include "bsp_led.h"
- #include "bsp_AdvanceTim.h"
- #include "bsp_GeneralTim.h"
- #include "bsp_usart.h"
- #include "bsp_adc.h"
- #include <stdio.h>
- extern float Frequency;
- extern float DutyCycle ;
- static void LCD_Test(void);
- static void Delay ( __IO uint32_t nCount );
- extern __IO uint16_t ADC_ConvertedValue;
- float adc,high=0,low=100;
- float ADC_ConvertedValueLocal;
- void Printf_Charater(void);
- /**
- * @brief 主函數(shù)
- * @param 無(wú)
- * @retval 無(wú)
- */
- int main(void)
- {
- ILI9341_Init (); //LCD 初始化
- LED_GPIO_Config();
- /* 串口初始化 */
- USART_Config();
- ADCx_Init();
- /* 通用定時(shí)器初始化,用于生成PWM信號(hào) */
- GENERAL_TIM_Init();
-
- /* 高級(jí)定時(shí)器初始化 ,用戶捕獲PWM信號(hào)*/
- ADVANCE_TIM_Init();
- ILI9341_GramScan ( 6 );
- while(1)
- {
- Delay(0xfffff);
- LCD_Test();
- }
- }
- /*********************************************END OF FILE**********************/
- /*用于測(cè)試各種液晶的函數(shù)*/
- void LCD_Test(void)
- {
- /*演示顯示變量*/
- char dispBuff[100];
-
- ADC_ConvertedValueLocal =(float) ADC_ConvertedValue/4096*3.3;
-
- if(high<ADC_ConvertedValueLocal)
- high=ADC_ConvertedValueLocal;
- if(low>ADC_ConvertedValueLocal)
- low=ADC_ConvertedValueLocal;
- adc=(high-low)/2;
- LCD_SetFont(&Font8x16);
- LCD_SetColors(RED,BLACK);
- ILI9341_Clear(0,0,LCD_X_LENGTH,LCD_Y_LENGTH); /* 清屏,顯示全黑 */
- /********顯示變量示例*******/
- LCD_SetFont(&Font16x24);
- LCD_SetTextColor(GREEN);
- /*使用c標(biāo)準(zhǔn)庫(kù)把變量轉(zhuǎn)化成字符串*/
- sprintf(dispBuff,"ADC: %.2f V ",adc);
- LCD_ClearLine(LINE(3)); /* 清除單行文字 */
-
- /*然后顯示該字符串即可,其它變量也是這樣處理*/
- ILI9341_DispStringLine_EN(LINE(3),dispBuff);
-
- LCD_SetFont(&Font16x24);
- LCD_SetTextColor(GREEN);
- /*使用c標(biāo)準(zhǔn)庫(kù)把變量轉(zhuǎn)化成字符串*/
- sprintf(dispBuff,"Fre: %.2f hz ",Frequency);
- LCD_ClearLine(LINE(4)); /* 清除單行文字 */
-
- /*然后顯示該字符串即可,其它變量也是這樣處理*/
- ILI9341_DispStringLine_EN(LINE(4),dispBuff);
-
- ILI9341_Clear(0,16*8,LCD_X_LENGTH,LCD_Y_LENGTH-16*8); /* 清屏,顯示全黑 */
- }
- /**
- * @brief 簡(jiǎn)單延時(shí)函數(shù)
- * @param nCount :延時(shí)計(jì)數(shù)值
- * @retval 無(wú)
- */
- static void Delay ( __IO uint32_t nCount )
- {
- for ( ; nCount != 0; nCount -- );
-
- }
復(fù)制代碼
所有資料51hei提供下載:
測(cè)頻測(cè)幅.7z
(221 KB, 下載次數(shù): 27)
2019-8-13 16:28 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|
|