sanyi33nk Creative Commons License 2023.05.01 0 0 4247

Üdvözlöm!

 

Köszönöm a segitségét.

 

Egyenlőre csak a RPM 1250 és a f / s LSB MSB módositást csináltam meg amit Ön javasolt.

 

az eredmény :  Kiir    --->  RPM = 1250 [f/s]  

 

a kód:

 

#include "Wire.h"// I2C: 0x3D (61) Lcd chip: based on PCF8558
#define LCD_ADR 0x3d #define NORMAL_MODE B00000001 #define I2C_BUFFER 30

static const uint8_t System5x7[]/* PROGMEM*/ = { 0x00, 0x00, 0x00, 0x00, 0x00,// (space) 0x00, 0x00, 0x5F, 0x00, 0x00,// ! 0x00, 0x07, 0x00, 0x07, 0x00,// " 0x14, 0x7F, 0x14, 0x7F, 0x14,// # 0x24, 0x2A, 0x7F, 0x2A, 0x12,// $ 0x23, 0x13, 0x08, 0x64, 0x62,// % 0x36, 0x49, 0x55, 0x22, 0x50,// & 0x00, 0x05, 0x03, 0x00, 0x00,// ' 0x00, 0x1C, 0x22, 0x41, 0x00,// ( 0x00, 0x41, 0x22, 0x1C, 0x00,// ) 0x08, 0x2A, 0x1C, 0x2A, 0x08,// * 0x08, 0x08, 0x3E, 0x08, 0x08,// + 0x00, 0x50, 0x30, 0x00, 0x00,// , 0x08, 0x08, 0x08, 0x08, 0x08,// - 0x00, 0x60, 0x60, 0x00, 0x00,// . 0x02, 0x04, 0x08, 0x10, 0x20,// / 0x3E, 0x45, 0x49, 0x51, 0x3E,// 0 0x00, 0x40, 0x7F, 0x42, 0x00,// 1 0x46, 0x61, 0x51, 0x61, 0x42,// 2 0x21, 0x41, 0x45, 0x4B, 0x31,// 3 0x18, 0x14, 0x12, 0x7F, 0x10,// 4 0x39, 0x45, 0x45, 0x45, 0x27,// 5 0x3C, 0x4A, 0x49, 0x49, 0x30,// 6 0x01, 0x71, 0x09, 0x05, 0x03,// 7 0x36, 0x49, 0x49, 0x49, 0x36,// 8 0x06, 0x49, 0x49, 0x29, 0x1E,// 9 0x00, 0x36, 0x36, 0x00, 0x00,// : 0x00, 0x56, 0x36, 0x00, 0x00,// ; 0x00, 0x08, 0x14, 0x22, 0x41,// < 0x14, 0x14, 0x14, 0x14, 0x14,// = 0x41, 0x22, 0x14, 0x08, 0x00,// > 0x02, 0x01, 0x51, 0x09, 0x06,// ? 0x32, 0x49, 0x79, 0x41, 0x3E,// @ 0x7E, 0x11, 0x11, 0x11, 0x7E,// A 0x7F, 0x49, 0x49, 0x49, 0x36,// B 0x3E, 0x41, 0x41, 0x41, 0x22,// C 0x7F, 0x41, 0x41, 0x22, 0x1C,// D 0x7F, 0x49, 0x49, 0x49, 0x41,// E 0x7F, 0x09, 0x09, 0x01, 0x01,// F 0x3E, 0x41, 0x41, 0x51, 0x32,// G 0x7F, 0x08, 0x08, 0x08, 0x7F,// H 0x00, 0x41, 0x7F, 0x41, 0x00,// I 0x20, 0x40, 0x41, 0x3F, 0x01,// J 0x7F, 0x08, 0x14, 0x22, 0x41,// K 0x7F, 0x40, 0x40, 0x40, 0x40,// L 0x7F, 0x02, 0x04, 0x02, 0x7F,// M 0x7F, 0x04, 0x08, 0x10, 0x7F,// N 0x3E, 0x41, 0x41, 0x41, 0x3E,// O 0x06, 0x09, 0x09, 0x09, 0x7F,// P 0x3E, 0x41, 0x51, 0x21, 0x5E,// Q 0x46, 0x29, 0x19, 0x09, 0x7F,// R 0x46, 0x49, 0x49, 0x49, 0x31,// S 0x01, 0x01, 0x7F, 0x01, 0x01,// T 0x3F, 0x40, 0x40, 0x40, 0x3F,// U 0x1F, 0x20, 0x40, 0x20, 0x1F,// V 0x7F, 0x20, 0x18, 0x20, 0x7F,// W 0x63, 0x14, 0x08, 0x14, 0x63,// X 0x03, 0x04, 0x78, 0x04, 0x03,// Y 0x61, 0x51, 0x49, 0x45, 0x43,// Z 0x00, 0x00, 0x7F, 0x41, 0x41,// [ 0x02, 0x04, 0x08, 0x10, 0x20,// "" 0x41, 0x41, 0x7F, 0x00, 0x00,// ] 0x04, 0x02, 0x01, 0x02, 0x04,// ^ 0x40, 0x40, 0x40, 0x40, 0x40,// _ 0x00, 0x01, 0x02, 0x04, 0x00,// ` 0x20, 0x54, 0x54, 0x54, 0x78,// a 0x7F, 0x48, 0x44, 0x44, 0x38,// b 0x38, 0x44, 0x44, 0x44, 0x20,// c 0x38, 0x44, 0x44, 0x48, 0x7F,// d 0x38, 0x54, 0x54, 0x54, 0x18,// e 0x02, 0x01, 0x09, 0x7F, 0x08,// f 0x08, 0x14, 0x54, 0x54, 0x3C,// g 0x7F, 0x08, 0x04, 0x04, 0x78,// h 0x00, 0x44, 0x7D, 0x40, 0x00,// i 0x20, 0x40, 0x44, 0x3D, 0x00,// j 0x00, 0x7F, 0x10, 0x28, 0x44,// k 0x00, 0x41, 0x7F, 0x40, 0x00,// l 0x7C, 0x04, 0x18, 0x04, 0x78,// m 0x7C, 0x08, 0x04, 0x04, 0x78,// n 0x38, 0x44, 0x44, 0x44, 0x38,// o 0x7C, 0x14, 0x14, 0x14, 0x08,// p 0x08, 0x14, 0x14, 0x18, 0x7C,// q 0x7C, 0x08, 0x04, 0x04, 0x08,// r 0x20, 0x54, 0x54, 0x54, 0x48,// s 0x04, 0x3F, 0x44, 0x40, 0x20,// t 0x3C, 0x40, 0x40, 0x20, 0x7C,// u 0x1C, 0x20, 0x40, 0x20, 0x1C,// v 0x3C, 0x40, 0x30, 0x40, 0x3C,// w 0x44, 0x28, 0x10, 0x28, 0x44,// x 0x0C, 0x50, 0x50, 0x50, 0x3C,// y 0x44, 0x64, 0x54, 0x4C, 0x44,// z 0x00, 0x08, 0x36, 0x41, 0x00,// { 0x00, 0x00, 0x7F, 0x00, 0x00,// | 0x00, 0x41, 0x36, 0x08, 0x00,// } 0x08, 0x08, 0x2A, 0x1C, 0x08,// -> 0x08, 0x1C, 0x2A, 0x08, 0x08 // <-};

void setup(){ Wire.begin(); Serial.begin(9600);}

//fill 30bytes with b after that incr doesnt work, wire.h hs 32 data bufvoid fill30(byte x, byte y, byte b){ int i; Wire.beginTransmission(LCD_ADR); Wire.write( y<<5|NORMAL_MODE ); Wire.write(x); for(i=0; i<I2C_BUFFER; i++) Wire.write(b); Wire.endTransmission();}
void cls(){ int x,y; for(y=0; y<5; y++) for(x=0; x<=101; x+=I2C_BUFFER) fill30(x,y,0x0);}
void CharOut(int x, int y, byte c){ // font starts from 32 int i=0; Wire.beginTransmission(LCD_ADR); Wire.write( y<<5|NORMAL_MODE ); Wire.write(x); for(i=0; i<5; i++) { uint8_t b= System5x7[(c-32)*5+i]; Wire.write( b ); } Wire.endTransmission();}
void TextOut(int x, int y, const char* str){ int i; for(i=0; str[i]; i++) CharOut(x+i*5, y, (byte)str[i]);}
unsigned long timeb, frame_time;unsigned long timea;
void loop(){ char buf[16];
timeb= millis(); cls(); TextOut(35,11,"0521 ="); TextOut(70,11," MPR"); TextOut(5,11," [s/f]"); int fps= 1000.0 / (float)( millis() - timeb ); sprintf(0,1,buf); delay(2000);}

 

 

 

Szóval alakul ,de még nem az igazi.

 

Üdv: Sándor

Előzmény: Prof (4245)