数码之家

 找回密码
 立即注册
搜索
查看: 4200|回复: 9

[C51] 16*25 求点阵取模工具

[复制链接]
发表于 2021-6-28 12:20:25 | 显示全部楼层 |阅读模式
PCTOLCD2002 ,有行列取模方式,但是它是每行取8个点,然后再取下一行
我这个老王家买的每行是4个点。16bits是1个ICN2595输出(4*4的小方块)
扫描方式如下如,Z型的,最后16bits是最右边一条线,估计不好用,暂且就找个16*24可用的取模工具把,谢谢各位



下面是我万用表量的引脚图,给需要的人,eeprom是猜测未验证

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
发表于 2021-6-28 13:50:25 | 显示全部楼层
用EXCEL表格,写个公式,参考我之前发的帖子。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-6-28 17:13:11 | 显示全部楼层
弄了一下午,软件重排了下序 ,还是求个有设置这个点阵格式的软件,谢谢
// PCTO2002 阳码,行列式,顺向
for (byte k=0;k<4;k++) {
    for (byte i=0;i<3;i++) {
      highbyte = B11110000 &  bitmap[16*i+4*k];  //0 16 32 4  .... 12
      lowbyte  = B11110000 &  bitmap[16*i+1+4*k];//1 17 33 5  .... 13
      outbyte = highbyte | (lowbyte>>4);
      shiftOut(SIN, CLK, MSBFIRST,outbyte);
      
      highbyte = B11110000 &  bitmap[16*i+2+4*k];//2 18 34 6  .... 14
      lowbyte  = B11110000 &  bitmap[16*i+3+4*k];//3 19 35 7  .... 15
      outbyte = highbyte | (lowbyte>>4);
      shiftOut(SIN, CLK, MSBFIRST,outbyte);
      
      highbyte = B00001111 &  bitmap[16*i+4*k];  //0 16 32
      lowbyte  = B00001111 &  bitmap[16*i+1+4*k];//1 17 33
      outbyte = (highbyte<<4) | lowbyte;
      shiftOut(SIN, CLK, MSBFIRST,outbyte);
      
      highbyte = B00001111 &  bitmap[16*i+2+4*k];//2 18 34
      lowbyte  = B00001111 &  bitmap[16*i+3+4*k];//3 19 35
      outbyte = (highbyte<<4) | lowbyte;
      shiftOut(SIN, CLK, MSBFIRST,outbyte);
    }
  }
回复 支持 反对

使用道具 举报

发表于 2021-6-28 19:54:14 | 显示全部楼层
不会有为这种非常规格式设计的取模软件,只能自己再转换
回复 支持 反对

使用道具 举报

发表于 2021-6-28 22:03:56 | 显示全部楼层
本帖最后由 广东梁百万 于 2021-6-28 22:07 编辑

看看这个,想要什么比例的像素都行。
源自书本 : 清华大学出版社《手把手教你学51单片机-C语言版》  的配套光盘文件

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复 支持 反对

使用道具 举报

发表于 2021-6-28 22:11:27 | 显示全部楼层
本帖最后由 广东梁百万 于 2021-6-28 22:21 编辑
inthsunshine 发表于 2021-6-28 19:54
不会有为这种非常规格式设计的取模软件,只能自己再转换

下载上面这个取模软试试,不仅有16*25,你想要17*26,16*1,1*25,250*160.........都行




提醒一下,新建图像后,点格很小,点下图左下角那个“放大点格” 就可以放大到自己电脑上视觉合适的大小




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复 支持 反对

使用道具 举报

发表于 2021-6-28 22:34:47 | 显示全部楼层
本帖最后由 inthsunshine 于 2021-6-28 22:37 编辑
广东梁百万 发表于 2021-6-28 22:11
下载上面这个取模软试试,不仅有16*25,你想要17*26,16*1,1*25,250*160.........都行

这个我有,你没看懂lz的意思,16*25只是一方面, lz还要如图的扫描顺序,这个是相关产品自己定义的非标顺序(4×4点由一个芯片驱动,然后再组合大的行和列),怎么会有软件去迎合呢
回复 支持 反对

使用道具 举报

发表于 2021-6-29 00:48:53 | 显示全部楼层
本帖最后由 lyy-cy 于 2021-6-29 00:51 编辑

给楼主个思路:分两层来搞定。

第一层,内存中开辟缓冲区,buffer,16*25,把内容填进去,怎么取模都行。

第二层,自己写个函数将缓冲区设置好的图像数据按照硬件连接逻辑写到寄存器中。

可以参考:http://docs.micropython.org/en/latest/library/framebuf.html

墨水屏的显示,先开窗、再填充 也有这个意思。

全刷简单,局刷难一些,再来个动画,真的可以体会到头疼。

这个屏我也看到了,幸亏没有买。:lol:

回复 支持 1 反对 0

使用道具 举报

发表于 2021-9-16 11:22:31 | 显示全部楼层
您好,我想问下ICN2595的控制,我是用arduino控制,但并行输出没有效果
回复 支持 反对

使用道具 举报

发表于 2021-9-20 19:55:23 | 显示全部楼层
没想到自己要的取模软件这里有,谢谢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-5-3 11:03 , Processed in 0.156000 second(s), 11 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表