欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
STM32手持示波器原理圖+源程序
[打印本頁]
作者:
cwjcwj
時間:
2019-10-23 21:35
標題:
STM32手持示波器原理圖+源程序
222222.png
(1.01 MB, 下載次數: 62)
下載附件
2019-10-23 21:35 上傳
極速截圖201910232132.png
(120.63 KB, 下載次數: 53)
下載附件
2019-10-23 21:35 上傳
單片機源程序如下:
#include "stm32f10x.h"
#include "delay.h"
#include "led.h"
#include "usart1.h"
#include "lcd.h"
#include "adc.h"
#include "string.h"
#include "stdio.h"
u16 DeviceCode;//LCD_ID型號參數變量
unsigned int i=0,n=320,Vmun=0,ADV[310];
char c[5],cc[];
// ADC1轉換的電壓值通過MDA方式傳到SRAM
extern __IO uint16_t ADC_ConvertedValue; //動變量
// 局部變量,用于保存轉換計算后的電壓值
float ADC_ConvertedValueLocal; //隨著動變量而動
static u16 voltage_x1=9,voltage_y1=120,voltage_x2=9,voltage_y2=142;
u16 time=0;
int flag=0;
int allnum=0,move_x=10,move_y=120,clr_flag=0,nn=0;
int ad[300],vtime=1500;
void init_panel(void);//初始化界面
void refresh_screen();//刷新屏幕
int main(void)
{
ADC1_Init();//ADC初始化
USART1_Config(9600); //串口初始化
delay_init(72); //系統滴答定時器初始化最大定時1864ms
lcd_init(); //LCD初始化
DeviceCode=LCD_RD_DATA(R0);//LCD的R0寄存器保存著LCD_ID型號數值
printf(" LCD_ID:%x\r\n",DeviceCode); //向串口打印LCD_ID型號
//提取出千位,百位,十位,各位
c[0]=DeviceCode/4096;c[1]=DeviceCode/256%16;c[2]=DeviceCode/16%16;c[3]=DeviceCode%16;
c[0]+=0x30; c[1]+=0x30; c[2]+=0x30; c[3]+=0x30;//16進制轉成字符型
init_panel();//初始化界面
delay_ms(50);
while (1)
{
for(allnum=0;allnum<303;allnum++)
{
/*** 清除原來的電壓點痕跡 ****/
if(clr_flag==1)
{
LCD_DrawPoint_3(allnum + move_x ,move_y-ad[allnum],Def_BACK_COLOR);
if((allnum<=300)&&(ad[allnum+1]>ad[allnum]))
{
for(nn=ad[allnum+1]-ad[allnum];nn>0;nn--)
{
LCD_DrawPoint_3(allnum+1+ move_x ,move_y-(ad[allnum+1]-nn),Def_BACK_COLOR); //delay_ms(1);
}
}
if((allnum<=300)&&(ad[allnum+1]<ad[allnum]))
{
for(nn=ad[allnum]-ad[allnum+1];nn>0;nn--)
{
LCD_DrawPoint_3(allnum +1+ move_x ,move_y-(ad[allnum+1]+nn),Def_BACK_COLOR); //delay_ms(1);
}
}
}
/*** 取電壓AD值 ****/
ad[allnum]=ADC_ConvertedValue/90;
/*** 畫電壓點 ****/
LCD_DrawPoint_3(allnum + move_x ,move_y-ad[allnum] ,YELLOW);
if((allnum>=1)&&(ad[allnum]>ad[allnum-1]))
{
for(nn=ad[allnum]-ad[allnum-1];nn>0;nn--)
{
LCD_DrawPoint_3(allnum + move_x ,move_y-(ad[allnum]-nn),YELLOW);
}
}
if((allnum>=1)&&(ad[allnum]<ad[allnum-1]))
{
for(nn=ad[allnum-1]-ad[allnum];nn>0;nn--)
{
LCD_DrawPoint_3(allnum + move_x ,move_y-(ad[allnum]+nn),YELLOW);
}
}
if(allnum==300){clr_flag=1;}
}
/*** 刷新屏幕 ****/
refresh_screen();
}
}
void init_panel(void)//初始化界面
{
int linenum=0;
LCD_Clear(DARKBLUE);//清屏談藍色,示波器常見背景色
LCD_Fill(8,18,320-8,240-22,Def_BACK_COLOR);//中間一大塊黑色背景
/* 上行顯示的東東 */
LCD_ShowString(4,1,"RIGOL",16,Def_POINT_COLOR,DARKBLUE);//左上角顯示普源品牌示波器logo
LCD_ShowString(52,1," AUTO ",16,GREEN,BLACK);
LCD_ShowString(120,1,"~~~~~~~~~~",16,LGRAYBLUE,BLACK);
LCD_ShowString(226,1," $ V ",16,YELLOW,BLACK);
LCD_ShowString(246,1,"1",16,BLACK,YELLOW);
LCD_ShowString(254,1," 2.00",16,YELLOW,BLACK);
/************************ 中間顯示的東東****************************************/
/* 橫條*/
for(linenum=5;linenum<300;linenum+=8)
{LCD_DrawPoint_3(10+linenum,20,GRAY);}
for(linenum=5;linenum<300;linenum+=8)
{LCD_DrawPoint_3(10+linenum,70,GRAY);}
for(linenum=5;linenum<300;linenum+=8) //中間橫條
{LCD_DrawPoint_3(10+linenum,120,GRAY);}
for(linenum=5;linenum<300;linenum+=8)
{LCD_DrawPoint_3(10+linenum,170,GRAY);}
for(linenum=5;linenum<300;linenum+=8)
{LCD_DrawPoint_3(10+linenum,218,GRAY);}
/*豎條 */
for(linenum=5;linenum<200;linenum+=8)
{LCD_DrawPoint_3(10,16+linenum,GRAY);}
for(linenum=5;linenum<200;linenum+=8)
{LCD_DrawPoint_3(60,16+linenum,GRAY);}
for(linenum=5;linenum<200;linenum+=8)
{LCD_DrawPoint_3(110,16+linenum,GRAY);}
for(linenum=5;linenum<200;linenum+=8)
{LCD_DrawPoint_3(160,16+linenum,GRAY);}
for(linenum=5;linenum<200;linenum+=8)
{LCD_DrawPoint_3(210,16+linenum,GRAY);}
for(linenum=5;linenum<200;linenum+=8)
{LCD_DrawPoint_3(260,16+linenum,GRAY);}
for(linenum=5;linenum<200;linenum+=8)
{LCD_DrawPoint_3(310,16+linenum,GRAY);}
LCD_ShowString(157,20,"T",12,BLACK,BROWN);
LCD_ShowString(216,20,"t",16,BLACK,BROWN);
LCD_ShowString(224,20," <5HZ ",16,WHITE,DARKBLUE);
/************************ 中間顯示的東東****************************************/
/* 下行顯示的東東 */
LCD_ShowString(4,240-18," CH1- ",16,BLACK,YELLOW);
LCD_ShowString(52,240-18," 1.00V ",16,YELLOW,BLACK);//1.00V 這個值要傳數據,所以要用指針傳參數進去才行
LCD_ShowString(144,240-18," Time ",16,WHITE,BLACK);
LCD_ShowString(184,240-18," 500.0",16,WHITE,BLACK);
LCD_ShowString(232,240-18,"us ",16,WHITE,BLACK);
LCD_ShowString(254,240-18,"T",16,BLACK,BROWN);
LCD_ShowString(262,240-18,"->",16,BROWN,BLACK);
LCD_ShowString(276,240-18,"0.00",16,BROWN,BLACK);
LCD_ShowString(308,240-18,"s",16,BROWN,BLACK);
}
void refresh_screen()//刷新屏幕
{
int linenum=0;
// LCD_Fill(8,18,320-8,240-22,Def_BACK_COLOR);//中間一大塊黑色背景
/************************ 中間顯示的東東****************************************/
/* 橫條*/
for(linenum=5;linenum<300;linenum+=8)
{LCD_DrawPoint_3(10+linenum,20,GRAY);}
for(linenum=5;linenum<300;linenum+=8)
{LCD_DrawPoint_3(10+linenum,70,GRAY);}
for(linenum=5;linenum<300;linenum+=8)
{LCD_DrawPoint_3(10+linenum,120,GRAY);}
for(linenum=5;linenum<300;linenum+=8)
{LCD_DrawPoint_3(10+linenum,170,GRAY);}
for(linenum=5;linenum<300;linenum+=8)
{LCD_DrawPoint_3(10+linenum,218,GRAY);}
/*豎條 */
for(linenum=5;linenum<200;linenum+=8)
{LCD_DrawPoint_3(10,16+linenum,GRAY);}
for(linenum=5;linenum<200;linenum+=8)
{LCD_DrawPoint_3(60,16+linenum,GRAY);}
for(linenum=5;linenum<200;linenum+=8)
{LCD_DrawPoint_3(110,16+linenum,GRAY);}
for(linenum=5;linenum<200;linenum+=8)
{LCD_DrawPoint_3(160,16+linenum,GRAY);}
for(linenum=5;linenum<200;linenum+=8)
{LCD_DrawPoint_3(210,16+linenum,GRAY);}
for(linenum=5;linenum<200;linenum+=8)
{LCD_DrawPoint_3(260,16+linenum,GRAY);}
for(linenum=5;linenum<200;linenum+=8)
{LCD_DrawPoint_3(310,16+linenum,GRAY);}
LCD_ShowString(157,20,"T",12,BLACK,BROWN);
LCD_ShowString(216,20,"t",16,BLACK,BROWN);
LCD_ShowString(224,20," <5HZ ",16,WHITE,DARKBLUE);
/************************ 中間顯示的東東****************************************/
}
復制代碼
所有資料51hei提供下載:
L001基于F1標準庫3.5版本核心源代碼.zip
(20.83 KB, 下載次數: 95)
2019-10-23 21:33 上傳
點擊文件名下載附件
示波器
下載積分: 黑幣 -5
L001型示波器使用說明.doc
(6.76 MB, 下載次數: 62)
2019-10-23 21:34 上傳
點擊文件名下載附件
說明
下載積分: 黑幣 -5
L001原理圖.pdf
(1.04 MB, 下載次數: 79)
2019-10-23 21:34 上傳
點擊文件名下載附件
原理圖
下載積分: 黑幣 -5
作者:
tian_000
時間:
2019-10-25 13:04
厲害,感謝共享資料。
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1