网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
02月23日漏签0天
江西理工大学应用...吧 关注:51,032贴子:3,682,976
  • 看贴

  • 图片

  • 吧主推荐

  • 视频

  • 游戏

  • 首页 上一页 1 2 3 4 5 6 下一页 尾页
  • 119回复贴,共6页
  • ,跳到 页  
<<返回江西理工大...吧
>0< 加载中...

回复:【技术贴】电创-第二期-单片机玩转文件系统 机电、信息同学进来

  • 只看楼主
  • 收藏

  • 回复
  • goZDC
  • 经纬栋梁
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼



  • goZDC
  • 经纬栋梁
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
触摸和显示屏两部分是分开的,可能我们在生活当中见到都是弄在一起的,所以给我们的感觉是两部分在一起。这种感觉是因为设计者已经把显示和触摸部分相对应起来了。如果有玩过电阻屏的手机的同学就更有感觉了,手机当中一般都会有个触屏校验这个功能,然后会把触屏校验的值保存到FLASH中,这样只需校验一次,以后就不需要校验了。


2026-02-23 16:12:27
广告
不感兴趣
开通SVIP免广告
  • 奋天
  • 万人敬仰
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
来来来,十五字够不够
~~别看了,带尾巴可以防止无语的时候不够十五字。


  • goZDC
  • 经纬栋梁
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
把触屏说简单点的话就是两路ADC(模拟转数字),别想成游戏了。不同的AD值代表不同的x或Y的值,就可以获取触摸点的坐标(X,Y)了。


  • goZDC
  • 经纬栋梁
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
触屏使用的通信方式是SPI通信,SPI是一种串行外设接口,高速的,全双工,同步的通信总线。有片选CS,主入从出,主出从入,时钟信号,触屏还加了个中断信号线IRQ。
sbit DCLK = P2^0;
sbit CS = P2^1;
sbit DIN = P2^2;
sbit DOUT = P2^3;
sbit Penirq = P2^4;


  • 一把轻柔的吉他
  • 应科霸主
    12
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
学长多和层主互动哦,么么哒


  • goZDC
  • 经纬栋梁
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
void Touch_Adjust(void)
{
float vx1,vx2,vy1,vy2; //比例因子
u16 chx1,chx2,chy1,chy2; //默认像素点坐标为0时的AD起始值
u16 lx,ly;
struct tp_pixu32_ p[4];
u8 cnt=0;
cnt=0;
POINT_COLOR=BLUE;
BACK_COLOR =WHITE;
LCD_Clear(WHITE);
POINT_COLOR=RED;
LCD_Clear(WHITE);
Drow_Touch_Point(tp_pianyi,tp_pianyi);
while(1)
{
if(Penirq==0)
{
if(Read_TP_Once())//µÃµ½µ¥´Î°´¼üÖµ
{
p[cnt].x=tp_pixad.x;
p[cnt].y=tp_pixad.y;
cnt++;
}
switch(cnt)
{
case 1:
LCD_Clear(WHITE);
while(!Penirq)
{
}
Drow_Touch_Point(LCD_W-tp_pianyi-1,tp_pianyi);
break;
case 2:
LCD_Clear(WHITE);
while(!Penirq)
{
}
Drow_Touch_Point(tp_pianyi,LCD_H-tp_pianyi-1);//»µã3
break;
case 3:
LCD_Clear(WHITE);
while(!Penirq)
{
}
Drow_Touch_Point(LCD_W-tp_pianyi-1,LCD_H-tp_pianyi-1);
break;
case 4:
LCD_Clear(WHITE);
while(!Penirq)
{
}
vx1=p[1].x>p[0].x?(p[1].x-p[0].x+1)*1000/(LCD_W-tp_pianyi-tp_pianyi):(p[0].x-p[1].x-1)*1000/(LCD_W-tp_pianyi-tp_pianyi);
chx1=p[1].x>p[0].x?p[0].x-(vx1*tp_pianyi)/1000:p[0].x+(vx1*tp_pianyi)/1000;
vy1=p[2].y>p[0].y?(p[2].y-p[0].y-1)*1000/(LCD_H-tp_pianyi-tp_pianyi):(p[0].y-p[2].y-1)*1000/(LCD_H-tp_pianyi-tp_pianyi);
chy1=p[2].y>p[0].y?p[0].y-(vy1*tp_pianyi)/1000:p[0].y+(vy1*tp_pianyi)/1000;
vx2=p[3].x>p[2].x?(p[3].x-p[2].x+1)*1000/(LCD_W-tp_pianyi-tp_pianyi):(p[2].x-p[3].x-1)*1000/(LCD_W-tp_pianyi-tp_pianyi);
chx2=p[3].x>p[2].x?p[2].x-(vx2*tp_pianyi)/1000:p[2].x+(vx2*tp_pianyi)/1000;
vy2=p[3].y>p[1].y?(p[3].y-p[1].y-1)*1000/(LCD_H-tp_pianyi-tp_pianyi):(p[1].y-p[3].y-1)*1000/(LCD_H-tp_pianyi-tp_pianyi);
chy2=p[3].y>p[1].y?p[1].y-(vy2*tp_pianyi)/1000:p[1].y+(vy2*tp_pianyi)/1000;
if((vx1>vx2&&vx1>vx2+tp_xiaozhun)||(vx1<vx2&&vx1<vx2-tp_xiaozhun)||(vy1>vy2&&vy1>vy2+tp_xiaozhun)||(vy1<vy2&&vy1<vy2-tp_xiaozhun))
{
cnt=0;
LCD_Clear(WHITE);
Drow_Touch_Point(tp_pianyi,tp_pianyi);
continue;
}
vx=(vx1+vx2)/2;vy=(vy1+vy2)/2;
chx=(chx1+chx2)/2;chy=(chy1+chy2)/2;
LCD_Clear(WHITE);
POINT_COLOR=BLACK;
BACK_COLOR=BLUE;
lx=0;ly=50;
LCD_ShowString(lx,ly,"VX1:");lx+=40;LCD_ShowNum(lx,ly,vx1,4);
lx=0;ly+=20;
LCD_ShowString(lx,ly,"Vy1:");lx+=40;LCD_ShowNum(lx,ly,vy1,4);
lx=0;ly+=20;
LCD_ShowString(lx,ly,"CHX1:");lx+=40;LCD_ShowNum(lx,ly,chx1,4);
lx=0;ly+=20;
LCD_ShowString(lx,ly,"CHY1:");lx+=40;LCD_ShowNum(lx,ly,chy1,4);
lx=100;ly=50;
LCD_ShowString(lx,ly,"VX2:");lx+=40;LCD_ShowNum(lx,ly,vx2,4);
lx=100;ly+=20;
LCD_ShowString(lx,ly,"Vy2:");lx+=40;LCD_ShowNum(lx,ly,vy2,4);
lx=100;ly+=20;
LCD_ShowString(lx,ly,"CHX2:");lx+=40;LCD_ShowNum(lx,ly,chx2,4);
lx=100;ly+=20;
LCD_ShowString(lx,ly,"CHY2:");lx+=40;LCD_ShowNum(lx,ly,chy2,4);
lx=50;ly=150;
LCD_ShowString(lx,ly,"VX:");lx+=40;LCD_ShowNum(lx,ly,vx,4);
lx=50;ly+=20;
LCD_ShowString(lx,ly,"Vy:");lx+=40;LCD_ShowNum(lx,ly,vy,4);
lx=50;ly+=20;
LCD_ShowString(lx,ly,"CHX:");lx+=40;LCD_ShowNum(lx,ly,chx,4);
lx=50;ly+=20;
LCD_ShowString(lx,ly,"CHY:");lx+=40;LCD_ShowNum(lx,ly,chy,4);
lx=30;ly+=30;
LCD_ShowString(lx,ly,"Adjust OK! Touch Anywhere To Continue");
Read_TP_Once();
LCD_Clear(WHITE);
return;
}
}
}
}


  • goZDC
  • 经纬栋梁
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
这就是触摸校验的程序,不多解释,一看就知道好复杂。


2026-02-23 16:06:27
广告
不感兴趣
开通SVIP免广告
  • goZDC
  • 经纬栋梁
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
触摸屏的话,就这样吧!现在说说主题文件系统吧


  • goZDC
  • 经纬栋梁
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
说说这个文件系统的来源吧,当做给大家讲讲故事。这个文件系统的开发者在中国石油工作,利用自己的空余时间去弄一些高冷技术,其中文件系统就是他做得比较好的作品之一。他的文件系统应该可以说是在51单片中使用文件系统的唯一选择吧。他现在在做单片机发面的培训,毕业于哈尔滨工程大学,但是读的是计算机专业。是不是想起了什么?有谁能找到熟悉的地方吗?


  • 奋天
  • 万人敬仰
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
还有更吗?
⊂ヽ
  \\ ∧_∧
   \( ˘ω˘ )
> ⌒ヽ
   /   へ\
   /  / \\
   レ ノ   ヽ_つ
  / /
  / /|
 ( (ヽ
 | |、\
 | 丿 \ ⌒)
 | |  ) /
水帖混经验,只为十五字,闪人飘过


  • goZDC
  • 经纬栋梁
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
接着更新吧,好久没时间理这个了


  • 萌哒哒的学长哟
  • 气自芳华
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
好棒


  • goZDC
  • 经纬栋梁
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼




2026-02-23 16:00:27
广告
不感兴趣
开通SVIP免广告
  • goZDC
  • 经纬栋梁
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
再上几张图吧,图片就可以显而易得,不用解释什么,清晰


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 首页 上一页 1 2 3 4 5 6 下一页 尾页
  • 119回复贴,共6页
  • ,跳到 页  
<<返回江西理工大...吧
分享到:
©2026 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示