<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[forum.rcl-radio.ru &mdash; LC75853 — ЖКИ драйвер (Arduino)]]></title>
	<link rel="self" href="http://forum.rcl-radio.ru/extern.php?action=feed&amp;tid=633&amp;type=atom" />
	<updated>2024-04-26T03:38:56Z</updated>
	<generator>PunBB</generator>
	<id>http://forum.rcl-radio.ru/viewtopic.php?id=633</id>
		<entry>
			<title type="html"><![CDATA[LC75853 — ЖКИ драйвер (Arduino)]]></title>
			<link rel="alternate" href="http://forum.rcl-radio.ru/viewtopic.php?pid=10194#p10194" />
			<content type="html"><![CDATA[<p>Основная статья - <a href="http://rcl-radio.ru/?p=131929">http://rcl-radio.ru/?p=131929</a></p><p><a href="http://rcl-radio.ru/wp-content/uploads/2024/04/san_lc75853ne-smd.pdf">http://rcl-radio.ru/wp-content/uploads/ … ne-smd.pdf</a></p><p><span class="postimg"><img src="http://forum.rcl-radio.ru/uploads/images/2024/04/0d22eda3a60d0f1f6f4c2bd3fe7f1644.png" alt="http://forum.rcl-radio.ru/uploads/images/2024/04/0d22eda3a60d0f1f6f4c2bd3fe7f1644.png" /></span> </p><p><span class="postimg"><img src="http://forum.rcl-radio.ru/uploads/images/2024/04/8c3e8a3f245741542554147e3967620f.png" alt="http://forum.rcl-radio.ru/uploads/images/2024/04/8c3e8a3f245741542554147e3967620f.png" /></span> </p><br /><div class="codebox"><pre><code>#define DELAY 1000

#define CE  3
#define CL  4
#define DI  2

long t=0b100000000000000000000;

void setup(){
  Serial.begin(9600);
  pinMode(CE, OUTPUT);
  pinMode(CL, OUTPUT);
  pinMode(DI, OUTPUT);
  digitalWrite(CE,LOW);
  digitalWrite(CL,LOW);
  delay(200);
  write_byte(0,0,0,0,0,0);
  }
  /*
  b1 1                   21
   0b111111111111111111111 
  b2 22                  42
   0b111111111111111111111  
  b3 43                  63
   0b111111111111111111111  
  b4 64                  84
   0b111111111111111111111 
  b5 85                  105
   0b111111111111111111111 
  b6 106                 126
   0b111111111111111111111    
   */

void loop(){
  write_byte(0b111111111111111111111,0b111111111111111111111, 0b111111111111111111111,0b111111111111111111111, 0b111111111111111111111,0b111111111111111111111);
  delay(5000);

  for(int j=0;j&lt;=20;j++){
    write_byte(t&gt;&gt;j,0,0,0,0,0);
    Serial.print(t&gt;&gt;j,BIN); Serial.print(&quot;  bit &quot;); Serial.println(j+1);
    delay(DELAY);
    }
    for(int j=0;j&lt;=20;j++){
    write_byte(0,t&gt;&gt;j,0,0,0,0);
    Serial.print(t&gt;&gt;j,BIN); Serial.print(&quot;  bit &quot;); Serial.println(j+22);
    delay(DELAY);
    }  
    for(int j=0;j&lt;=20;j++){
    write_byte(0,0,t&gt;&gt;j,0,0,0);
    Serial.print(t&gt;&gt;j,BIN); Serial.print(&quot;  bit &quot;); Serial.println(j+43);
    delay(DELAY);
    }   
    for(int j=0;j&lt;=20;j++){
    write_byte(0,0,0,t&gt;&gt;j,0,0);
    Serial.print(t&gt;&gt;j,BIN); Serial.print(&quot;  bit &quot;); Serial.println(j+64);
    delay(DELAY);
    }   
    for(int j=0;j&lt;=20;j++){
    write_byte(0,0,0,0,t&gt;&gt;j,0);
    Serial.print(t&gt;&gt;j,BIN); Serial.print(&quot;  bit &quot;); Serial.println(j+85);
    delay(DELAY);
    } 
for(int j=0;j&lt;=20;j++){
    write_byte(0,0,0,0,0,t&gt;&gt;j);
    Serial.print(t&gt;&gt;j,BIN); Serial.print(&quot;  bit &quot;); Serial.println(j+106);
    delay(DELAY);
    }                
  }

void write_byte(long b1, long b2, long b3, long b4, long b5, long b6){
     write_addr();
     write_21(b1);
     write_21(b2);
     write_conf(0b00000000000100);
     write_addr();
     write_21(b3);
     write_21(b4);
     write_conf(0b00000000000001);
     write_addr();
     write_21(b5);
     write_21(b6);
     write_conf(0b00000000000010);    
  }   


void write_addr(){
     digitalWrite(CE,LOW);delayMicroseconds(10);
   for(int i = 7; i &gt;= 0; i--){
     digitalWrite(CL,LOW);delayMicroseconds(10);
     digitalWrite(DI, (0x42 &gt;&gt; i) &amp; 1); 
     digitalWrite(CL,HIGH);delayMicroseconds(10);
     } 
     digitalWrite(CL,LOW);
     digitalWrite(CE,HIGH);
     delayMicroseconds(10);
  } 

 void write_21(long bb){
  for(int i = 20;i &gt;= 0; i--){ 
     digitalWrite(CL,LOW);delayMicroseconds(10);
     digitalWrite(DI, (bb &gt;&gt; i) &amp; 1);
     digitalWrite(CL,HIGH);delayMicroseconds(10);
     } 
  }  
   
void write_conf(long data_conf){
    for(int i = 13;i &gt;= 0; i--){ 
     digitalWrite(CL,LOW);delayMicroseconds(10);
     digitalWrite(DI, (data_conf &gt;&gt; i) &amp; 1);
     digitalWrite(CL,HIGH);delayMicroseconds(10);
     } 
     digitalWrite(CE,LOW);delayMicroseconds(10);
  }
  </code></pre></div>]]></content>
			<author>
				<name><![CDATA[liman324]]></name>
				<uri>http://forum.rcl-radio.ru/profile.php?id=2</uri>
			</author>
			<updated>2024-04-26T03:38:56Z</updated>
			<id>http://forum.rcl-radio.ru/viewtopic.php?pid=10194#p10194</id>
		</entry>
</feed>
