申博太阳城娱乐城官网现金网:

 找回密码
 立即注册

只需一步,快速开始

微信扫一扫,快速登录

搜索
查看: 2158|回复: 14

申博太阳城娱乐城官网现金网: 记录__NodeMcu驱动UC1609C[19264]LCD屏并实时扫描WIFI热点

t6娱乐vip真人
1#
发表于 2020-1-6 15:01:43 | 只看该作者 |倒序浏览 |阅读模式

认识众多玩家高手/拆客/DIYer,查阅更多资源,一起学习技术知识

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

x


经过研究测试,发现这个屏可以用在NodeMCU上,亦或者说ESP8266上,借鉴了U8G2作者的库,表示感谢~!!
接线方式与大多数SPI屏类似,只是接线标识不同.两个重点要求必须满足:
1.   SPI 5线 CS CD RES不能乱接,
2   必须在U8G2配置项选择全帧缓冲 _F_选项.
也许对于SSD1306这类屏可以不用这样做,但是对于这个款没有支持的屏用UC16604的配置项,至少这是必须的.
  1. * 硬件连接方式必须为SPI 5线模式.
  2. * 时钟_CLK=D5=GPIO14
  3. * 数据_SDA=D6=GPIO12
  4. * 片选_CS=D8=GPIO15
  5. * 数据/命令_CD=D7=GPIO13
  6. * 复位_RES=D4=GPIO2
复制代码
  1. //配置项:
  2. U8G2_UC1604_JLX19264_F_4W_SW_SPI u8g2(U8G2_R0, /* clock=*/ 14, /* data=*/ 12, /* cs=*/ 15, /* dc=*/ 13, /* reset=*/ 2);
复制代码
以下是这款屏独有的配置命令:
  1. u8g2.sendF("c", 0xeb);   //设置LCD偏置比(亮度设置)
  2.   u8g2.sendF("c", 0x81);   //设置SEG偏置电压(对比度)
  3.   u8g2.sendF("c", 0xa3);   //设置帧速率
  4.   u8g2.sendF("c", 0x2f);   //显示屏功耗设置
复制代码


以下是一个WIFI SCAN范例:

  1. #include <ESP8266WiFi.h>
  2. #include <U8g2lib.h>
  3. #ifdef U8X8_HAVE_HW_SPI
  4. #include <SPI.h>
  5. #endif
  6. U8G2_UC1604_JLX19264_F_4W_SW_SPI u8g2(U8G2_R0, /* clock=*/ 14, /* data=*/ 12, /* cs=*/ 15, /* dc=*/ 13, /* reset=*/ 2);

  7. void setup(void) {
  8.   Serial.begin(115200);
  9.   u8g2.begin();
  10.   u8g2.setFont(u8g2_font_wqy16_t_gb2312);
  11.   u8g2.enableUTF8Print();
  12.   u8g2.sendF("c", 0xeb);               //设置LCD偏置比(亮度设置)
  13.   u8g2.sendF("c", 0x81);               //设置SEG偏置电压(对比度)
  14.   u8g2.sendF("c", 0xa3);               //设置帧速率
  15.   u8g2.sendF("c", 0x2f);               //显示屏功耗设置
  16.    WiFi.mode(WIFI_STA);
  17.    WiFi.disconnect();
  18.    u8g2.setCursor(48,32);
  19.    u8g2.println("正在启动"); // 写文本
  20.    u8g2.sendBuffer();       // 显示Buffer
  21.    delay(2000);
  22. }

  23. void loop() {
  24.   u8g2.clearBuffer();          // 清Buffer数据
  25.   int net = WiFi.scanNetworks();
  26.   u8g2.setFont(u8g2_font_wqy12_t_gb2312);
  27.   u8g2.setCursor(0,0);   //光标起始位置
  28.   for (int i = 0;i < net; i++){
  29.   u8g2.setCursor(0,i * 10);
  30.   u8g2.print(WiFi.SSID(i));
  31.   u8g2.setCursor(130,i * 10);
  32.   u8g2.print(WiFi.RSSI(i));
  33.   u8g2.setCursor(160,i * 10);
  34.   u8g2.print((WiFi.encryptionType(i) == ENC_TYPE_NONE)?" ":"加密");
  35.   u8g2.sendBuffer();                          // 显示Buffer
  36.   }
  37. }
复制代码



那个之前有很多人在某博客等上面说U8G2显示中文各种问题,在这里正名一下.
U8G2没有问题.真的没有问题.


1.[U8G2汉字显示不全,缺少个别字].U8G2内总共就那么几个中文字库,而且都是UTF-8_XX_1  XX_2 XX_3这种结构的,比如文泉驿的字库.GB2312的字库等.这说明一个字库根本就放不下这么多汉字编码,SO,作者用了分库的方式,所以.第一个 问题[U8G2汉字显示不全,缺少个别字].解决方法,多试几个字库就好了.我用的u8g2.setFont(u8g2_font_wqy12_t_gb2312);这个就可以完美显示.虽然字号不多,只有12,13,14,15,16.但一般够用.
2.输出方式问题.
u8g2.enableUTF8Print();  对应的是Print和println函数,那些用u8g2.drawStr(0,32,"中文");输出中文错误还怪ArduinoIDE不支持UTF-8/GB2312编码的人,你是什么思维逻辑?



最后再放一个没完成的作品.
  1. /*最简单的NTP时钟窗口打印
  2. *仅仅需要修改WIFI热点名称
  3. *和密码就可以直接使用.*/

  4. #include <ESP8266WiFi.h>
  5. #include <NTPClient.h>
  6. #include <WiFiUdp.h>
  7. WiFiUDP ntpUDP;
  8. NTPClient timeClient(ntpUDP,"ntp.ntsc.ac.cn",28800,1000);
  9. const char *ssid     = "12341234";                //你的热点名称
  10. const char *password = "12341234";                //你的热点密码
  11. void setup(void) {
  12.   Serial.begin(115200);
  13.   WiFi.begin(ssid, password);
  14.   timeClient.begin();
  15.   while ( WiFi.status() != WL_CONNECTED ) {
  16.     Serial.print(" . ");
  17.     delay(500);
  18.    }
  19.    Serial.print(WiFi.localIP());
  20.    delay(1000);
  21. }

  22. void loop() {
  23.   timeClient.update();
  24.   Serial.print(timeClient.getFormattedTime());
  25.   delay(100);
  26. }
复制代码




NodeMCU_1609_WIFIScan.ino.nodemcu.zip

535.27 KB, 下载次数: 1, 下载积分: M币 -35

1609固件-带中文

打赏

参与人数 1M币 +100 收起 理由
阿睦 + 100

查看全部打赏

2#
发表于 2020-1-6 15:49:03 | 只看该作者
如果没有记错1602、1604、2004等这类屏用LiquidCrystal库来驱动更适合
3#
 楼主| 发表于 2020-1-6 17:51:30 | 只看该作者
lbdj88 发表于 2020-1-6 15:49
如果没有记错1602、1604、2004等这类屏用LiquidCrystal库来驱动更适合

看屏的接口,像1602的话,IO口不紧张,用LiquidCrystal驱动更好,节省系统资源,U8G2毕竟太大了,尽管优化的很好.还是"大"....权衡IO口和系统资源.最好的方式是用IIC调用字库的方式.而不是将字库连同程序一起写入单片机.U8G2就是这么干的...哈哈.Arduino带这个屏就是内存原因,所以转移带NodeMcu上来了.上次在Arduino写个温度记录,用了SD库,2048的SRAM,超出2个字节 ,2050,编译不通过...SD库太吃内存了.虽然Arduino的SPI接口好用,SRAM太小太金贵,还是C51划算.STM32没试过.听说很火...看着那瑟瑟发抖的内存,还是忍住没有去剁手...
4#
发表于 2020-1-7 13:42:06 | 只看该作者
loadbxh 发表于 2020-1-6 17:51
看屏的接口,像1602的话,IO口不紧张,用LiquidCrystal驱动更好,节省系统资源,U8G2毕竟太大了,尽管优化的很 ...

学JAVA入门的,原则就是:

坚决不因内存不够就多一块芯片,内存不够的话上ESP32~~~

只要编程方便,多封装几下又怎么样,我们可以怼性能啊……
5#
发表于 2020-1-8 16:44:02 | 只看该作者
loadbxh 发表于 2020-1-6 17:51
看屏的接口,像1602的话,IO口不紧张,用LiquidCrystal驱动更好,节省系统资源,U8G2毕竟太大了,尽管优化的很 ...

stm32太贵,是你没有用拆机的stm32而已,一片两三块钱,点个流水灯毫不心疼
6#
发表于 2020-1-8 17:27:06 | 只看该作者
一个ESP8266非要这样玩,呵呵。ESP8266 4MB的FLSH完全可以容纳下3个16、24、32点阵汉字和ASCII字库而且不用吧字库弄成程序里,完全独立。玩家都被Arduino束缚了,为什么不想想自己写点东西?STM32?在垃圾的STM32F0的内存也比C51大得多,为什么老是定势思维吧字库要放片内?外接一个字库芯片或者FLASH不就可以了?
7#
发表于 2020-1-20 07:43:38 | 只看该作者
原来是JLX19264啊,不用U8G2也可以。
自己驱动也很简单的。
如果嫌U8G2太大,好像U8G2有一个阉割版的。
8#
发表于 2020-4-14 07:19:06 | 只看该作者
WIFI SCAN范例:我编译不过啊
9#
 楼主| 发表于 2020-4-15 07:10:28 | 只看该作者
zxy882266 发表于 2020-4-14 07:19
WIFI SCAN范例:我编译不过啊

抱什么错误呢?
看错误~依赖包
10#
发表于 2020-4-15 19:08:05 来自手机浏览器 | 只看该作者
netbeetle 发表于 2020-1-8 17:27
一个ESP8266非要这样玩,呵呵。ESP8266 4MB的FLSH完全可以容纳下3个16、24、32点阵汉字和ASCII字库而且不用 ...

外接不用花钱么……更别说系统复杂度了…… 要是靠这个做产品无所谓 可玩玩有必要么?esp8266的可执行固件最大1m esp32可以更大 ,一般玩玩也行了……而esp32 都快20块钱了……这个价格已经可以上全志F1C100s系列了

虽然 功耗不一样 可直上usb也就没区别了,而那些东西光内存就32m 起,直接上linux python...
11#
发表于 2020-4-16 03:23:03 来自手机浏览器 | 只看该作者
另外 乐鑫还官宣了一个他自己说价格"美丽"的esp32s2 性能介于esp8266 esp32之间

要是增强版“8266”只比现在贵1,2块钱的话 ………


:biggrin: 现在硬件的发展已经够快了 更快 更高 更强 更省 不是一直都在发生的事情么
12#
发表于 2020-5-27 18:44:57 | 只看该作者
不要抱怨了,51你也没吧字库全装进去,ARDUINO可是全能的肯定要占内存,如果你装进51,看还好用不
13#
发表于 2020-5-28 10:54:32 | 只看该作者
qingkong 发表于 2020-4-16 03:23
另外 乐鑫还官宣了一个他自己说价格"美丽"的esp32s2 性能介于esp8266 esp32之间

要是增强版“8266”只比现 ...

esp32s2,现在就在用,挺好用的。

u8g2位图数据一直搞不明白排列方式,反正以前用51驱动LCD时候留下来的代码基本上都废了。
也不知道是哪边的思维比较奇葩,反正要用u8g2的话,最好要抛弃以前51下的很多经验思维。
14#
 楼主| 发表于 2020-6-6 01:42:30 来自手机浏览器 | 只看该作者
jjbboox 发表于 2020-5-28 10:54
esp32s2,现在就在用,挺好用的。

u8g2位图数据一直搞不明白排列方式,反正以前用51驱动LCD时候留下来的 ...

esp32性价比还不够均衡,另外,两个32换一个橘子派,我还是偏向橘子派。比32单片强太多。
15#
发表于 2020-7-14 23:52:30 | 只看该作者
http://535.258ib.com/forum.php ... d=178304&extra=  参考了楼主的例子,示范了一下 ESP32 的硬件SPI支持

补充内容 (2020-8-13 20:30):
嫌SPI占用管脚太多的,可以改I2C,http://535.258ib.com/forum.php ... p;extra=#pid5620396  :)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|关于我们|联系我们|网站条款|数码之家 ( 闽ICP备05031405号 )

GMT+8, 2020-10-26 14:39 , Processed in 0.202800 second(s), 16 queries , Redis On.

Powered by t6娱乐vip真人

© 2001-2019 Comsenz Inc.

www.vni99.com登入 返回顶部 返回列表
怎么下载新宝6 华盛顿下载最高占成 纽约国际967 永盈会app登入 澳门赌场嫖娼网上娱乐场
博彩网站 博士登入 澳门赌钱不犯法吗登入 太阳城亚洲娱乐网网上娱乐场 宜良皇家永利登入 太阳城天津时时彩彩票官网
澳门金沙城中心投资登入 澳门金光综艺馆网址登入 日博机械登入 皇冠娱乐场注册送10登入 二八杠游戏网站登入
www.22sun.com 澳门夜场真的好赚钱吗 申博手机版下载客户端 世界上的赌城 深圳市会盈科技有限登入