Bienvenido a los foros de FT81x Manía. Te invitamos a regístrate totalmente gratis. Disfruta de tu experiencia con un grandes amigos y Staff.

Welcome, Guest
You have to register before you can post on our site.

Username
  

Password
  





Search Forums

(Advanced Search)

Forum Statistics
» Members: 227
» Latest member: raynard
» Forum threads: 166
» Forum posts: 577

Full Statistics

Online Users
There are currently 4 online users.
» 0 Member(s) | 4 Guest(s)

Latest Threads
lightcalamar
Retiro de escombros

Forum: Presentaciones y despedias
Last Post:  lightcalamar
05-09-2019, 13:36 08
» Replies: 1
» Views: 15
Redphoenix
FT812 and Arduino Uno

Forum: Arduino
Last Post:  Redphoenix
30-08-2019, 04:06 57
» Replies: 15
» Views: 144
CandelaRDZ
PUERTOS SPI TENSSY 3.6

Forum: Teensy
Last Post:  CandelaRDZ
20-08-2019, 20:32 38
» Replies: 4
» Views: 60
slider
New unified library GD32...

Forum: Unified GD23Z
Last Post:  slider
15-08-2019, 18:57 01
» Replies: 9
» Views: 1,302
slider
New library GD23ZESP32

Forum: ESP32
Last Post:  slider
15-08-2019, 18:54 38
» Replies: 1
» Views: 382

 
  Retiro de escombros
Posted by:  javieralinar - 02-09-2019, 20:06 20 - Forum: Presentaciones y despedias - Replies (1)

Soy una persona a la que le encanta mucho todo el tema del retiro de escombros, es por eso que siempre visito la web porque siento que nos puede dejar muchas enseñanzas acerca de este tema.

Print this item

  Editor de videos AVI
Posted by:  TFTLCDCyg - 11-08-2019, 22:10 46 - Forum: Herramientas para pantallas - No Replies

Herramienta para procesar archivos de video: https://brtchip.com/eve-toolchains/#EVEAssetBuilder

Print this item

  FT812 and Arduino Uno
Posted by:  Redphoenix - 11-08-2019, 21:46 25 - Forum: Arduino - Replies (15)

Hello everyone!

I am having a real difficult time with this setup.  This is my 1st attempt at a screen like this and I cannot find the right information I need to make this work.

I have the following:

NHD-7.0-800480FT-CSXN-T - link

NHD-FT81x-SHIELD - link

I have got some sample libraries to work.  I am just having a hard time with starting from the very beginning and how to start adding widgets and such to this screen.  Please, would someone help!  

Print this item

Photo PUERTOS SPI TENSSY 3.6
Posted by:  CandelaRDZ - 09-08-2019, 18:24 44 - Forum: Teensy - Replies (4)

Hace unos meses estuve teniendo complicaciones con el uso de la pantalla NEWHAVEN 4.3" dado
a que en un proyecto que estoy desarrollando uso la placa SGTL5000 de audio y los pines SPI se
empalmaban con los de la pantalla para ello tuve que re ubicar los pines, tuve complicaciones dado
aque anterior mente nunca habia tenido que realizar algo por el estilo, investigando en foros pude darme cuenta
que la manera de realizar este cambio es colocando en el SETUP:

SPI.setMISO(PIN ALTERNO);
SPI.setMOSI(PIN ALTERNO);
SPI.setSCK(PIN ALTERNO);

Los pines alternos vienen identificados en la siguiente tabla:
   

antes de usar esta pantalla estaba usando una pantalla tft ili9341 con una libreria de Rinkydink que modifique para que
funcionara con los tenssy 3.6 y ahora deceo replicar mi diseño en la pantalla de newhaven pero no se como realizar el
desarrollo para esta pantalla.

esta es la pantalla que desarrolle en la pantalla tft ili9341 la cual deceo replicar en la newhaven
   


ya instale las librerias GD3USDIO Y GD23ZU en mi IDE de arduino y ya eh podido visualizar el hola mundo en la pantalla

Print this item

  wifi analyser
Posted by:  andromeda92 - 05-08-2019, 14:35 34 - Forum: Teensy - Replies (2)

Hi,

I have ported wifi analyser from ILI9341.
I use
- Teensy 3.6
- arduino 1.8.9
- screen 7" newhavendisplay CSXN
- ESP9266 (ESP-01)
- library WiFiEsp from bportaluri that i modified

the refresh of the screen is done every 10s

arduino code:

in my case i use Serial 5 from teeny for ESP8266, i you use Serial1 for example modify Serial5 by Serial1 in source code arduino

Code:
void setup(void) {
 Serial.begin(115200);
 Serial5.begin(115200);
 delay(1000);
 WiFi.init(&Serial5);


you have to modify ip, gateway and mask from your esp8266 to file from library at WiFiEsp/src/utility/EspDrv.cpp line: 144

Code:
//set ip,gw,net mask
 sendCmd(F("AT+CIPSTA_CUR=\"192.168.2.58\",\"192.168.2.25\",\"255.255.255.0\""));


Code:
#include "WiFiEsp.h"
#include <GD23ZU.h>

#define WIDTH 800
#define HEIGHT 480
#define BANNER_HEIGHT 22

#define GRAPH_BASELINE (HEIGHT - 35)
#define GRAPH_HEIGHT (HEIGHT - 52)
#define CHANNEL_WIDTH (WIDTH / 16)

// RSSI RANGE
#define RSSI_CEILING -40
#define RSSI_FLOOR -100
#define NEAR_CHANNEL_RSSI_ALLOW -70

#define GD_BLACK            0x0000
#define GD_WHITE            0xFFFF
#define GD_RED              0xF800
#define GD_GREEN            0x07E0
#define GD_BLUE             0x001F
#define GD_CYAN             GD_GREEN | GD_BLUE//0x07FF;
#define GD_MAGENTA          0xF81F
#define GD_YELLOW           GD_RED | GD_GREEN//0xFFE0;  
#define GD_ORANGE           0xFD20


// Channel color mapping from channel 1 to 14
uint16_t channel_color[] = {
 GD_RED, GD_ORANGE, GD_YELLOW, GD_GREEN, GD_CYAN, GD_MAGENTA,
 GD_RED, GD_ORANGE, GD_YELLOW, GD_GREEN, GD_CYAN, GD_MAGENTA,
 GD_RED, GD_ORANGE
};

uint8_t scan_count = 0;
//IPAddress IPDns(192,168,2,25);

void setup(void) {
 Serial.begin(115200);
 Serial5.begin(115200);
 delay(1000);
 WiFi.init(&Serial5);
//  delay(1000);  
//  WiFi.setDNS(IPDns);
 
 // check for the presence of the shield
 if (WiFi.status() == WL_NO_SHIELD) {
   Serial.println("WiFi shield not present");
   // don't continue
   while (true);
 }

 //Serial5.println("AT+RFPOWER=82");
 //delay(200);
 
 GD.begin(0);
}

void loop() {

 GD.ClearColorRGB(GD_BLUE);
 GD.Clear();
 GD.SaveContext();
 GD.ColorRGB(GD_WHITE);
 GD.cmd_text(0, 0, 27, 0, "ESP 8266 Wifi Analyser");
 GD.RestoreContext();

 uint8_t ap_count[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
 int32_t max_rssi[] = { -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100};

 // WiFi.scanNetworks will return the number of networks found
 int n = WiFi.scanNetworks();
 
 if (n == -1) {    
   Serial.println("Couldn't get a wifi connection");
   //while (true);
 }

 
 GD.Begin(RECTS);
 GD.SaveContext();
 GD.ColorRGB(GD_BLACK);
 GD.Vertex2f(0*16, BANNER_HEIGHT*16);
 GD.Vertex2f(799*16, 463*16);
 GD.RestoreContext();


 if (n == 0) {
   GD.SaveContext();
   GD.ColorRGB(GD_BLACK);
   GD.cmd_text(0, BANNER_HEIGHT, 27, 0, "no networks found");
   GD.RestoreContext();
 } else {
   // plot found WiFi info
   for (int i = 0; i < n; i++) {
     int32_t channel = WiFi.channel(i);
     int32_t rssi = WiFi.RSSI(i);
     uint16_t color = channel_color[channel - 1];
     int height = constrain(map(rssi, RSSI_FLOOR, RSSI_CEILING, 1, GRAPH_HEIGHT), 1, GRAPH_HEIGHT);

     // channel stat
     ap_count[channel - 1]++;
     if (rssi > max_rssi[channel - 1]) {
       max_rssi[channel - 1] = rssi;
     }

     GD.Begin(LINES);
     GD.SaveContext();
     GD.ColorRGB(color);
     GD.Vertex2f((channel * CHANNEL_WIDTH)*16, (GRAPH_BASELINE - height)*16);
     GD.Vertex2f(((channel - 1) * CHANNEL_WIDTH)*16, (GRAPH_BASELINE + 1)*16);
     GD.Vertex2f((channel * CHANNEL_WIDTH)*16, (GRAPH_BASELINE - height)*16);
     GD.Vertex2f(((channel + 1) * CHANNEL_WIDTH)*16, (GRAPH_BASELINE + 1)*16);
     GD.RestoreContext();

     // Print SSID, signal strengh and if not encrypted
     GD.SaveContext();
     GD.ColorRGB(color);
     char buf[255];
     sprintf(buf, "%s(%ld)%s", (strlen(WiFi.SSID(i))>0?WiFi.SSID(i):"Hidden"), rssi, (WiFi.encryptionType(i) == ENC_TYPE_NONE) ? "*" : "");
     GD.cmd_text((channel - 1) * CHANNEL_WIDTH, GRAPH_BASELINE - 10 - height, 26, 0, buf);
     GD.RestoreContext();

     // rest for WiFi routine?
     delay(10);
   }
 }

 // print WiFi stat
 GD.SaveContext();
 GD.ColorRGB(GD_WHITE);

 char buf2[255] = {0};
 int cursorx = 310;
 sprintf(buf2, "%d networks found, suggested channels: ", n);
 GD.cmd_text(0, BANNER_HEIGHT, 27, 0, buf2);
 
 bool listed_first_channel = false;
 for (int i = 1; i <= 11; i++) { // channels 12-14 may not available
   if ((i == 1) || (max_rssi[i - 2] < NEAR_CHANNEL_RSSI_ALLOW)) { // check previous channel signal strengh
     if ((i == sizeof(channel_color)) || (max_rssi[i] < NEAR_CHANNEL_RSSI_ALLOW)) { // check next channel signal strengh
       if (ap_count[i - 1] == 0) { // check no AP exists in same channel
         if (!listed_first_channel) {
           listed_first_channel = true;                                  
         } else {          
           GD.cmd_text(cursorx, BANNER_HEIGHT, 27, 0, " ");
           cursorx += 15;
         }
         GD.cmd_number(cursorx, BANNER_HEIGHT, 27, 0, i);
         cursorx += 15;
       }
     }
   }
 }
 GD.RestoreContext();

 // draw graph base axle
 GD.SaveContext();
 GD.ColorRGB(GD_WHITE);
 GD.Begin(LINES);
 GD.Vertex2f(0*16, GRAPH_BASELINE*16);
 GD.Vertex2f(800*16, GRAPH_BASELINE*16);
 GD.RestoreContext();
 
 for (int i = 1; i <= 14; i++) {
   char buf[255];
   sprintf(buf, "%d", i);
   GD.SaveContext();
   GD.ColorRGB(channel_color[i - 1]);
   GD.cmd_text((i * CHANNEL_WIDTH) - ((i < 10) ? 3 : 6), GRAPH_BASELINE + 2, 27, 0, buf);
   GD.RestoreContext();
   
   if (ap_count[i - 1] > 0) {
     char buf[255];
     sprintf(buf, "(%d)", ap_count[i - 1]);
     GD.SaveContext();
     GD.ColorRGB(channel_color[i - 1]);
     GD.cmd_text((i * CHANNEL_WIDTH) - ((ap_count[i - 1] < 10) ? 9 : 12), GRAPH_BASELINE + 16, 27, 0, buf);
     GD.RestoreContext();      
   }
 }

 GD.swap();

 // Wait a bit before scanning again
 delay(10000);

}


Library WiFiEsp modified:

.zip   WiFiEsp.zip (Size: 60.7 KB / Downloads: 2)


?mage


?mage

Print this item