久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
4.3寸TFTLCD模塊觸摸屏+藍牙串口控制模塊化程序(通過FSMC驅動,FSMC_...
[打印本頁]
作者:
UriXie
時間:
2021-8-17 11:19
標題:
4.3寸TFTLCD模塊觸摸屏+藍牙串口控制模塊化程序(通過FSMC驅動,FSMC_...
stm32f103單片機驅動4.3寸觸摸屏(含松手檢測),加入藍牙控制。
單片機源程序如下:
#include "sys.h"
#include "delay.h"
#include "usart.h"
#include "led.h"
#include "lcd.h"
#include "key.h"
#include "touch.h"
#include <math.h>
#include "LanYa.h"
////////////////////////////////////////////////////////////////////////////////
//5個觸控點的顏色
const u16 POINT_COLOR_TBL[CT_MAX_TOUCH]={RED,GREEN,BLUE,BROWN,GRED};
extern const unsigned char gImage_0[600];
extern const unsigned char gImage_1[600];
extern const unsigned char gImage_2[600];
extern const unsigned char gImage_3[600];
extern const unsigned char gImage_4[600];
extern u8 receive_data[10];
extern u8 ChuLi_data[10];
//顯示按鍵函數
void Lcd_XianShi_AnJian(void)
{
u8 i;
for(i=0;i<50;i++)LCD_Circle(100,300,BLUE,i);//畫圓
LCD_DrawRectangle(210, 250, 410, 350); //畫矩形
LCD_Fill(210, 250, 410, 350,BROWN); //填充指定顏色
LCD_ShowString(260,300,200,24,24,"曲線");
// for(i=0;i<50;i++)LCD_Circle(100,600,BLUE,i);//畫圓
// LCD_DrawRectangle(210, 550, 410, 650); //畫矩形
// LCD_Fill(210, 550, 410,650,BROWN); //填充指定顏色
// LCD_ShowString(260,600,200,24,24,"公司");
LCD_DrawRectangle(0, 740, 80, 800); //畫矩形,(x1,y1),(x2,y2):矩形的對角坐標, “\”對角線
LCD_Fill(0, 740, 80, 800,BROWN); //填充指定顏色
LCD_ShowString(15,760,200,24,24,"按鍵1"); //按鍵1
LCD_DrawRectangle(100, 740, 180, 800); //畫矩形,(x1,y1),(x2,y2):矩形的對角坐標
LCD_Fill(100, 740, 180, 800,RED); //填充指定顏色
LCD_ShowString(115,760,200,24,24,"按鍵2"); //按鍵2
LCD_DrawRectangle(200, 740, 280, 800); //畫矩形,(x1,y1),(x2,y2):矩形的對角坐標
LCD_Fill(200, 740, 280, 800,GREEN); //填充指定顏色
LCD_ShowString(215,760,200,24,24,"按鍵3"); //按鍵3
LCD_DrawRectangle(300, 740, 380, 800); //畫矩形,(x1,y1),(x2,y2):矩形的對角坐標
LCD_Fill(300, 740, 380, 800,BLUE); //填充指定顏色
LCD_ShowString(315,760,200,24,24,"按鍵4"); //按鍵4
LCD_DrawRectangle(400, 740, 480, 800); //畫矩形,(x1,y1),(x2,y2):矩形的對角坐標
LCD_Fill(400, 740, 480, 800,GRED); //填充指定顏色
LCD_ShowString(415,760,200,24,24,"按鍵5"); //按鍵5
LCD_Draw_Picture(0,0,80,60,(u8 *)gImage_0);
LCD_Draw_Picture(80,0,160,60,(u8 *)gImage_1);
LCD_Draw_Picture(160,0,240,60,(u8 *)gImage_2);
LCD_Draw_Picture(240,0,320,60,(u8 *)gImage_3);
LCD_Draw_Picture(320,0,400,60,(u8 *)gImage_4);
}
void LanYa_ShuJu_XianShi(u8 *receive_data,u8 *ChuLi_data)
{
u8 Data[400];
sprintf(Data,"藍牙接收數據:%s",receive_data);
LCD_ShowString(10,100,300,24,24,(u8 *)&Data); //
sprintf(Data,"藍牙接收命令:%s",ChuLi_data);
LCD_ShowString(10,130,300,24,24,(u8 *)&Data); //
}
//此函數顯示波形框
void XinShi_Boxing_Kuang(void)
{
u16 x,y;
LCD_ShowString(15,590,200,24,24,"Y");
LCD_ShowString(10,620,200,24,24,"軸");
LCD_ShowString(50,655,200,24,24,"X");
LCD_ShowString(80,655,200,24,24,"軸");
LCD_DrawRectangle(50, 400, 480, 650); //畫矩形,(x1,y1),(x2,y2):矩形的對角坐標
LCD_Fill(50, 400, 480, 650,BLACK); //填充指定顏色
for(x=50;x<480;x++)
{
for(y=400;y<650;y++)
{
if((x%50==0) && (y%50==0))
{
LCD_Fast_DrawPoint(x,y,WHITE); //快速畫點
}
}
}
}
//顯示波形
void BoXing_XianShi(void)
{
u16 x,y,T=10;
for(x=50;x<480;x++)
{
y=650-T*sin(T*x);
LCD_Fast_DrawPoint(x,y,YELLOW); //快速畫點
delay_ms(20);
}
}
//電容觸摸屏測試函數
void ctp_test1(void)
{
u8 t=0;
u8 i=0;
u8 l0,l1;
// u8 L1_flag=0,L2_flag=0;
u16 lastpos[5][2]; //記錄最后一次的數據
while(1)
{
LanYa_ShuJu_XianShi(receive_data,ChuLi_data);
tp_dev.scan(0);
for(t=0;t<CT_MAX_TOUCH;t++)
{
if((tp_dev.sta)&(1<<t))
{
if(tp_dev.x[t]<lcddev.width&&tp_dev.y[t]<lcddev.height)
{
if(lastpos[t][0]==0XFFFF)
{
lastpos[t][0] = tp_dev.x[t];
lastpos[t][1] = tp_dev.y[t];
}
//=========按鍵操作========
if((tp_dev.x[t]>210)&&(tp_dev.x[t]<410)){
if((tp_dev.y[t]>250)&&(tp_dev.y[t]<350)){//在按鍵LED1的坐標范圍內
while(tp_dev.sta&TP_PRES_DOWN) //松手檢測
{
tp_dev.scan(0);
}
l0=~l0;
if(l0)
for(i=0;i<50;i++)LCD_Circle(100,300,RED,i); //畫圓
else
for(i=0;i<50;i++)LCD_Circle(100,300,GREEN,i); //畫圓
}else if((tp_dev.y[t]>550)&&(tp_dev.y[t]<650)){//在按鍵LED2的坐標范圍內
while(tp_dev.sta&TP_PRES_DOWN) //松手檢測
{
tp_dev.scan(0);
}
l1=~l1;
if(l1)
for(i=0;i<50;i++)LCD_Circle(100,600,RED,i);
else
for(i=0;i<50;i++)LCD_Circle(100,600,GREEN,i);
}
}
if((tp_dev.y[t]>760)&&(tp_dev.y[t]<800)){
if((tp_dev.x[t]>0)&&(tp_dev.x[t]<80)){ //按鍵1檢測
while(tp_dev.sta&TP_PRES_DOWN) //松手檢測
{
tp_dev.scan(0);
}
l0=~l0;
if(l0)
for(i=0;i<50;i++)LCD_Circle(100,300,RED,i); //畫圓
else
for(i=0;i<50;i++)LCD_Circle(100,300,GREEN,i); //畫圓
}else if((tp_dev.x[t]>100)&&(tp_dev.x[t]<180)){ //按鍵2檢測
while(tp_dev.sta&TP_PRES_DOWN) //松手檢測
{
tp_dev.scan(0);
}
l0=~l0;
if(l0)
for(i=0;i<50;i++)LCD_Circle(100,300,RED,i); //畫圓
else
for(i=0;i<50;i++)LCD_Circle(100,300,GREEN,i); //畫圓
}else if((tp_dev.x[t]>200)&&(tp_dev.x[t]<280)){ //按鍵3檢測
while(tp_dev.sta&TP_PRES_DOWN) //松手檢測
{
tp_dev.scan(0);
}
l0=~l0;
if(l0)
for(i=0;i<50;i++)LCD_Circle(100,300,RED,i); //畫圓
else
for(i=0;i<50;i++)LCD_Circle(100,300,GREEN,i); //畫圓
}else if((tp_dev.x[t]>300)&&(tp_dev.x[t]<380)){ //按鍵4檢測
while(tp_dev.sta&TP_PRES_DOWN) //松手檢測
{
tp_dev.scan(0);
}
l0=~l0;
if(l0)
for(i=0;i<50;i++)LCD_Circle(100,300,RED,i); //畫圓
else
for(i=0;i<50;i++)LCD_Circle(100,300,GREEN,i); //畫圓
}else if((tp_dev.x[t]>400)&&(tp_dev.x[t]<480)){ //按鍵5檢測
while(tp_dev.sta&TP_PRES_DOWN) //松手檢測
{
tp_dev.scan(0);
}
l0=~l0;
if(l0)
for(i=0;i<50;i++)LCD_Circle(100,300,RED,i); //畫圓
else
for(i=0;i<50;i++)LCD_Circle(100,300,GREEN,i); //畫圓
}
}
}
}else lastpos[t][0]=0XFFFF;
}
delay_ms(5);i++;
if(i%20==0)LED0=!LED0;
}
}
int main(void)
{
uart_init(115200); //串口初始化為115200
Uart3_Init(9600);
delay_init(); //延時初始化
LED_Init(); //初始化與LED連接的硬件接口
LCD_Init(); //初始化LCD
KEY_Init(); //按鍵初始化
tp_dev.init(); //觸摸屏初始化
POINT_COLOR=RED;//設置字體為紅色
Lcd_XianShi_AnJian();
XinShi_Boxing_Kuang();
// BoXing_XianShi(); //顯示正弦波
if(tp_dev.touchtype&0X80)ctp_test1(); //電容屏測試
}
復制代碼
所有代碼51hei附件下載:
觸摸屏控制+藍牙.7z
(260.79 KB, 下載次數: 42)
2021-8-17 16:40 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
作者:
UriXie
時間:
2021-8-17 11:47
這是一個模塊化程序,很好用。
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
国产又黄又爽视频
|
亚洲福利片
|
国产原创精品
|
在线日韩欧美
|
黄色片www
|
久操久操
|
日本在线看片
|
亚洲少妇一区
|
国产偷自拍
|
超碰在线看
|
精品亚洲国产成人av制服丝袜
|
91成人精品一区在线播放
|
亚洲我射av
|
久久在线免费视频
|
国产三级在线
|
国产免费a
|
四虎4hu永久免费网站影院
|
日本香蕉视频
|
97国产在线观看
|
欧美福利一区
|
艳妇乳肉亭妇荡乳av
|
黄色激情网站
|
亚洲一级二级三级
|
久久久夜色精品亚洲
|
黄色在线免费观看视频
|
黄色av日韩
|
www色
|
久草福利
|
国产精品99久久久久久www
|
久久激情小说
|
久久久久a
|
青青久久久
|
欧美日韩国产在线播放
|
青草导航
|
www视频在线观看网站
|
国产一区欧美
|
午夜激情网站
|
日韩精品二区
|
国产成人精品亚洲男人的天堂
|
日韩av综合网
|
福利在线播放
|