Показано с 1 по 10 из 111

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    56
    Сообщений
    13,381
    Вес репутации
    10

    По умолчанию Re: Эмулятор и сниффер головного устройства для псевдографических дисплеев.

    PHP код:
    //http://compcar.ru  

    int CLK 13;     
    int DI 12
    int CE 11

    int ADDR 0x42
    byte ReadByte[8]; 
    int i
       
    void setup() 

      
    pinMode(CLKOUTPUT);   
      
    pinMode(DIOUTPUT); 
      
    pinMode(CEOUTPUT); 
      
    Serial.begin(115200);     
       
      
    digitalWrite(CLKLOW);  
      
    digitalWrite(DILOW);    
      
    digitalWrite(CELOW);     
      
    delay(1000);   


    //=================================================== 
    void loop() 

      if (
    Serial.available() > 6)  
      {  
        for (
    07i++)  
          { 
            (
    ReadByte[i]) = Serial.read() ;       // принимаем данные с компа в массив 
          

             
    Serial.flush();                     //очистить входной буфер USB 
           
          
    Send_Adress();                         // отправляем адрес устройства 
          
    for (07i++)  
          { 
            
    Byte_Out(DICLKReadByte[i]);      //отправляем данные в шину в шину 
          
    }   
         
    digitalWrite(CELOW);                  // запретить прием данных подчиненым   
      
    }   
     
    delay(500);  

    //================================================== 
    void Send_Adress() 
    {         
        
    Byte_Out(DICLKADDR); 
        
    delayMicroseconds(5); 
      
    digitalWrite(CEHIGH);  
       

    //================================================== 
    void Byte_Out(uint8_t DIuint8_t CLK,  byte val
    {         
         
    int idx;         
        for (
    idx 0idx 8idx++)                
            {   
              
    delayMicroseconds(10);  
     if  (((
    val << idx) & B10000000)  == 128)   
     
    digitalWrite(DIHIGH); else   
     
    digitalWrite(DILOW);          

     
    digitalWrite(CLKHIGH);                // педний фронт синхроимульса 
     
    delayMicroseconds(16);          
     
    digitalWrite(CLKLOW);                  // задний фронт синхроимульса           
            


    Последний раз редактировалось Chip; 28.11.2010 в 16:48.

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Метки этой темы

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •