Назад   TUCSON Club UA > Технический раздел > Эксплуатация и Ремонт Вашего TUCSONа > Кузов и салон > Электрооборудование и охранные системы

Примітки

Электрооборудование и охранные системы свет, сигнализация, автозвук, лампочки, кнопочки и др.

Рекламные ссылки:

 
 
Параметри теми Параметри перегляду
Prev Попередній допис   Наступний допис Next
Старий 18.05.2017, 12:54   #22
koka-ftp
Аксакал
 
Аватар для koka-ftp
 
Реєстрація: 08.09.2014
Звідки Ви: Ирпень
Вік: 41
Авто: Hyundai Tucson I 2.0 4WD
Дописи: 3.308
Сказал(а) спасибо: 913
Поблагодарили 1.501 раз(а) в 761 сообщениях
Типово Re: Прошивка приборной панели

в общем таки победил)
__________
получил от Олега "донорскую" панель)
поскольку это опытный образец, запаял туда холдер для удобного доступа к микрухе
Нажми для просмотра всего текста


ранее был собран программатор на на arduino....т.к. железку собирал сам, то и скетч пришлось гуглить и писать самому))
__________
пример
Нажми для просмотра всего текста
Цитата:
// Read data from the Atmel 93C46 eeprom (DIP8) by using the arduino uno and dump them on serial port monitor.

#include<SPI.h>
#define CS 10 //connect to pin 1 of 93C46
#define CLK 13 //connect to pin 2 of 93C46
#define DATAOUT 11 //connect to pin 3 of 93C46
#define DATAIN 12 //connect to pin 4 of 93C46



void setup()
{
pinMode(CS,OUTPUT);
pinMode(DATAOUT, OUTPUT);
pinMode(DATAIN, INPUT);
pinMode(CLK,OUTPUT);
digitalWrite(CS,LOW);

Serial.begin(9600);

SPI.beginTransaction(SPISettings(2000000, MSBFIRST, SPI_MODE0));
dump();
}

void loop()
{
}

void dump(){
Serial.println("Dump 93C46");
Serial.println("address:\tdata:");

byte data1;
byte data2;

for (int address = 0; address < 128; address++) {
digitalWrite(CS,HIGH);
SPI.transfer(0b11); // start bit and first bit of read opcode
SPI.transfer(address); // second bit of read opcode is 0 so the address is automatically preceded by 0
data1 = SPI.transfer(0); // data1 contains a 0 and the first 7 bits at the address
data2 = SPI.transfer(0); // contains the 8th bit (LSB)
digitalWrite(CS,LOW);

data1 = data1 << 1; // bitwise shift to get rid of the preceding 0
if (bitRead(data2, 7) == 1){
bitWrite(data1, 0, 1); // change LSB if needed
}

printByte(address, data1);
}
}

void printByte(byte address, byte data){
Serial.print(address, HEX);
Serial.print("\t\t");
Serial.print(data, HEX);
Serial.print("\n");
}
koka-ftp зараз поза форумом   Відповісти з цитуванням Вгору
 


Ваші права у розділі
Ви не можете створювати теми
Ви не можете писати дописи
Ви не можете долучати файли
Ви не можете редагувати дописи

BB-код є Увімк.
Усмішки Увімк.
[IMG] код Увімк.
HTML код Вимк.

Швидкий перехід

Схожі теми
Тема Автор Розділ Відповідей Останній допис
Постоянная подсветка приборной панели 19taurus79 Сделано, доработано своими руками. 53 25.11.2016 13:22
Распиновка приборной панели Helge Электрооборудование и охранные системы 3 05.11.2016 16:42
Загорелись индикаторы на приборной панели ABS и ESP OFF TOOL Тормоза, ABS, ESP, подушки безопасности 6 26.02.2014 19:02
Указатель температуры на приборной панели SMITH Система охлаждения 23 22.11.2012 17:26
Сверчок в районе приборной панели Aid Автозвук, сервисная электроника и электрика, обесшумка 44 31.05.2010 11:24

Рекламные ссылки:


Часовий пояс GMT +3. Поточний час: 19:57.


vBulletin 3.8.6 ; Copyright © 2000-2025 Jelsoft Enterprises Limited
Переклад: © Віталій Стопчанський, 2004-2010
При использовании информации с форума, действующая ссылка на первоисточник обязательна!
Время генерации страницы 0,80460 секунды с 11 запросами